IyBUaGlzIHNldCBvZiB0ZXN0cyBpcyBub3QgUGVybC1jb21wYXRpYmxlLiBJdCBjaGVja3Mgb24gc3BlY2lhbCBmZWF0dXJlcwojIG9mIFBDUkUyJ3MgQVBJLCBlcnJvciBkaWFnbm9zdGljcywgYW5kIHRoZSBjb21waWxlZCBjb2RlIG9mIHNvbWUgcGF0dGVybnMuCiMgSXQgYWxzbyBjaGVja3MgdGhlIG5vbi1QZXJsIHN5bnRheCB0aGF0IFBDUkUyIHN1cHBvcnRzIChQeXRob24sIC5ORVQsCiMgT25pZ3VydW1hKS4gVGhlcmUgYXJlIGFsc28gc29tZSB0ZXN0cyB3aGVyZSBQQ1JFMiBhbmQgUGVybCBkaWZmZXIsCiMgZWl0aGVyIGJlY2F1c2UgUENSRTIgY2FuJ3QgYmUgY29tcGF0aWJsZSwgb3IgdGhlcmUgaXMgYSBwb3NzaWJsZSBQZXJsCiMgYnVnLgoKIyBOT1RFOiBUaGlzIGlzIGEgbm9uLVVURiBzZXQgb2YgdGVzdHMuIFdoZW4gVVRGIHN1cHBvcnQgaXMgbmVlZGVkLCB1c2UKIyB0ZXN0IDUuCgojZm9yYmlkX3V0ZgojbmV3bGluZV9kZWZhdWx0IGxmIGFueSBhbnljcmxmCgojIFRlc3QgYmluYXJ5IHplcm9lcyBpbiB0aGUgcGF0dGVybgoKIyAvYVwwQi8gd2hlcmUgMCBpcyBhIGJpbmFyeSB6ZXJvCi82MSA1YyAwMCA2Mi9CLGhleAogICAgYVx4ezB9YgoKIyAvYTBiLyB3aGVyZSAwIGlzIGEgYmluYXJ5IHplcm8KLzYxIDAwIDYyL0IsaGV4CiAgICBhXHh7MH1iCgojIC8oPyNCMEMpREUvIHdoZXJlIDAgaXMgYSBiaW5hcnkgemVybwovMjggM2YgMjMgNDIgMDAgNDMgMjkgNDQgNDUvQixoZXgKICAgIERFCgovKGEpYnwvSQoKL2FiYy9JCiAgICBhYmMKICAgIGRlZmFiYwogICAgYWJjXD1hbmNob3JlZApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGRlZmFiY1w9YW5jaG9yZWQKICAgIEFCQwoKL15hYmMvSQogICAgYWJjCiAgICBhYmNcPWFuY2hvcmVkClw9IEV4cGVjdCBubyBtYXRjaAogICAgZGVmYWJjCiAgICBkZWZhYmNcPWFuY2hvcmVkCgovYStiYy9JCgovYSpiYy9JCgovYXszfWJjL0kKCi8oYWJjfGEreikvSQoKL15hYmMkL0kKICAgIGFiYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGRlZlxuYWJjCgovYWJcaWRlZi8KCi8oP1gpYWJcaWRlZi8KCi94ezUsNH0vCgovens2NTUzNn0vCgovW2FiY2QvCgovW1xCXS9CCgovW1xSXS9CCgovW1xYXS9CCgovW3otYV0vCgovXiovCgovKGFiYy8KCi8oPyMgYWJjLwoKLyg/eilhYmMvCgovLipiL0kKCi8uKj9iL0kKCi9jYXR8ZG9nfGVsZXBoYW50L0kKICAgIHRoaXMgc2VudGVuY2UgZXZlbnR1YWxseSBtZW50aW9ucyBhIGNhdAogICAgdGhpcyBzZW50ZW5jZXMgcmFtYmxlcyBvbiBhbmQgb24gZm9yIGEgd2hpbGUgYW5kIHRoZW4gcmVhY2hlcyBlbGVwaGFudAoKL2NhdHxkb2d8ZWxlcGhhbnQvSQogICAgdGhpcyBzZW50ZW5jZSBldmVudHVhbGx5IG1lbnRpb25zIGEgY2F0CiAgICB0aGlzIHNlbnRlbmNlcyByYW1ibGVzIG9uIGFuZCBvbiBmb3IgYSB3aGlsZSBhbmQgdGhlbiByZWFjaGVzIGVsZXBoYW50CgovY2F0fGRvZ3xlbGVwaGFudC9JaQogICAgdGhpcyBzZW50ZW5jZSBldmVudHVhbGx5IG1lbnRpb25zIGEgQ0FUIGNhdAogICAgdGhpcyBzZW50ZW5jZXMgcmFtYmxlcyBvbiBhbmQgb24gZm9yIGEgd2hpbGUgdG8gZWxlcGhhbnQgRWxlUGhhbnQKCi9hfFtiY2RdL0kKCi8oYXxbXlxkWl0pL0kKCi8oYXxiKSpbXHNdL0kKCi8oYWJcMikvCgovezQsNX1hYmMvCgovKGEpKGIpKGMpXDIvSQogICAgYWJjYgogICAgYWJjYlw9b3ZlY3Rvcj0wCiAgICBhYmNiXD1vdmVjdG9yPTEKICAgIGFiY2JcPW92ZWN0b3I9MgogICAgYWJjYlw9b3ZlY3Rvcj0zCiAgICBhYmNiXD1vdmVjdG9yPTQKCi8oYSliY3woYSkoYilcMi9JCiAgICBhYmMKICAgIGFiY1w9b3ZlY3Rvcj0wCiAgICBhYmNcPW92ZWN0b3I9MQogICAgYWJjXD1vdmVjdG9yPTIKICAgIGFiYQogICAgYWJhXD1vdmVjdG9yPTAKICAgIGFiYVw9b3ZlY3Rvcj0xCiAgICBhYmFcPW92ZWN0b3I9MgogICAgYWJhXD1vdmVjdG9yPTMKICAgIGFiYVw9b3ZlY3Rvcj00CgovYWJjJC9JLGRvbGxhcl9lbmRvbmx5CiAgICBhYmMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmNcbgogICAgYWJjXG5kZWYKCi8oYSkoYikoYykoZCkoZSlcNi8KCi90aGUgcXVpY2sgYnJvd24gZm94L0kKICAgIHRoZSBxdWljayBicm93biBmb3gKICAgIHRoaXMgaXMgYSBsaW5lIHdpdGggdGhlIHF1aWNrIGJyb3duIGZveAoKL3RoZSBxdWljayBicm93biBmb3gvSSxhbmNob3JlZAogICAgdGhlIHF1aWNrIGJyb3duIGZveApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHRoaXMgaXMgYSBsaW5lIHdpdGggdGhlIHF1aWNrIGJyb3duIGZveAoKL2FiKD96KWNkLwoKL15hYmN8ZGVmL0kKICAgIGFiY2RlZgogICAgYWJjZGVmXD1ub3Rib2wKCi8uKigoYWJjKSR8KGRlZikpL0kKICAgIGRlZmFiYwogICAgZGVmYWJjXD1ub3Rlb2wKCi8pLwoKL2FbXWIvCgovW15hZWlvdSBdezMsfS9JCiAgICBjby1wcm9jZXNzb3JzLCBhbmQgZm9yCgovPC4qPi9JCiAgICBhYmM8ZGVmPmdoaTxrbG0+bm9wCgovPC4qPz4vSQogICAgYWJjPGRlZj5naGk8a2xtPm5vcAoKLzwuKj4vSSx1bmdyZWVkeQogICAgYWJjPGRlZj5naGk8a2xtPm5vcAoKLyg/VSk8Lio+L0kKICAgIGFiYzxkZWY+Z2hpPGtsbT5ub3AKCi88Lio/Pi9JLHVuZ3JlZWR5CiAgICBhYmM8ZGVmPmdoaTxrbG0+bm9wCgovPXszLH0vSSx1bmdyZWVkeQogICAgYWJjPT09PT09PT1kZWYKCi8oP1UpPXszLH0/L0kKICAgIGFiYz09PT09PT09ZGVmCgovKD88IWJhcnxjYXR0bGUpZm9vL0kKICAgIGZvbwogICAgY2F0Zm9vClw9IEV4cGVjdCBubyBtYXRjaAogICAgdGhlIGJhcmZvbwogICAgYW5kIGNhdHRsZWZvbwoKL2FiYyg/PD1hKyliLwoKLzEyMzQ1KD88PWFhYXxiezAsM30pYi8KCi8oPzwhKGZvbylhXDEpYmFyLwoKLyg/aSlhYmMvSQoKLyhhfCg/bSlhKS9JCgovKD9pKV4xMjM0L0kKCi8oXmJ8KD9pKV5kKS9JCgovKD9zKS4qL0kKCi9bYWJjZF0vSQoKLyg/aSlbYWJjZF0vSQoKLyg/bSlbeHldfChifGMpL0kKCi8oXmF8XmIpL0ltCgovKD9pKSheYXxeYikvSW0KCi8oYSkoPygxKWF8YnxjKS8KCi8oPyg/PWEpYXxifGMpLwoKLyg/KDFhKS8KCi8oPygxYSkpLwoKLyg/KD9pKSkvCgovKD8oYWJjKSkvCgovKD8oPzxhYikpLwoKLygoP3MpYmxhaClccytcMS9JCgovKCg/aSlibGFoKVxzK1wxL0kKCi8oKD9pKWIpL0lCCgovKGEqYnwoP2k6YyooPy1pKWQpKS9JCgovYSQvSQogICAgYQogICAgYVxuClw9IEV4cGVjdCBubyBtYXRjaAogICAgYVw9bm90ZW9sCiAgICBhXG5cPW5vdGVvbAoKL2EkL0ltCiAgICBhCiAgICBhXG4KICAgIGFcblw9bm90ZW9sClw9IEV4cGVjdCBubyBtYXRjaAogICAgYVw9bm90ZW9sCgovXEFhYmMvSW0KCi9eYWJjL0ltCgovXigoYSspKD9VKShbYWJdKykoPy1VKShbYmNdKykoXHcqKSkvSQogIGFhYWFhYmJiYmJjY2NjY2RlZgoKLyg/PD1mb28pW2FiXS9JCgovKD88IWZvbykoYWxwaGF8b21lZ2EpL0kKCi8oPyFhbHBoYWJldClbYWJdL0kKCi8oPzw9Zm9vXG4pXmJhci9JbQogICAgZm9vXG5iYXJiYXIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICByaHViYXJiCiAgICBiYXJiZWxsCiAgICBhYmNcbmJhcnRvbgoKL14oPzw9Zm9vXG4pYmFyL0ltCiAgICBmb29cbmJhcmJhcgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHJodWJhcmIKICAgIGJhcmJlbGwKICAgIGFiY1xuYmFydG9uCgovKD8+XmFiYykvSW0KICAgIGFiYwogICAgZGVmXG5hYmMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBkZWZhYmMKCi8oPzw9YWIoYyspZCllZi8KCi8oPzw9YWIoPzw9YyspZCllZi8KCi8oPzw9YWIoY3xkZSlmKWcvCgovVGhlIG5leHQgdGhyZWUgYXJlIGluIHRlc3RpbnB1dDIgYmVjYXVzZSB0aGV5IGhhdmUgdmFyaWFibGUgbGVuZ3RoIGJyYW5jaGVzLwoKLyg/PD1idWxsb2NrfGRvbmtleSktY2FydC9JCiAgICB0aGUgYnVsbG9jay1jYXJ0CiAgICBhIGRvbmtleS1jYXJ0IHJhY2UKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBjYXJ0CiAgICBob3JzZS1hbmQtY2FydAoKLyg/PD1hYig/aSl4fHl8eikvSQoKLyg/Pi4qKSg/PD0oYWJjZCl8KHh5eikpL0kKICAgIGFscGhhYmV0YWJjZAogICAgZW5kaW5neHl6CgovKD88PWFiKD9pKXgoPy1pKXl8KD9pKXp8YilaWi9JCiAgICBhYnh5WloKICAgIGFiWHlaWgogICAgWlpaCiAgICB6WloKICAgIGJaWgogICAgQlpaClw9IEV4cGVjdCBubyBtYXRjaAogICAgWloKICAgIGFiWFlaWgogICAgenp6CiAgICBienoKCi8oPzwhKGZvbylhKWJhci9JCiAgICBiYXIKICAgIGZvb2JiYXIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBmb29hYmFyCgojIFRoaXMgb25lIGlzIGhlcmUgYmVjYXVzZSBQZXJsIGJlaGF2ZXMgZGlmZmVyZW50bHk7IHNlZSBhbHNvIHRoZSBmb2xsb3dpbmcuCgovXihhXDE/KXs0fSQvSQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYWEKICAgIGFhYWFhYQoKIyBQZXJsIGRvZXMgbm90IGZhaWwgdGhlc2UgdHdvIGZvciB0aGUgZmluYWwgc3ViamVjdHMuIE5laXRoZXIgZGlkIFBDUkUgdW50aWwKIyByZWxlYXNlIDguMDEuIFRoZSBwcm9ibGVtIGlzIGluIGJhY2t0cmFja2luZyBpbnRvIGEgc3VicGF0dGVybiB0aGF0IGNvbnRhaW5zCiMgYSByZWN1cnNpdmUgcmVmZXJlbmNlIHRvIGl0c2VsZi4gUENSRSBoYXMgbm93IG1hZGUgdGhlc2UgaW50byBhdG9taWMgcGF0dGVybnMuCgovXih4YXw9P1wxYSl7Mn0kLwogICAgeGE9eGFhClw9IEV4cGVjdCBubyBtYXRjaAogICAgeGE9eGFhYQoKL14oeGF8PT9cMWEpKyQvCiAgICB4YT14YWEKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB4YT14YWFhCgojIFRoZXNlIGFyZSBzeW50YXggdGVzdHMgZnJvbSBQZXJsIDUuMDA1CgovYVtiLWFdLwoKL2FbXWIvCgovYVsvCgovKmEvCgovKCopYi8KCi9hYmMpLwoKLyhhYmMvCgovYSoqLwoKLykoLwoKL1wxLwoKL1wyLwoKLyhhKXxcMi8KCi9hW2ItYV0vSWkKCi9hW11iL0lpCgovYVsvSWkKCi8qYS9JaQoKLygqKWIvSWkKCi9hYmMpL0lpCgovKGFiYy9JaQoKL2EqKi9JaQoKLykoL0lpCgovOig/Oi8KCi8oPzwlKWIvCgovYSg/eyliLwoKL2EoP3t7fSliLwoKL2EoP3t9fSliLwoKL2EoP3sieyJ9KWIvCgovYSg/eyJ7In19KWIvCgovKD8oMT8pYXxiKS8KCi9bYVs6eHl6Oi8KCi8oPzw9eCspeS8KCi9hezM3LDE3fS8KCi9hYmMvXAoKL2FiYy9caQoKLyhhKWJjKGQpL0kKICAgIGFiY2QKICAgIGFiY2RcPWNvcHk9MgogICAgYWJjZFw9Y29weT01CgovKC57MjB9KS9JCiAgICBhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5egogICAgYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpcPWNvcHk9MQogICAgYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpcPWdldD0xCgovKC57MTV9KS9JCiAgICBhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5egogICAgYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpcPWNvcHk9MSxnZXQ9MQoKLyguezE2fSkvSQogICAgYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoKICAgIGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6XD1jb3B5PTEsZ2V0PTEsZ2V0YWxsCgovXihhfChiYykpZGUoZikvSQogICAgYWRlZlw9Z2V0PTEsZ2V0PTIsZ2V0PTMsZ2V0PTQsZ2V0YWxsCiAgICBiY2RlZlw9Z2V0PTEsZ2V0PTIsZ2V0PTMsZ2V0PTQsZ2V0YWxsCiAgICBhZGVmZ2hpamtcPWNvcHk9MAoKL15hYmNcMDBkZWYvSQogICAgYWJjXDAwZGVmXD1jb3B5PTAsZ2V0YWxsCgovd29yZCAoKD86W2EtekEtWjAtOV0rICkoKD86W2EtekEtWjAtOV0rICkoKD86W2EtekEtWjAtOV0rICkoKD86W2EtekEtWjAtOV0rCikoKD86W2EtekEtWjAtOV0rICkoKD86W2EtekEtWjAtOV0rICkoKD86W2EtekEtWjAtOV0rICkoKD86W2EtekEtWjAtOV0rCik/KT8pPyk/KT8pPyk/KT8pP290aGVyd29yZC9JCgovLipYL0lCCgovLipYL0lCcwoKLyguKlh8XkIpL0lCCgovKC4qWHxeQikvSUJzCgovKD9zKSguKlh8XkIpL0lCCgovKD9zOi4qWHxeQikvSUIKCi9cQmlzc1xCL0ksYWZ0ZXJ0ZXh0CiAgICBNaXNzaXNzaXBwaQoKL2lzcy9JLGFmdGVydGV4dCxhbHRnbG9iYWwKICAgIE1pc3Npc3NpcHBpCgovXEJpc3NcQi9JLGFmdGVydGV4dCxhbHRnbG9iYWwKICAgIE1pc3Npc3NpcHBpCgovXEJpc3NcQi9JZyxhZnRlcnRleHQKICAgIE1pc3Npc3NpcHBpClw9IEV4cGVjdCBubyBtYXRjaAogICAgTWlzc2lzc2lwcGlcPWFuY2hvcmVkCgovKD88PVtNc10paXNzL0lnLGFmdGVydGV4dAogICAgTWlzc2lzc2lwcGkKCi8oPzw9W01zXSlpc3MvSSxhZnRlcnRleHQsYWx0Z2xvYmFsCiAgICBNaXNzaXNzaXBwaQoKL15pc3MvSWcsYWZ0ZXJ0ZXh0CiAgICBpc3Npc3NpcHBpCgovLippc3MvSWcsYWZ0ZXJ0ZXh0CiAgICBhYmNpc3Ncbnh5emlzc3BxcgoKLy5pLi9JZyxhZnRlcnRleHQKICAgIE1pc3Npc3NpcHBpCiAgICBNaXNzaXNzaXBwaVw9YW5jaG9yZWQKICAgIE1pc3NvdXJpIHJpdmVyCiAgICBNaXNzb3VyaSByaXZlclw9YW5jaG9yZWQKCi9eLmlzL0lnLGFmdGVydGV4dAogICAgTWlzc2lzc2lwcGkKCi9eYWJcbi9JZyxhZnRlcnRleHQKICAgIGFiXG5hYlxuY2QKCi9eYWJcbi9JZ20sYWZ0ZXJ0ZXh0CiAgICBhYlxuYWJcbmNkCgovXi9nbSxuZXdsaW5lPWFueQogICAgYVxyYlxuY1xyXG54eXpcPWFmdGVydGV4dAoKL2FiYy9JCgovYWJjfGJhYy9JCgovKGFiY3xiYWMpL0kKCi8oYWJjfChjfGRjKSkvSQoKLyhhYmN8KGR8ZGUpYykvSQoKL2EqL0kKCi9hKy9JCgovKGJhYXxhKykvSQoKL2F7MCwzfS9JCgovYmFhezMsfS9JCgovIihbXlxcIl0rfFxcLikqIi9JCgovKGFiY3xhYltjZF0pL0kKCi8oYXwuKS9JCgovYXxiYXxcdy9JCgovYWJjKD89cHFyKS9JCgovLi4uKD88PWFiYykvSQoKL2FiYyg/IXBxcikvSQoKL2FiLi9JCgovYWJbeHl6XS9JCgovYWJjKi9JCgovYWIuYyovSQoKL2EuYyovSQoKLy5jKi9JCgovYWMqL0kKCi8oYS5jKnxiLmMqKS9JCgovYS5jKnxhYmEvSQoKLy4rYS9JCgovKD89YWJjZGEpYS4qL0kKCi8oPz1hKWEuKi9JCgovYShiKSovSQoKL2FcZCovSQoKL2FiXGQqL0kKCi9hKFxkKSovSQoKL2FiY2RlezAsMH0vSQoKL2FiXGQrL0kKCi9hKD8oMSliKSguKS9JCgovYSg/KDEpYmFnfGJpZykoLikvSQoKL2EoPygxKWJhZ3xiaWcpKiguKS9JCgovYSg/KDEpYmFnfGJpZykrKC4pL0kKCi9hKD8oMSliLi58Yi4uKSguKS9JCgovYWJcZHswfWUvSQoKL2E/Yj8vSQogICAgYQogICAgYgogICAgYWIKICAgIFwKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBcPW5vdGVtcHR5CgovfC0vSQogICAgYWJjZAogICAgLWFiYwogICAgYWItY1w9bm90ZW1wdHkKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmNcPW5vdGVtcHR5CgovXi4/YWJjZC9JCgovXCggICAgICAgICAgICAgIyAoIGF0IHN0YXJ0CiAgKD86ICAgICAgICAgICAjIE5vbi1jYXB0dXJpbmcgYnJhY2tldAogICg/PlteKCldKykgICAgIyBFaXRoZXIgYSBzZXF1ZW5jZSBvZiBub24tYnJhY2tldHMgKG5vIGJhY2t0cmFja2luZykKICB8ICAgICAgICAgICAgICMgT3IKICAoP1IpICAgICAgICAgICMgUmVjdXJzZSAtIGkuZS4gbmVzdGVkIGJyYWNrZXRlZCBzdHJpbmcKICApKiAgICAgICAgICAgICMgWmVybyBvciBtb3JlIGNvbnRlbnRzCiAgXCkgICAgICAgICAgICAjIENsb3NpbmcgKQogIC9JeAogICAgKGFiY2QpCiAgICAoYWJjZCl4eXoKICAgIHh5eihhYmNkKQogICAgKGFiKHh5KWNkKXBxcgogICAgKGFiKHh5Y2QpcHFyCiAgICAoKSBhYmMgKCkKICAgIDEyKGFiY2RlKGZzaCl4eXooZm9vKGJhcikpbG1ubyk4OQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiY2QKICAgIGFiY2QpCiAgICAoYWJjZAoKL1woICAoICg/PlteKCldKykgfCAoP1IpICkqIFwpIC9JZ3gKICAgIChhYih4eSljZClwcXIKICAgIDEoYWJjZCkoeCh5KXopcHFyCgovXCggICg/OiAoPz5bXigpXSspIHwgKD9SKSApIFwpIC9JeAogICAgKGFiY2QpCiAgICAoYWIoeHkpY2QpCiAgICAoYShiKGMpZCllKQogICAgKChhYikpClw9IEV4cGVjdCBubyBtYXRjaAogICAgKCkKCi9cKCAgKD86ICg/PlteKCldKykgfCAoP1IpICk/IFwpIC9JeAogICAgKCkKICAgIDEyKGFiY2RlKGZzaCl4eXooZm9vKGJhcikpbG1ubyk4OQoKL1woICAoICg/PlteKCldKykgfCAoP1IpICkqIFwpIC9JeAogICAgKGFiKHh5KWNkKQoKL1woICggKCAoPz5bXigpXSspIHwgKD9SKSApKiApIFwpIC9JeAogICAgKGFiKHh5KWNkKQoKL1woICgxMjMpPyAoICggKD8+W14oKV0rKSB8ICg/UikgKSogKSBcKSAvSXgKICAgIChhYih4eSljZCkKICAgICgxMjNhYih4eSljZCkKCi9cKCAoICgxMjMpPyAoICg/PlteKCldKykgfCAoP1IpICkqICkgXCkgL0l4CiAgICAoYWIoeHkpY2QpCiAgICAoMTIzYWIoeHkpY2QpCgovXCggKCgoKCgoKCgoKCAoICg/PlteKCldKykgfCAoP1IpICkqICkpKSkpKSkpKSkgXCkgL0l4CiAgICAoYWIoeHkpY2QpCgovXCggKCAoICg/PlteKCk8Pl0rKSB8ICgoPz5bXigpXSspKSB8ICg/UikgKSogKSBcKSAvSXgKICAgIChhYmNkKHh5ejxwPnFycykxMjMpCgovXCggKCAoICg/PlteKCldKykgfCAoKD9SKSkgKSogKSBcKSAvSXgKICAgIChhYihjZCllZikKICAgIChhYihjZChlZilnaClpaikKCi9eW1s6YWxudW06XV0vSUIKCi9eW1s6XmFsbnVtOl1dL0lCCgovXltbOmFscGhhOl1dL0lCCgovXltbOl5hbHBoYTpdXS9JQgoKL1tfWzphbHBoYTpdXS9JCgovXltbOmFzY2lpOl1dL0lCCgovXltbOl5hc2NpaTpdXS9JQgoKL15bWzpibGFuazpdXS9JQgoKL15bWzpeYmxhbms6XV0vSUIKCi9bXG5ceDBiXHgwY1x4MGRbOmJsYW5rOl1dL0kKCi9eW1s6Y250cmw6XV0vSUIKCi9eW1s6ZGlnaXQ6XV0vSUIKCi9eW1s6Z3JhcGg6XV0vSUIKCi9eW1s6bG93ZXI6XV0vSUIKCi9eW1s6cHJpbnQ6XV0vSUIKCi9eW1s6cHVuY3Q6XV0vSUIKCi9eW1s6c3BhY2U6XV0vSUIKCi9eW1s6dXBwZXI6XV0vSUIKCi9eW1s6eGRpZ2l0Ol1dL0lCCgovXltbOndvcmQ6XV0vSUIKCi9eW1s6XmNudHJsOl1dL0lCCgovXlsxMls6XmRpZ2l0Ol1dL0lCCgovXltbOl5ibGFuazpdXS9JQgoKL1swMVs6YWxwaGE6XSVdL0lCCgovW1suY2guXV0vSQoKL1tbPWNoPV1dL0kKCi9bWzpyaHViYXJiOl1dL0kKCi9bWzp1cHBlcjpdXS9JaQogICAgQQogICAgYQoKL1tbOmxvd2VyOl1dL0lpCiAgICBBCiAgICBhCgovKCg/LWkpW1s6bG93ZXI6XV0pW1s6bG93ZXI6XV0vSWkKICAgIGFiCiAgICBhQgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFiCiAgICBBQgoKL1tcMjAwLVwxMTBdL0kKCi9eKD8oMClmfGIpb28vSQoKIyBUaGlzIG9uZSdzIGhlcmUgYmVjYXVzZSBvZiB0aGUgbGFyZ2Ugb3V0cHV0IHZlY3RvciBuZWVkZWQKCi8oXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcZCsoPzpcc3wkKSkoXGQrKD86XHN8JCkpKFxkKyg/OlxzfCQpKShcdyspXHMrKFwyNzApL0kKICAgICAxIDIgMyA0IDUgNiA3IDggOSAxMCAxMSAxMiAxMyAxNCAxNSAxNiAxNyAxOCAxOSAyMCAyMSAyMiAyMyAyNCAyNSAyNiAyNyAyOCAyOSAzMCAzMSAzMiAzMyAzNCAzNSAzNiAzNyAzOCAzOSA0MCA0MSA0MiA0MyA0NCA0NSA0NiA0NyA0OCA0OSA1MCA1MSA1MiA1MyA1NCA1NSA1NiA1NyA1OCA1OSA2MCA2MSA2MiA2MyA2NCA2NSA2NiA2NyA2OCA2OSA3MCA3MSA3MiA3MyA3NCA3NSA3NiA3NyA3OCA3OSA4MCA4MSA4MiA4MyA4NCA4NSA4NiA4NyA4OCA4OSA5MCA5MSA5MiA5MyA5NCA5NSA5NiA5NyA5OCA5OSAxMDAgMTAxIDEwMiAxMDMgMTA0IDEwNSAxMDYgMTA3IDEwOCAxMDkgMTEwIDExMSAxMTIgMTEzIDExNCAxMTUgMTE2IDExNyAxMTggMTE5IDEyMCAxMjEgMTIyIDEyMyAxMjQgMTI1IDEyNiAxMjcgMTI4IDEyOSAxMzAgMTMxIDEzMiAxMzMgMTM0IDEzNSAxMzYgMTM3IDEzOCAxMzkgMTQwIDE0MSAxNDIgMTQzIDE0NCAxNDUgMTQ2IDE0NyAxNDggMTQ5IDE1MCAxNTEgMTUyIDE1MyAxNTQgMTU1IDE1NiAxNTcgMTU4IDE1OSAxNjAgMTYxIDE2MiAxNjMgMTY0IDE2NSAxNjYgMTY3IDE2OCAxNjkgMTcwIDE3MSAxNzIgMTczIDE3NCAxNzUgMTc2IDE3NyAxNzggMTc5IDE4MCAxODEgMTgyIDE4MyAxODQgMTg1IDE4NiAxODcgMTg4IDE4OSAxOTAgMTkxIDE5MiAxOTMgMTk0IDE5NSAxOTYgMTk3IDE5OCAxOTkgMjAwIDIwMSAyMDIgMjAzIDIwNCAyMDUgMjA2IDIwNyAyMDggMjA5IDIxMCAyMTEgMjEyIDIxMyAyMTQgMjE1IDIxNiAyMTcgMjE4IDIxOSAyMjAgMjIxIDIyMiAyMjMgMjI0IDIyNSAyMjYgMjI3IDIyOCAyMjkgMjMwIDIzMSAyMzIgMjMzIDIzNCAyMzUgMjM2IDIzNyAyMzggMjM5IDI0MCAyNDEgMjQyIDI0MyAyNDQgMjQ1IDI0NiAyNDcgMjQ4IDI0OSAyNTAgMjUxIDI1MiAyNTMgMjU0IDI1NSAyNTYgMjU3IDI1OCAyNTkgMjYwIDI2MSAyNjIgMjYzIDI2NCAyNjUgMjY2IDI2NyAyNjggMjY5IEFCQyBBQkNcPW92ZWN0b3I9MzAwCgojIFRoaXMgb25lJ3MgaGVyZSBiZWNhdXNlIFBlcmwgZG9lcyB0aGlzIGRpZmZlcmVudGx5IGFuZCBQQ1JFMiBjYW4ndCBhdCBwcmVzZW50CgovKG1haW4oTyk/KSsvSQogICAgbWFpbm1haW4KICAgIG1haW5PbWFpbgoKIyBUaGVzZSBhcmUgYWxsIGNhc2VzIHdoZXJlIFBlcmwgZG9lcyBpdCBkaWZmZXJlbnRseSAobmVzdGVkIGNhcHR1cmVzKQoKL14oYShiKT8pKyQvSQogICAgYWJhCgovXihhYShiYik/KSskL0kKICAgIGFhYmJhYQoKL14oYWF8YWEoYmIpKSskL0kKICAgIGFhYmJhYQoKL14oYWEoYmIpPz8pKyQvSQogICAgYWFiYmFhCgovXig/OmFhKGJiKT8pKyQvSQogICAgYWFiYmFhCgovXihhYShiKGIpKT8pKyQvSQogICAgYWFiYmFhCgovXig/OmFhKGIoYikpPykrJC9JCiAgICBhYWJiYWEKCi9eKD86YWEoYig/OmIpKT8pKyQvSQogICAgYWFiYmFhCgovXig/OmFhKGJiKD86YikpPykrJC9JCiAgICBhYWJiYmFhCgovXig/OmFhKGIoPzpiYikpPykrJC9JCiAgICBhYWJiYmFhCgovXig/OmFhKD86YihiKSk/KSskL0kKICAgIGFhYmJhYQoKL14oPzphYSg/OmIoYmIpKT8pKyQvSQogICAgYWFiYmJhYQoKL14oYWEoYihiYikpPykrJC9JCiAgICBhYWJiYmFhCgovXihhYShiYihiYikpPykrJC9JCiAgICBhYWJiYmJhYQoKIyAtLS0tLS0tLS0tLS0tLS0tCgovIy9JQngKCi9hIy9JQngKCi9bXHNdL0lCCgovW1xTXS9JQgoKL2EoP2kpYi9JQgogICAgYWIKICAgIGFCClw9IEV4cGVjdCBubyBtYXRjaAogICAgQUIKCi8oYSg/aSliKS9JQgogICAgYWIKICAgIGFCClw9IEV4cGVjdCBubyBtYXRjaAogICAgQUIKCi8gICAoP2kpYWJjL0lCeAoKLyN0aGlzIGlzIGEgY29tbWVudAogICg/aSlhYmMvSUJ4CgovMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwL0lCCgovXFExMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAvSUIKCi9cUVxFL0lCCiAgICBcCgovXFFcRXgvSUIKCi8gXFFcRS9JQgoKL2FcUVxFL0lCCiAgYWJjCiAgYmNhCiAgYmFjCgovYVxRXEViL0lCCiAgYWJjCgovXFFcRWFiYy9JQgoKL3gqK1x3L0lCClw9IEV4cGVjdCBubyBtYXRjaAogICAgeHh4eHgKCi94PysvSUIKCi94KysvSUIKCi94ezEsM30rL0Isbm9fYXV0b19wb3NzZXNzCgoveHsxLDN9Ky9CaSxub19hdXRvX3Bvc3Nlc3MKCi9bXnhdezEsM30rL0Isbm9fYXV0b19wb3NzZXNzCgovW154XXsxLDN9Ky9CaSxub19hdXRvX3Bvc3Nlc3MKCi8oeCkqKy9JQgoKL14oXHcrK3xccysrKSokL0kKICAgIG5vdyBpcyB0aGUgdGltZSBmb3IgYWxsIGdvb2QgbWVuIHRvIGNvbWUgdG8gdGhlIGFpZCBvZiB0aGUgcGFydHkKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB0aGlzIGlzIG5vdCBhIGxpbmUgd2l0aCBvbmx5IHdvcmRzIGFuZCBzcGFjZXMhCgovKFxkKyspKFx3KS9JCiAgICAxMjM0NWEKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAxMjM0NSsKCi9hKytiL0kKICAgIGFhYWIKCi8oYSsrYikvSQogICAgYWFhYgoKLyhhKyspYi9JCiAgICBhYWFiCgovKFteKCldKyt8XChbXigpXSpcKSkrL0kKICAgICgoYWJjKGFkZSl1ZmgoKSgpeAoKL1woKFteKCldKyt8XChbXigpXStcKSkrXCkvSQogICAgKGFiYykKICAgIChhYmMoZGVmKXh5eikKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAoKCgpYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEKCi8oYWJjKXsxLDN9Ky9JQgoKL2ErPysvSQoKL2F7MiwzfT8rYi9JCgovKD9VKWErPysvSQoKL2F7MiwzfT8rYi9JLHVuZ3JlZWR5CgoveCg/VSlhKytiL0lCCiAgICB4YWFhYWIKCi8oP1UpeGErK2IvSUIKICAgIHhhYWFhYgoKL14oKGErKSg/VSkoW2FiXSspKD8tVSkoW2JjXSspKFx3KikpL0lCCgovXngoP1UpYStiL0lCCgovXngoP1UpKGErKWIvSUIKCi9bLnguXS9JCgovWz14PV0vSQoKL1s6eDpdL0kKCi9cRi9JCgovXGwvSQoKL1xML0kKCi9cTntuYW1lfS9JCgovXHUvSQoKL1xVL0kKCi9hezEsM31iL3VuZ3JlZWR5CiAgICBhYgoKL1svSQoKL1thLS9JCgovW1s6c3BhY2U6XS9JCgovW1xzXS9JQgoKL1tbOnNwYWNlOl1dL0lCCgovW1s6c3BhY2U6XWFiY2RlXS9JQgoKLzwgKD86ICg/KFIpIFxkKysgIHwgW148Pl0qKykgfCAoP1IpKSAqID4vSXgKICAgIDw+CiAgICA8YWJjZD4KICAgIDxhYmMgPDEyMz4gaGlqPgogICAgPGFiYyA8ZGVmPiBoaWo+CiAgICA8YWJjPD5kZWY+CiAgICA8YWJjPD4KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICA8YWJjCgovOEpcJFdFXDxcLnJYXCtpeFxbZDFiXCFIXCNcP3ZWMHZyS1w6WkgxXD0yTVw+aVZcO1w/YVBoRkJcPFwqdldcQFFXXEBzTzlcfWNmWkFcLWlcJ3dcJWhLZDZndDFVSlBcLDE1X1wjUVlcJE1cXk1zc19VXC9cXVwmTEs5XFs1dlF1Ylxed1xbS0REXDxFam1oVVpcP1wuYWtwMmRGXD5xbWpcOzJcfVlXRmRZeFwuQXBcXWhqQ1BUUFwobjI4a1wrM1w7b1wmV1hxc1wvZ09YZHJcJFw6clwnZG8wXDtiNGNcKGZfR3JcPVwiXFw0XClcWzAxVDdhalFKdkxcJFdcfm1MX3NTXC80aFw6eFwqXFtaTlw9S0xzXCZMNXpYXC9cL1w+aXRcLG9cOmFVXChcO1pcPnBXXCZUN29QXCcyS1xeRVw6eDlcJ2NcW1wlelwtXCw2NEpRNUFlSF9HXCNLaWpVS2doUXdcXlxcdmVhM2FcP2trYV9HXCQ4XCNcYFwqa3luc3h6QkxydVwnXF1rX1xbN0ZyVnhcfVxeXD1cJGJseFw+c1wtTlwlalw7RFwqYVpEbnN3XDpZS1pcJVFcLktuZTlcI2hQXD9cK2IzXChTT3ZMXCxcXlw7XCZ1NVxAXD81QzVCaGJcPW1cLXZFaF9MMTVKbFxdVVwpMFJQNlx7cVwlTFxeX3o1RVwnRHc2WFxiL0lCCgovXCRcPFwuWFwraXhcW2QxYlwhSFwjXD92VjB2cktcOlpIMVw9Mk1cPmlWXDtcP2FQaEZCXDxcKnZXXEBRV1xAc085XH1jZlpBXC1pXCd3XCVoS2Q2Z3QxVUpQXCwxNV9cI1FZXCRNXF5Nc3NfVVwvXF1cJkxLOVxbNXZRdWJcXndcW0tERFw8RWptaFVaXD9cLmFrcDJkRlw+cW1qXDsyXH1ZV0ZkWXhcLkFwXF1oakNQVFBcKG4yOGtcKzNcO29cJldYcXNcL2dPWGRyXCRcOnJcJ2RvMFw7YjRjXChmX0dyXD1cIlxcNFwpXFswMVQ3YWpRSnZMXCRXXH5tTF9zU1wvNGhcOnhcKlxbWk5cPUtMc1wmTDV6WFwvXC9cPml0XCxvXDphVVwoXDtaXD5wV1wmVDdvUFwnMktcXkVcOng5XCdjXFtcJXpcLVwsNjRKUTVBZUhfR1wjS2lqVUtnaFF3XF5cXHZlYTNhXD9ra2FfR1wkOFwjXGBcKmt5bnN4ekJMcnVcJ1xda19cWzdGclZ4XH1cXlw9XCRibHhcPnNcLU5cJWpcO0RcKmFaRG5zd1w6WUtaXCVRXC5LbmU5XCNoUFw/XCtiM1woU092TFwsXF5cO1wmdTVcQFw/NUM1QmhiXD1tXC12RWhfTDE1SmxcXVVcKTBSUDZce3FcJUxcXl96NUVcJ0R3NlhcYi9JQgoKLyguKilcZCtcMS9JCgovKC4qKVxkKy9JCgovKC4qKVxkK1wxL0lzCgovKC4qKVxkKy9JcwoKLyguKih4eXopKVxkK1wyL0kKCi8oKC4qKSlcZCtcMS9JCiAgICBhYmMxMjNiYwoKL2FbYl0vSQoKLyg/PWEpLiovSQoKLyg/PWFiYykueHl6L0lpCgovKD89YWJjKSg/aSkueHl6L0kKCi8oPz1hKSg/PWIpL0kKCi8oPz0uKWEvSQoKLygoPz1hYmNkYSlhKS9JCgovKCg/PWFiY2RhKWFiKS9JCgovKClhL0kKCi8oPzooPz0uKXwoPzwheCkpYS9JCgovKD8oMSlhYnxhYykoLikvSQoKLyg/KDEpYWJ6fGFjeikoLikvSQoKLyg/KDEpYWJ6KSguKS9JCgovKD8oMSlhYnopKDEpMjMvSQoKLyhhKSsvSQoKLyhhKXsyLDN9L0kKCi8oYSkqL0kKCi9bYV0vSQoKL1thYl0vSQoKL1thYl0vSQoKL1teYV0vSQoKL1xkNDU2L0kKCi9cZDQ1Ni9JCgovYV5iL0kKCi9eYS9JbQogIGFiY2RlCiAgeHlcbmFiYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICB4eWFiYwoKL2N8YWJjL0kKCi8oP2kpW2FiXS9JCgovW2FiXSg/aSljZC9JCgovYWJjKD9DKWRlZi9JCiAgICBhYmNkZWYKICAgIDEyMzRhYmNkZWYKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmN4eXoKICAgIGFiY3h5emYKCi9hYmMoP0MpZGUoP0MxKWYvSQogICAgMTIzYWJjZGVmCgovKD9DMSlcZGFiYyg/QzIpZGVmL0kKICAgIDEyMzRhYmNkZWYKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmNkZWYKCi8oP0MxKVxkYWJjKD9DMilkZWYvSQogICAgMTIzNGFiY2RlZgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiY2RlZgoKLyg/QzI1NSlhYi9JCgovKD9DMjU2KWFiL0kKCi8oP0NhYil4eC9JCgovKD9DMTJ2cil4L0kKCi9hYmMoP0MpZGVmL0kKICAgIFx4ODNceDBceDYxYmNkZWYKCi8oYWJjKSg/QylkZSg/QzEpZi9JCiAgICAxMjNhYmNkZWYKICAgIDEyM2FiY2RlZlw9Y2FsbG91dF9jYXB0dXJlCiAgICAxMjNhYmNkZWZDLVw9Y2FsbG91dF9ub25lClw9IEV4cGVjdCBubyBtYXRjaAogICAgMTIzYWJjZGVmXD1jYWxsb3V0X2ZhaWw9MQoKLyg/QzApKGFiYyg/QzEpKSovSQogICAgYWJjYWJjYWJjCiAgICBhYmNhYmNcPWNhbGxvdXRfZmFpbD0xOjQKICAgIGFiY2FiY2FiY1w9Y2FsbG91dF9mYWlsPTE6NAoKLyhcZHszfSg/QykpKi9JCiAgICAxMjNcPWNhbGxvdXRfY2FwdHVyZQogICAgMTIzNDU2XD1jYWxsb3V0X2NhcHR1cmUKICAgIDEyMzQ1Njc4OVw9Y2FsbG91dF9jYXB0dXJlCgovKCh4eXopKD9DKXB8KD9DMSl4eXphYmMpL0kKICAgIHh5emFiY1w9Y2FsbG91dF9jYXB0dXJlCgovKFgpKCh4eXopKD9DKXB8KD9DMSl4eXphYmMpL0kKICAgIFh4eXphYmNcPWNhbGxvdXRfY2FwdHVyZQoKLyg/PShhYmMpKSg/QylhYmNkZWYvSQogICAgYWJjZGVmXD1jYWxsb3V0X2NhcHR1cmUKCi8oPyEoYWJjKSg/QzEpZCkoP0MyKWFiY3h5ei9JCiAgICBhYmN4eXpcPWNhbGxvdXRfY2FwdHVyZQoKLyg/PD0oYWJjKSg/QykpeHl6L0kKICAgYWJjeHl6XD1jYWxsb3V0X2NhcHR1cmUKCi9hKGIrKShjKikoP0MxKS9JClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJiYmJiY2NjXD1jYWxsb3V0X2RhdGE9MQoKL2EoYis/KShjKj8pKD9DMSkvSQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiYmJiYmNjY1w9Y2FsbG91dF9kYXRhPTEKCi8oP0MpYWJjL0kKCi8oP0MpXmFiYy9JCgovKD9DKWF8Yi9JCgovYXwoYikoP0MpL0kKICAgIGIKCi94KGFifChiY3woZGV8KD9SKSkpKS9JCiAgICB4YWIKICAgIHhiYwogICAgeGRlCiAgICB4eGFiCiAgICB4eHhhYgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHh5YWIKCi9eKFteKCldfFwoKD8xKSpcKSkqJC9JCiAgICBhYmMKICAgIGEoYiljCiAgICBhKGIoYykpZApcPSBFeHBlY3Qgbm8gbWF0Y2gpCiAgICBhKGIoYylkCgovXj5hYmM+KFteKCldfFwoKD8xKSpcKSkqPHh5ejwkL0kKICAgPmFiYz4xMjM8eHl6PAogICA+YWJjPjEoMikzPHh5ejwKICAgPmFiYz4oMSgyKTMpPHh5ejwKCi8oYSg/MSliKS9JQgoKLyhhKD8xKStiKS9JQgoKL14oXGQrfFwoKD8xKShbKyotXSkoPzEpXCl8LSg/MSkpJC9JCiAgICAxMgogICAgKCgoMisyKSotMyktNykKICAgIC0xMgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgICgoMisyKSotMyktNykKCi9eKHgoeXwoPzEpezJ9KXopL0kKICAgIHh5egogICAgeHh5enh5enoKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB4eHl6egogICAgeHh5enh5enh5enoKCi8oKDwgKD86ICg/KFIpIFxkKysgIHwgW148Pl0qKykgfCAoPzIpKSAqID4pKS9JeAogICAgPD4KICAgIDxhYmNkPgogICAgPGFiYyA8MTIzPiBoaWo+CiAgICA8YWJjIDxkZWY+IGhpaj4KICAgIDxhYmM8PmRlZj4KICAgIDxhYmM8PgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIDxhYmMKCi8oPzEpL0kKCi8oKD8yKShhYmMpL0kKCi9eKGFiYylkZWYoPzEpL0kKICAgIGFiY2RlZmFiYwoKL14oYXxifGMpPSg/MSkrL0kKICAgIGE9YQogICAgYT1iCiAgICBhPWJjCgovXihhfGJ8Yyk9KCg/MSkpKy9JCiAgICBhPWEKICAgIGE9YgogICAgYT1iYwoKL2EoP1A8bmFtZTE+YnxjKWQoP1A8bG9uZ2VybmFtZTI+ZSkvSUIKICAgIGFiZGUKICAgIGFjZGUKCi8oPzphKD9QPGM+Yyg/UDxkPmQpKSkoP1A8YT5hKS9JQgoKLyg/UDxhPmEpLi4uKD9QPWEpYmJiKD9QPmEpZC9JQgoKL15cVyooPzooP1A8b25lPig/UDx0d28+LilcVyooP1A+b25lKVxXKig/UD10d28pfCl8KD9QPHRocmVlPig/UDxmb3VyPi4pXFcqKD9QPnRocmVlKVxXKig/UD1mb3VyKXxcVyouXFcqKSlcVyokL0lpCiAgICAxMjIxCiAgICBTYXRhbiwgb3NjaWxsYXRlIG15IG1ldGFsbGljIHNvbmF0YXMhCiAgICBBIG1hbiwgYSBwbGFuLCBhIGNhbmFsOiBQYW5hbWEhCiAgICBBYmxlIHdhcyBJIGVyZSBJIHNhdyBFbGJhLgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFRoZSBxdWljayBicm93biBmb3gKCi8oKD8oUilhfGIpKVwxKD8xKT8vSQogIGJiCiAgYmJhYQoKLyguKilhL0lzCgovKC4qKWFcMS9JcwoKLyguKilhKGIpXDIvSXMKCi8oKC4qKWF8KC4qKWIpei9JcwoKLygoLiopYXwoLiopYil6XDEvSXMKCi8oKC4qKWF8KC4qKWIpelwyL0lzCgovKCguKilhfCguKiliKXpcMy9JcwoKLygoLiopYXxeKC4qKWIpelwzL0lzCgovKC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKWEvSXMKCi8oLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopYVwzMS9JcwoKLyguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKXwoLiopfCguKil8KC4qKWFcMzIvSXMKCi8oYSkoYmMpL0lCLG5vX2F1dG9fY2FwdHVyZQogIGFiYwoKLyg/UDxvbmU+YSkoYmMpL0lCLG5vX2F1dG9fY2FwdHVyZQogIGFiYwoKLyhhKSg/UDxuYW1lZD5iYykvSUIsbm9fYXV0b19jYXB0dXJlCgovKGFhYSg/QzEpYmJifGFiKS9JCiAgIGFhYWJiYgogICBhYWFiYmJcPWNhbGxvdXRfZGF0YT0wCiAgIGFhYWJiYlw9Y2FsbG91dF9kYXRhPTEKXD0gRXhwZWN0IG5vIG1hdGNoCiAgIGFhYWJiYlw9Y2FsbG91dF9kYXRhPS0xCgovYWIoP1A8b25lPmNkKWVmKD9QPHR3bz5naCkvSQogICAgYWJjZGVmZ2gKICAgIGFiY2RlZmdoXD1jb3B5PTEsZ2V0PXR3bwogICAgYWJjZGVmZ2hcPWNvcHk9b25lLGNvcHk9dHdvCiAgICBhYmNkZWZnaFw9Y29weT10aHJlZQoKLyg/UDxUZXM+KSg/UDxUZXN0PikvSUIKCi8oP1A8VGVzdD4pKD9QPFRlcz4pL0lCCgovKD9QPFo+enopKD9QPEE+YWEpL0kKICAgIHp6YWFcPWNvcHk9WgogICAgenphYVw9Y29weT1BCgovKD9QPHg+ZWtzKSg/UDx4PmVjY3MpL0kKCi8oP1A8YWJjPmFiYyg/UDxkZWY+ZGVmKSg/UDxhYmM+eHl6KSkvSQoKIlxbKCg/UDxlbGVtPlxkKykoLCg/UD5lbGVtKSkqKVxdIkkKICAgIFsxMCwyMCwzMCw1LDUsNCw0LDIsNDMsMjMsNDIzNF0KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBbXQoKIlxbKCg/UDxlbGVtPlxkKykoLCg/UD5lbGVtKSkqKT9cXSJJCiAgICBbMTAsMjAsMzAsNSw1LDQsNCwyLDQzLDIzLDQyMzRdCiAgICBbXQoKLyhhKGIoPzIpYykpPy9JQgoKLyhhKGIoPzIpYykpKi9JQgoKLyhhKGIoPzIpYykpezAsMn0vSUIKCi9bYWJdezF9Ky9CCgovKCkoPzEpezF9L0IKCi8oKSg/MSkvQgoKLygod1wvfC18d2l0aCkqKGZyZWV8aW1tZWRpYXRlKSouKj9zaGlwcGluZ1xzKlshLi1dKikvSWkKICAgICBCYWJ5IEJqb3JuIEFjdGl2ZSBDYXJyaWVyIC0gV2l0aCBmcmVlIFNISVBQSU5HISEKCi8oKHdcL3wtfHdpdGgpKihmcmVlfGltbWVkaWF0ZSkqLio/c2hpcHBpbmdccypbIS4tXSopL0lpCiAgICAgQmFieSBCam9ybiBBY3RpdmUgQ2FycmllciAtIFdpdGggZnJlZSBTSElQUElORyEhCgovYSouKmIvSUIKCi8oYXxiKSouP2MvSUIKCi9hYmMoP0MyNTUpZGUoP0MpZi9JQgoKL2FiY2RlL0lCLGF1dG9fY2FsbG91dAogIGFiY2RlClw9IEV4cGVjdCBubyBtYXRjaAogIGFiY2RmZQoKL2EqYi9JQixhdXRvX2NhbGxvdXQKICBhYgogIGFhYWFiCiAgYWFhYWNiCgovYSpiL0lCLGF1dG9fY2FsbG91dAogIGFiCiAgYWFhYWIKICBhYWFhY2IKCi9hK2IvSUIsYXV0b19jYWxsb3V0CiAgYWIKICBhYWFhYgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICBhYWFhY2IKCi8oYWJjfGRlZil4L0lCLGF1dG9fY2FsbG91dAogIGFiY3gKICBkZWZ4Clw9IEV4cGVjdCBubyBtYXRjaAogIGFiY2RlZnp4CgovKGFiY3xkZWYpeC9JQixhdXRvX2NhbGxvdXQKICBhYmN4CiAgZGVmeApcPSBFeHBlY3Qgbm8gbWF0Y2gKICBhYmNkZWZ6eAoKLyhhYnxjZCl7Myw0fS9JLGF1dG9fY2FsbG91dAogIGFiYWJhYgogIGFiY2RhYmNkCiAgYWJjZGNkY2RjZGNkCgovKFthYl17LDR9Y3x4eSkvSUIsYXV0b19jYWxsb3V0Clw9IEV4cGVjdCBubyBtYXRjaAogICAgTm90ZTogdGhhdCB7IGRvZXMgTk9UIGludHJvZHVjZSBhIHF1YW50aWZpZXIKCi8oW2FiXXssNH1jfHh5KS9JQixhdXRvX2NhbGxvdXQKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBOb3RlOiB0aGF0IHsgZG9lcyBOT1QgaW50cm9kdWNlIGEgcXVhbnRpZmllcgoKLyhbYWJdezEsNH1jfHh5KXs0LDV9PzEyMy9JQixhdXRvX2NhbGxvdXQKICAgIGFhY2FhY2FhY2FhY2FhYzEyMwoKL1xiLiovSQogIGFiIGNkXD1vZmZzZXQ9MQoKL1xiLiovSXMKICBhYiBjZFw9c3RhcnRvZmZzZXQ9MQoKLyg/IS5iY2QpLiovSQogIFhiY2QxMjM0NQoKL2FiY2RlL0kKICAgIGFiXD1wcwogICAgYWJjXD1wcwogICAgYWJjZFw9cHMKICAgIGFiY2RlXD1wcwogICAgdGhlIHF1aWNrIGJyb3duIGFiY1w9cHMKXD0gRXhwZWN0IG5vIG1hdGNoXD1wcwogICAgdGhlIHF1aWNrIGJyb3duIGFieHl6IGZveFw9cHMKCiJeKDA/WzEtOV18WzEyXVswLTldfDNbMDFdKS8oMD9bMS05XXwxWzAxMl0pLygyMCk/XGRcZCQiSQogICAgMTMvMDUvMDRcPXBzCiAgICAxMy81LzIwMDRcPXBzCiAgICAwMi8wNS8wOVw9cHMKICAgIDFcPXBzCiAgICAxLzJcPXBzCiAgICAxLzIvMFw9cHMKICAgIDEvMi8wNFw9cHMKICAgIDBcPXBzCiAgICAwMi9cPXBzCiAgICAwMi8wXD1wcwogICAgMDIvMVw9cHMKXD0gRXhwZWN0IG5vIG1hdGNoXD1wcwogICAgXD1wcwogICAgMTIzXD1wcwogICAgMzMvNC8wNFw9cHMKICAgIDMvMTMvMDRcPXBzCiAgICAwLzEvMjAwM1w9cHMKICAgIDAvXD1wcwogICAgMDIvMC9cPXBzCiAgICAwMi8xM1w9cHMKCi8wezAsMn1BQkMvSQoKL1xkezMsfUFCQy9JCgovXGQqQUJDL0kKCi9bYWJjXStERS9JCgovW2FiY10/MTIzL0kKICAgIDEyM1w9cHMKICAgIGFcPXBzCiAgICBiXD1wcwogICAgY1w9cHMKICAgIGMxMlw9cHMKICAgIGMxMjNcPXBzCgovXig/OlxkKXszLDV9WC9JCiAgICAxXD1wcwogICAgMTIzXD1wcwogICAgMTIzWAogICAgMTIzNFw9cHMKICAgIDEyMzRYCiAgICAxMjM0NVw9cHMKICAgIDEyMzQ1WApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIDFYCiAgICAxMjM0NTZcPXBzCgoiPChcdyspLz8+KC4pKjwvKFwxKT4iSWdtcwogICAgPCFET0NUWVBFIHNlaXRlIFNZU1RFTSAiaHR0cDovL3d3dy5sY28ubGluZWFzLmRlL3htbENtcy5kdGQiPlxuPHNlaXRlPlxuPGRva3VtZW50ZW5pbmZvcm1hdGlvbj5cbjxzZWl0ZW50aXRlbD5QYXJ0bmVyIGRlciBMQ088L3NlaXRlbnRpdGVsPlxuPHNwcmFjaGU+ZGU8L3NwcmFjaGU+XG48c2VpdGVuYmVzY2hyZWlidW5nPlBhcnRuZXIgZGVyIExJTkVBUyBDb25zdWx0aW5nXG5HbWJIPC9zZWl0ZW5iZXNjaHJlaWJ1bmc+XG48c2NobHVlc3NlbHdvcnRlPkxJTkVBUyBDb25zdWx0aW5nIEdtYkggSGFtYnVyZ1xuUGFydG5lcmZpcm1lbjwvc2NobHVlc3NlbHdvcnRlPlxuPHJldmlzaXQ+MzAgZGF5czwvcmV2aXNpdD5cbjxyb2JvdHM+aW5kZXgsZm9sbG93PC9yb2JvdHM+XG48bWVudWVpbmZvcm1hdGlvbj5cbjxha3Rpdj5qYTwvYWt0aXY+XG48bWVudWVwb3NpdGlvbj4zPC9tZW51ZXBvc2l0aW9uPlxuPG1lbnVldGV4dD5QYXJ0bmVyPC9tZW51ZXRleHQ+XG48L21lbnVlaW5mb3JtYXRpb24+XG48bGFzdGVkaXRlZD5cbjxhdXRvcj5MQ088L2F1dG9yPlxuPGZpcm1hPkxJTkVBUyBDb25zdWx0aW5nPC9maXJtYT5cbjxkYXR1bT4xNS4xMC4yMDAzPC9kYXR1bT5cbjwvbGFzdGVkaXRlZD5cbjwvZG9rdW1lbnRlbmluZm9ybWF0aW9uPlxuPGluaGFsdD5cblxuPGFic2F0enVlYmVyc2NocmlmdD5EaWUgUGFydG5lcmZpcm1lbiBkZXIgTElORUFTIENvbnN1bHRpbmdcbkdtYkg8L2Fic2F0enVlYmVyc2NocmlmdD5cblxuPGFic2F0ej48bGluayB6aWVsPSJodHRwOi8vd3d3LmNhLmNvbS8iIHppZWxmZW5zdGVyPSJfYmxhbmsiPlxuPGJpbGQgbmFtZT0ibG9nb19jYS5naWYiIHJhaG1lbj0ibm8iLz48L2xpbms+IDxsaW5rXG56aWVsPSJodHRwOi8vd3d3LmV5LmNvbS8iIHppZWxmZW5zdGVyPSJfYmxhbmsiPjxiaWxkXG5uYW1lPSJsb2dvX2V1eS5naWYiIHJhaG1lbj0ibm8iLz48L2xpbms+XG48L2Fic2F0ej5cblxuPGFic2F0ej48bGluayB6aWVsPSJodHRwOi8vd3d3LmNpc2NvLmRlLyIgemllbGZlbnN0ZXI9Il9ibGFuayI+XG48YmlsZCBuYW1lPSJsb2dvX2Npc2NvLmdpZiIgcmFobWVuPSJqYSIvPjwvbGluaz48L2Fic2F0ej5cblxuPGFic2F0ej48bGluayB6aWVsPSJodHRwOi8vd3d3LmF0ZWxpb24uZGUvIlxuemllbGZlbnN0ZXI9Il9ibGFuayI+PGJpbGRcbm5hbWU9ImxvZ29fYXRlbGlvbi5naWYiIHJhaG1lbj0ibm8iLz48L2xpbms+XG48L2Fic2F0ej5cblxuPGFic2F0ej48bGluayB6aWVsPSJodHRwOi8vd3d3LmxpbmUtaW5mb3JtYXRpb24uZGUvIlxuemllbGZlbnN0ZXI9Il9ibGFuayI+XG48YmlsZCBuYW1lPSJsb2dvX2xpbmVfaW5mb3JtYXRpb24uZ2lmIiByYWhtZW49Im5vIi8+PC9saW5rPlxuPC9hYnNhdHo+XG5cbjxhYnNhdHo+PGJpbGQgbmFtZT0ibG9nb19hdy5naWYiIHJhaG1lbj0ibm8iLz48L2Fic2F0ej5cblxuPGFic2F0ej48bGluayB6aWVsPSJodHRwOi8vd3d3LmluY29nbmlzLmRlLyJcbnppZWxmZW5zdGVyPSJfYmxhbmsiPjxiaWxkXG5uYW1lPSJsb2dvX2luY29nbmlzLmdpZiIgcmFobWVuPSJubyIvPjwvbGluaz48L2Fic2F0ej5cblxuPGFic2F0ej48bGluayB6aWVsPSJodHRwOi8vd3d3LmFkZGNyYWZ0LmNvbS8iXG56aWVsZmVuc3Rlcj0iX2JsYW5rIj48YmlsZFxubmFtZT0ibG9nb19hZGRjcmFmdC5naWYiIHJhaG1lbj0ibm8iLz48L2xpbms+PC9hYnNhdHo+XG5cbjxhYnNhdHo+PGxpbmsgemllbD0iaHR0cDovL3d3dy5jb21lbmRvLmNvbS8iXG56aWVsZmVuc3Rlcj0iX2JsYW5rIj48YmlsZFxubmFtZT0ibG9nb19jb21lbmRvLmdpZiIgcmFobWVuPSJubyIvPjwvbGluaz48L2Fic2F0ej5cblxuPC9pbmhhbHQ+XG48L3NlaXRlPlw9aml0c3RhY2s9MTAyNAoKL2xpbmVcbmJyZWFrL0kKICAgIHRoaXMgaXMgYSBsaW5lXG5icmVhawogICAgbGluZSBvbmVcbnRoaXMgaXMgYSBsaW5lXG5icmVhayBpbiB0aGUgc2Vjb25kIGxpbmUKCi9saW5lXG5icmVhay9JLGZpcnN0bGluZQogICAgdGhpcyBpcyBhIGxpbmVcbmJyZWFrClw9IEV4cGVjdCBubyBtYXRjaAogICAgbGluZSBvbmVcbnRoaXMgaXMgYSBsaW5lXG5icmVhayBpbiB0aGUgc2Vjb25kIGxpbmUKCi9saW5lXG5icmVhay9JbSxmaXJzdGxpbmUKICAgIHRoaXMgaXMgYSBsaW5lXG5icmVhawpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGxpbmUgb25lXG50aGlzIGlzIGEgbGluZVxuYnJlYWsgaW4gdGhlIHNlY29uZCBsaW5lCgovKD9pKSg/LWkpQWJDZC9JCiAgICBBYkNkClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJjZAoKL2F7MTExMTExMTExMTExMTExMTExMTF9L0kKCi8oKXs2NDI5NDk2NzI5NX0vSQoKLygpezIsNDI5NDk2NzI5NX0vSQoKIig/aTphKSg/aTpiKSg/aTpjKSg/aTpkKSg/aTplKSg/aTpmKSg/aTpnKSg/aTpoKSg/aTppKSg/aTpqKShrKSg/aTpsKUFcMUIiSQogICAgYWJjZGVmZ2hpamtsQWtCCgoiKD9QPG4wPmEpKD9QPG4xPmIpKD9QPG4yPmMpKD9QPG4zPmQpKD9QPG40PmUpKD9QPG41PmYpKD9QPG42PmcpKD9QPG43PmgpKD9QPG44PmkpKD9QPG45PmopKD9QPG4xMD5rKSg/UDxuMTE+bClBXDExQiJJCiAgICBhYmNkZWZnaGlqa2xBa0IKCiIoYSkoYikoYykoZCkoZSkoZikoZykoaCkoaSkoaikoaykobClBXDExQiJJCiAgICBhYmNkZWZnaGlqa2xBa0IKCiIoP1A8bmFtZTA+YSkoP1A8bmFtZTE+YSkoP1A8bmFtZTI+YSkoP1A8bmFtZTM+YSkoP1A8bmFtZTQ+YSkoP1A8bmFtZTU+YSkoP1A8bmFtZTY+YSkoP1A8bmFtZTc+YSkoP1A8bmFtZTg+YSkoP1A8bmFtZTk+YSkoP1A8bmFtZTEwPmEpKD9QPG5hbWUxMT5hKSg/UDxuYW1lMTI+YSkoP1A8bmFtZTEzPmEpKD9QPG5hbWUxND5hKSg/UDxuYW1lMTU+YSkoP1A8bmFtZTE2PmEpKD9QPG5hbWUxNz5hKSg/UDxuYW1lMTg+YSkoP1A8bmFtZTE5PmEpKD9QPG5hbWUyMD5hKSg/UDxuYW1lMjE+YSkoP1A8bmFtZTIyPmEpKD9QPG5hbWUyMz5hKSg/UDxuYW1lMjQ+YSkoP1A8bmFtZTI1PmEpKD9QPG5hbWUyNj5hKSg/UDxuYW1lMjc+YSkoP1A8bmFtZTI4PmEpKD9QPG5hbWUyOT5hKSg/UDxuYW1lMzA+YSkoP1A8bmFtZTMxPmEpKD9QPG5hbWUzMj5hKSg/UDxuYW1lMzM+YSkoP1A8bmFtZTM0PmEpKD9QPG5hbWUzNT5hKSg/UDxuYW1lMzY+YSkoP1A8bmFtZTM3PmEpKD9QPG5hbWUzOD5hKSg/UDxuYW1lMzk+YSkoP1A8bmFtZTQwPmEpKD9QPG5hbWU0MT5hKSg/UDxuYW1lNDI+YSkoP1A8bmFtZTQzPmEpKD9QPG5hbWU0ND5hKSg/UDxuYW1lNDU+YSkoP1A8bmFtZTQ2PmEpKD9QPG5hbWU0Nz5hKSg/UDxuYW1lNDg+YSkoP1A8bmFtZTQ5PmEpKD9QPG5hbWU1MD5hKSg/UDxuYW1lNTE+YSkoP1A8bmFtZTUyPmEpKD9QPG5hbWU1Mz5hKSg/UDxuYW1lNTQ+YSkoP1A8bmFtZTU1PmEpKD9QPG5hbWU1Nj5hKSg/UDxuYW1lNTc+YSkoP1A8bmFtZTU4PmEpKD9QPG5hbWU1OT5hKSg/UDxuYW1lNjA+YSkoP1A8bmFtZTYxPmEpKD9QPG5hbWU2Mj5hKSg/UDxuYW1lNjM+YSkoP1A8bmFtZTY0PmEpKD9QPG5hbWU2NT5hKSg/UDxuYW1lNjY+YSkoP1A8bmFtZTY3PmEpKD9QPG5hbWU2OD5hKSg/UDxuYW1lNjk+YSkoP1A8bmFtZTcwPmEpKD9QPG5hbWU3MT5hKSg/UDxuYW1lNzI+YSkoP1A8bmFtZTczPmEpKD9QPG5hbWU3ND5hKSg/UDxuYW1lNzU+YSkoP1A8bmFtZTc2PmEpKD9QPG5hbWU3Nz5hKSg/UDxuYW1lNzg+YSkoP1A8bmFtZTc5PmEpKD9QPG5hbWU4MD5hKSg/UDxuYW1lODE+YSkoP1A8bmFtZTgyPmEpKD9QPG5hbWU4Mz5hKSg/UDxuYW1lODQ+YSkoP1A8bmFtZTg1PmEpKD9QPG5hbWU4Nj5hKSg/UDxuYW1lODc+YSkoP1A8bmFtZTg4PmEpKD9QPG5hbWU4OT5hKSg/UDxuYW1lOTA+YSkoP1A8bmFtZTkxPmEpKD9QPG5hbWU5Mj5hKSg/UDxuYW1lOTM+YSkoP1A8bmFtZTk0PmEpKD9QPG5hbWU5NT5hKSg/UDxuYW1lOTY+YSkoP1A8bmFtZTk3PmEpKD9QPG5hbWU5OD5hKSg/UDxuYW1lOTk+YSkoP1A8bmFtZTEwMD5hKSJJCiAgICBhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYQoKIihhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKShhKSJJCiAgICBhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYQoKL1teKCldKig/OlwoKD9SKVwpW14oKV0qKSovSQogICAgKHRoaXMoYW5kKXRoYXQKICAgICh0aGlzKGFuZCl0aGF0KQogICAgKHRoaXMoYW5kKXRoYXQpc3R1ZmYKCi9bXigpXSooPzpcKCg/Pig/UikpXClbXigpXSopKi9JCiAgICAodGhpcyhhbmQpdGhhdAogICAgKHRoaXMoYW5kKXRoYXQpCgovW14oKV0qKD86XCgoP1IpXCkpKlteKCldKi9JCiAgICAodGhpcyhhbmQpdGhhdAogICAgKHRoaXMoYW5kKXRoYXQpCgovKD86XCgoP1IpXCkpKlteKCldKi9JCiAgICAodGhpcyhhbmQpdGhhdAogICAgKHRoaXMoYW5kKXRoYXQpCiAgICAoKHRoaXMpKQoKLyg/OlwoKD9SKVwpKXxbXigpXSovSQogICAgKHRoaXMoYW5kKXRoYXQKICAgICh0aGlzKGFuZCl0aGF0KQogICAgKHRoaXMpCiAgICAoKHRoaXMpKQoKL1x4ezAwMDBmZn0vSQoKL14oKD9QPEE+YTEpfCg/UDxBPmEyKWIpL0kKCi9eKCg/UDxBPmExKXwoP1A8QT5hMiliKS9JLGR1cG5hbWVzCiAgICBhMWJcPWNvcHk9QQogICAgYTJiXD1jb3B5PUEKICAgIGExYlw9Y29weT1aLGNvcHk9QQoKLyg/fCg/PGE+KSg/PGI+KSg/PGE+KXwoPzxhPikoPzxiPikoPzxhPikpL0ksZHVwbmFtZXMKCi9eKD9QPEE+YSkoP1A8QT5iKS9JLGR1cG5hbWVzCiAgICBhYlw9Y29weT1BCgovXig/UDxBPmEpKD9QPEE+Yil8Y2QvSSxkdXBuYW1lcwogICAgYWJcPWNvcHk9QQogICAgY2RcPWNvcHk9QQoKL14oP1A8QT5hKSg/UDxBPmIpfGNkKD9QPEE+ZWYpKD9QPEE+Z2gpL0ksZHVwbmFtZXMKICAgIGNkZWZnaFw9Y29weT1BCgovXigoP1A8QT5hMSl8KD9QPEE+YTIpYikvSSxkdXBuYW1lcwogICAgYTFiXD1nZXQ9QQogICAgYTJiXD1nZXQ9QQogICAgYTFiXD1nZXQ9WixnZXQ9QQoKL14oP1A8QT5hKSg/UDxBPmIpL0ksZHVwbmFtZXMKICAgIGFiXD1nZXQ9QQoKL14oP1A8QT5hKSg/UDxBPmIpfGNkL0ksZHVwbmFtZXMKICAgIGFiXD1nZXQ9QQogICAgY2RcPWdldD1BCgovXig/UDxBPmEpKD9QPEE+Yil8Y2QoP1A8QT5lZikoP1A8QT5naCkvSSxkdXBuYW1lcwogICAgY2RlZmdoXD1nZXQ9QQoKLyg/SileKCg/UDxBPmExKXwoP1A8QT5hMiliKS9JCiAgICBhMWJcPWNvcHk9QQogICAgYTJiXD1jb3B5PUEKCi9eKD9QPEE+YSkgKD9KOig/UDxCPmIpKD9QPEI+YykpICg/UDxBPmQpL0kKCiMgSW4gdGhpcyBuZXh0IHRlc3QsIEogaXMgbm90IHNldCBhdCB0aGUgb3V0ZXIgbGV2ZWw7IGNvbnNlcXVlbnRseSBpdCBpc24ndCBzZXQKIyBpbiB0aGUgcGF0dGVybidzIG9wdGlvbnM7IGNvbnNlcXVlbnRseSBwY3JlMl9zdWJzdHJpbmdfZ2V0X2J5bmFtZSgpIHByb2R1Y2VzCiMgYSByYW5kb20gdmFsdWUuCgovXig/UDxBPmEpICg/SjooP1A8Qj5iKSg/UDxCPmMpKSAoP1A8Qz5kKS9JCiAgICBhIGJjIGRcPWNvcHk9QSxjb3B5PUIsY29weT1DCgovXig/UDxBPmEpPyg/KEEpYXxiKS9JCiAgICBhYWJjCiAgICBiYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiYwoKLyg/Oig/KFpaKWF8YikoP1A8Wlo+WCkpKy9JCiAgICBiWGFYCgovKD86KD8oMnkpYXxiKShYKSkrL0kKCi8oPzooPyhaQSlhfGIpKD9QPFpaPlgpKSsvSQoKLyg/Oig/KFpaKWF8YikoPyhaWilhfGIpKD9QPFpaPlgpKSsvSQogICAgYmJYYWFYCgovKD86KD8oWlopYXxcKGJcKSlcXCg/UDxaWj5YKSkrL0kKICAgIChiKVxcWGFcXFgKCi8oP1A8QUJDL0kKCi8oPzooPyhBKSg/UD1BKWF8YikoP1A8QT5YfFkpKSsvSQogICAgYlhYYVlZYVkKICAgIGJYWWFYWGFYCgovKCkoKSgpKCkoKSgpKCkoKSgpKD86KD8oQSkoP1A9QSlhfGIpKD9QPEE+WHxZKSkrL0kKICAgIGJYWGFZWWFZCgovXHMqLFxzKi9JCiAgICBceDBiLFx4MGIKICAgIFx4MGMsXHgwZAoKL15hYmMvSW0sbmV3bGluZT1sZgogICAgeHl6XG5hYmMKICAgIHh5elxyXG5hYmMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB4eXpccmFiYwogICAgeHl6YWJjXHIKICAgIHh5emFiY1xycHFyCiAgICB4eXphYmNcclxuCiAgICB4eXphYmNcclxucHFyCgovXmFiYy9JbSxuZXdsaW5lPWNybGYKICAgIHh5elxyXG5hYmNsZj4KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB4eXpcbmFiY2xmCiAgICB4eXpccmFiY2xmCgovXmFiYy9JbSxuZXdsaW5lPWNyCiAgICB4eXpccmFiYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHh5elxuYWJjCiAgICB4eXpcclxuYWJjCgovXmFiYy9JbSxuZXdsaW5lPWJhZAoKLy4qL0ksbmV3bGluZT1sZgogICAgYWJjXG5kZWYKICAgIGFiY1xyZGVmCiAgICBhYmNcclxuZGVmCgovLiovSSxuZXdsaW5lPWNyCiAgICBhYmNcbmRlZgogICAgYWJjXHJkZWYKICAgIGFiY1xyXG5kZWYKCi8uKi9JLG5ld2xpbmU9Y3JsZgogICAgYWJjXG5kZWYKICAgIGFiY1xyZGVmCiAgICBhYmNcclxuZGVmCgovXHcrKC4pKC4pP2RlZi9JcwogICAgYWJjXG5kZWYKICAgIGFiY1xyZGVmCiAgICBhYmNcclxuZGVmCgovKD9QPEI+MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkP1xkKSg/OlwuKD9QPkIpKXszfS9JCgovKCkoKSgpKCkoKSgpKCkoKSgpKCkoKSgpKCkoKSgpKCkoKSgpKCkoKQogKCkoKSgpKCkoKSgpKCkoKSgpKCkoKSgpKCkoKSgpKCkoKSgpKCkoKQogKCkoKSgpKCkoKSgpKCkoKSgpKCkoKSgpKCkoKSgpKCkoKSgpKCkoKQogKCkoKSgpKCkoKSgpKCkoKSgpKCkoKSgpKCkoKSgpKCkoKSgpKCkoKQogKCkoKSgpKCkoKSgpKCkoKSgpKCkoKSgpKCkoKSgpKCkoKSgpKCkoKQogKC4oLikpL0l4CiAgICBYWVw9b3ZlY3Rvcj0xMzMKCi8oYSpifCg/aTpjKig/LWkpZCkpL0kKCi8oKVthYl14eXovSQoKLyh8KVthYl14eXovSQoKLyh8YylbYWJdeHl6L0kKCi8ofGM/KVthYl14eXovSQoKLyhkP3xjPylbYWJdeHl6L0kKCi8oZD98YylbYWJdeHl6L0kKCi9eYSpiXGQvSUIKCi9eYSorYlxkL0lCCgovXmEqP2JcZC9JQgoKL15hK0FcZC9JQgogICAgYWFhQTUKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYWFhNQoKL15hKkFcZC9JQmkKICAgIGFhYUE1CiAgICBhYWFhNQoKLyhhKnxiKilbY2RdL0kKCi8oYSt8YiopW2NkXS9JCgovKGEqfGIrKVtjZF0vSQoKLyhhK3xiKylbY2RdL0kKCi8oKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoCiAoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoCiAoKCgKIGEKICkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkKICkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkKICkpKQovSXgKICBsYXJnZSBuZXN0CgovYSpcZC9CCgovYSpcRC9CCgovMCpcZC9CCgovMCpcRC9CCgovYSpccy9CCgovYSpcUy9CCgovICpccy9CCgovICpcUy9CCgovYSpcdy9CCgovYSpcVy9CCgovPSpcdy9CCgovPSpcVy9CCgovXGQqYS9CCgovXGQqMi9CCgovXGQqXGQvQgoKL1xkKlxEL0IKCi9cZCpccy9CCgovXGQqXFMvQgoKL1xkKlx3L0IKCi9cZCpcVy9CCgovXEQqYS9CCgovXEQqMi9CCgovXEQqXGQvQgoKL1xEKlxEL0IKCi9cRCpccy9CCgovXEQqXFMvQgoKL1xEKlx3L0IKCi9cRCpcVy9CCgovXHMqYS9CCgovXHMqMi9CCgovXHMqXGQvQgoKL1xzKlxEL0IKCi9ccypccy9CCgovXHMqXFMvQgoKL1xzKlx3L0IKCi9ccypcVy9CCgovXFMqYS9CCgovXFMqMi9CCgovXFMqXGQvQgoKL1xTKlxEL0IKCi9cUypccy9CCgovXFMqXFMvQgoKL1xTKlx3L0IKCi9cUypcVy9CCgovXHcqYS9CCgovXHcqMi9CCgovXHcqXGQvQgoKL1x3KlxEL0IKCi9cdypccy9CCgovXHcqXFMvQgoKL1x3Klx3L0IKCi9cdypcVy9CCgovXFcqYS9CCgovXFcqMi9CCgovXFcqXGQvQgoKL1xXKlxEL0IKCi9cVypccy9CCgovXFcqXFMvQgoKL1xXKlx3L0IKCi9cVypcVy9CCgovW15hXSthL0IKCi9bXmFdK2EvQmkKCi9bXmFdK0EvQmkKCi9bXmFdK2IvQgoKL1teYV0rXGQvQgoKL2EqW15hXS9CCgovKD9QPGFiYz54KSg/UDx4eXo+eSkvSQogICAgeHlcPWNvcHk9YWJjLGNvcHk9eHl6CgovKD88YWJjPngpKD8neHl6J3kpL0kKICAgIHh5XD1jb3B5PWFiYyxjb3B5PXh5egoKLyg/PGFiYyd4KSg/J3h5eid5KS9JCgovKD88YWJjPngpKD8neHl6PnkpL0kKCi8oP1AnYWJjJ3gpKD9QPHh5ej55KS9JCgovXig/Oig/KFpaKWF8YikoPzxaWj5YKSkrLwogICAgYlhhWAogICAgYlhiWApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFYYVgKICAgIGFYYlgKCi9eKD9QPmFiYykoPzxhYmNkPnh4eCkvCgovXig/UD5hYmMpKD88YWJjPnh8eSkvCiAgICB4eAogICAgeHkKICAgIHl5CiAgICB5eAoKL14oP1A+YWJjKSg/UDxhYmM+eHx5KS8KICAgIHh4CiAgICB4eQogICAgeXkKICAgIHl4CgovXigoPyhhYmMpYXxiKSg/PGFiYz54fHkpKSsvCiAgICBieGF5CiAgICBieGJ5Clw9IEV4cGVjdCBubyBtYXRjaAogICAgYXhieQoKL14oKCg/UD1hYmMpfFgpKD88YWJjPnh8eSkpKy8KICAgIFh4WHh4eAogICAgWHhYeXl4CiAgICBYeFh5eHgKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB4CgovXig/MSkoYWJjKS8KICAgIGFiY2FiYwoKL14oPzooPzpcMXxYKShhfGIpKSsvCiAgICBYYWFhCiAgICBYYWJhCgovXltcRVxRYVxFLVxRelxFXSsvQgoKL15bYVxRXWJjXEVdL0IKCi9eW2EtXFFcRV0vQgoKL14oP1A+YWJjKVsoKV0oPzxhYmM+KS9CCgovXigoPyhhYmMpeSlbKCldKD9QPGFiYz54KSkrL0IKICAgICh4eSl4CgovXig/UD5hYmMpXFEoKVxFKD88YWJjPikvQgoKL14oP1A+YWJjKVthXFEoXVxFKF0oPzxhYmM+KS9CCgovXig/UD5hYmMpICMgdGhpcyBpcyAoYSBjb21tZW50KQogICg/PGFiYz4pL0J4CgovXlxXKig/Oig/PG9uZT4oPzx0d28+LilcVyooPyZvbmUpXFcqXGs8dHdvPnwpfCg/PHRocmVlPig/PGZvdXI+LilcVyooPyZ0aHJlZSlcVypcaydmb3VyJ3xcVyouXFcqKSlcVyokL0lpCiAgICAxMjIxCiAgICBTYXRhbiwgb3NjaWxsYXRlIG15IG1ldGFsbGljIHNvbmF0YXMhCiAgICBBIG1hbiwgYSBwbGFuLCBhIGNhbmFsOiBQYW5hbWEhCiAgICBBYmxlIHdhcyBJIGVyZSBJIHNhdyBFbGJhLgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFRoZSBxdWljayBicm93biBmb3gKCi8oPz0oXHcrKSlcMTovSQogICAgYWJjZDoKCi8oPz0oPydhYmMnXHcrKSlcazxhYmM+Oi9JCiAgICBhYmNkOgoKLyg/J2FiYydhfGIpKD88YWJjPmR8ZSlcazxhYmM+ezJ9L2R1cG5hbWVzCiAgICBhZGFhClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWRkZAogICAgYWRiYgoKLyg/J2FiYydhfGIpKD88YWJjPmR8ZSkoPyZhYmMpezJ9L2R1cG5hbWVzCiAgICBiZGFhCiAgICBiZGFiClw9IEV4cGVjdCBubyBtYXRjaAogICAgYmRkZAoKLyg/KDxiYykpLwoKLyg/KCcnKSkvCgovKD8oJ1InKXN0dWZmKS8KCi8oKGFiYyAoPyhSKSAoPyhSMSkxKSAoPyhSMikyKSBYICB8ICAoPzEpICAoPzIpICAgKD9SKSApKSkgL3gKICAgIGFiY2FiYzFYYWJjMlhhYmNYYWJjYWJjCgovKD88QT4gKD8nQicgYWJjICg/KFIpICg/KFImQSkxKSAoPyhSJkIpMikgWCAgfCAgKD8xKSAgKD8yKSAgICg/UikgKSkpIC94CiAgICBhYmNhYmMxWGFiYzJYYWJjWGFiY2FiYwoKLyg/PEE+ICg/J0InIGFiYyAoPyhSKSAoPyhSJkMpMSkgKD8oUiZCKTIpIFggIHwgICg/MSkgICg/MikgICAoP1IpICkpKSAveAoKL14oPyhERUZJTkUpIGFiYyB8IHh5eiApIC94CgovKD8oREVGSU5FKSBhYmMpIHh5ei9JeAoKLyhhfCkqXGQvCiAgYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhNFw9b3ZlY3Rvcj0wClw9IEV4cGVjdCBubyBtYXRjaAogIGFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYVw9b3ZlY3Rvcj0wCgovXmEuYi9uZXdsaW5lPWxmCiAgICBhXHJiClw9IEV4cGVjdCBubyBtYXRjaAogICAgYVxuYgoKL15hLmIvbmV3bGluZT1jcgogICAgYVxuYgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFccmIKCi9eYS5iL25ld2xpbmU9YW55Y3JsZgogICAgYVx4ODViClw9IEV4cGVjdCBubyBtYXRjaAogICAgYVxyYgoKL15hLmIvbmV3bGluZT1hbnkKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhXG5iCiAgICBhXHJiCiAgICBhXHg4NWIKCi9eYWJjLi9nbXgsbmV3bGluZT1hbnkKICAgIGFiYzEgXHgwYWFiYzIgXHgwYmFiYzN4eCBceDBjYWJjNCBceDBkYWJjNXh4IFx4MGRceDBhYWJjNiBceDg1YWJjNyBKVU5LCgovYWJjLiQvZ214LG5ld2xpbmU9YW55CiAgICBhYmMxXHgwYSBhYmMyXHgwYiBhYmMzXHgwYyBhYmM0XHgwZCBhYmM1XHgwZFx4MGEgYWJjNlx4ODUgYWJjNyBhYmM5CgovXmFcUmIvYnNyPXVuaWNvZGUKICAgIGFcbmIKICAgIGFccmIKICAgIGFcclxuYgogICAgYVx4MGJiCiAgICBhXHgwY2IKICAgIGFceDg1YgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFcblxyYgoKL15hXFIqYi9ic3I9dW5pY29kZQogICAgYWIKICAgIGFcbmIKICAgIGFccmIKICAgIGFcclxuYgogICAgYVx4MGJiCiAgICBhXHgwY2IKICAgIGFceDg1YgogICAgYVxuXHJiCiAgICBhXG5cclx4ODVceDBjYgoKL15hXFIrYi9ic3I9dW5pY29kZQogICAgYVxuYgogICAgYVxyYgogICAgYVxyXG5iCiAgICBhXHgwYmIKICAgIGFceDBjYgogICAgYVx4ODViCiAgICBhXG5ccmIKICAgIGFcblxyXHg4NVx4MGNiClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWIKCi9eYVxSezEsM31iL2Jzcj11bmljb2RlCiAgICBhXG5iCiAgICBhXG5ccmIKICAgIGFcblxyXHg4NWIKICAgIGFcclxuXHJcbmIKICAgIGFcclxuXHJcblxyXG5iCiAgICBhXG5cclxuXHJiCiAgICBhXG5cblxyXG5iClw9IEV4cGVjdCBubyBtYXRjaAogICAgYVxuXG5cblxyYgogICAgYVxyCgovKD8mYWJjKVgoPzxhYmM+UCkvSQogICAgYWJjUFhQMTIzCgovKD8xKVgoPzxhYmM+UCkvSQogICAgYWJjUFhQMTIzCgovKD86YSg/JmFiYyliKSooPzxhYmM+eCkvCiAgICAxMjNheGJheGJheGJ4NDU2CiAgICAxMjNheGJheGJheGI0NTYKCi8oPzphKD8mYWJjKWIpezEsNX0oPzxhYmM+eCkvCiAgICAxMjNheGJheGJheGJ4NDU2CgovKD86YSg/JmFiYyliKXsyLDV9KD88YWJjPngpLwogICAgMTIzYXhiYXhiYXhieDQ1NgoKLyg/OmEoPyZhYmMpYil7Mix9KD88YWJjPngpLwogICAgMTIzYXhiYXhiYXhieDQ1NgoKLyhhYmMpKD9pOig/MSkpLwogICAgZGVmYWJjYWJjeHl6Clw9IEV4cGVjdCBubyBtYXRjaAogICAgREVGYWJjQUJDWFlaCgovKGFiYykoPzooP2kpKD8xKSkvCiAgICBkZWZhYmNhYmN4eXoKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBERUZhYmNBQkNYWVoKCi9eKGEpXGctMi8KCi9eKGEpXGcvCgovXihhKVxnezB9LwoKL14oYSlcZ3szLwoKL14oYSlcZ3thYX0vCgovXmEuYi9uZXdsaW5lPWxmCiAgICBhXHJiClw9IEV4cGVjdCBubyBtYXRjaAogICAgYVxuYgoKLy4rZm9vLwogICAgYWZvbwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFxyXG5mb28KICAgIFxuZm9vCgovLitmb28vbmV3bGluZT1jcmxmCiAgICBhZm9vCiAgICBcbmZvbwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFxyXG5mb28KCi8uK2Zvby9uZXdsaW5lPWFueQogICAgYWZvbwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFxuZm9vCiAgICBcclxuZm9vCgovLitmb28vcwogICAgYWZvbwogICAgXHJcbmZvbwogICAgXG5mb28KCi9eJC9nbSxuZXdsaW5lPWFueQogICAgYWJjXHJccnh5egogICAgYWJjXG5ccnh5egpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiY1xyXG54eXoKCi8oP20pXiQvZyxuZXdsaW5lPWFueSxhZnRlcnRleHQKICAgIGFiY1xyXG5cclxuCgovKD9tKV4kfF5cclxuL2csbmV3bGluZT1hbnksYWZ0ZXJ0ZXh0CiAgICBhYmNcclxuXHJcbgoKLyg/bSkkL2csbmV3bGluZT1hbnksYWZ0ZXJ0ZXh0CiAgICBhYmNcclxuXHJcbgoKL2FiYy4kL2dteCxuZXdsaW5lPWFueWNybGYKICAgIGFiYzFceDBhIGFiYzJceDBiIGFiYzNceDBjIGFiYzRceDBkIGFiYzVceDBkXHgwYSBhYmM2XHg4NSBhYmM5CgovXlgvbQogICAgWEFCQwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFhBQkNcPW5vdGJvbAoKLyhhYnxjKSg/LTEpL0IKICAgIGFiYwoKL3h5KD8rMSkoYWJjKS9CCiAgICB4eWFiY2FiYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHh5YWJjCgoveCg/LTApeS8KCi94KD8tMSl5LwoKL3goPyswKXkvCgoveCg/KzEpeS8KCi9eKGFiYyk/KD8oLTEpWHxZKS9CCiAgICBhYmNYCiAgICBZClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJjWQoKL14oKD8oKzEpWHxZKShhYmMpKSsvQgogICAgWWFiY1hhYmMKICAgIFlhYmNYYWJjWGFiYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFhhYmNYYWJjCgovKD8oLTEpYSkvQgoKLygoPygtMSlhKSkvQgoKLygoPygtMilhKSkvQgoKL14oPygrMSlYfFkpKC4pL0IKICAgIFkhCgovKD88QT50b218Ym9uKS1ca3tBfS8KICAgIHRvbS10b20KICAgIGJvbi1ib24KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB0b20tYm9uCgovXGd7QS8KCi8oP3woYWJjKXwoeHl6KSkvQgogICA+YWJjPAogICA+eHl6PAoKLyh4KSg/fChhYmMpfCh4eXopKSh4KS9CCiAgICB4YWJjeAogICAgeHh5engKCi8oeCkoP3woYWJjKShwcXIpfCh4eXopKSh4KS9CCiAgICB4YWJjcHFyeAogICAgeHh5engKCi9cSCsrWC9CClw9IEV4cGVjdCBubyBtYXRjaAogICAgWFhYWAoKL1xIK1xoWS9CCiAgICBYWFhYIFkKCi9cSCsgWS9CCgovXGgrQS9CCgovXHYqQi9CCgovXFYrXHgwYS9CCgovQStcaC9CCgovICpcSC9CCgovQSpcdi9CCgovXHgwYipcVi9CCgovXGQrXGgvQgoKL1xkKlx2L0IKCi9TK1xoXFMrXHYvQgoKL1x3ezMsfVxoXHcrXHYvQgoKL1xoK1xkXGgrXHdcaCtcU1xoK1xIL0IKCi9cditcZFx2K1x3XHYrXFNcditcVi9CCgovXEgrXGhcSCtcZC9CCgovXFYrXHZcVitcdy9CCgovXCggKD86IFteKCldKiB8ICg/UikgKSogXCkveAooMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAoMCgwKDAwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMCkwKTApMClcPWppdHN0YWNrPTEwMjQKCi9bXEVdQUFBLwoKL1tcUVxFXUFBQS8KCi9bXlxFXUFBQS8KCi9bXlxRXEVdQUFBLwoKL1tcRV5dQUFBLwoKL1tcUVxFXl1BQUEvCgovQSgqUFJVTkUpQigqU0tJUClDKCpUSEVOKUQoKkNPTU1JVClFKCpGKUYoKkZBSUwpRyg/ISlIKCpBQ0NFUFQpSS9CCgovXmErKCpGQUlMKS9hdXRvX2NhbGxvdXQKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYWFhYWEKCi9hK2I/YysoKkZBSUwpL2F1dG9fY2FsbG91dApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYWJjY2MKCi9hK2I/KCpQUlVORSljKygqRkFJTCkvYXV0b19jYWxsb3V0Clw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFhYmNjYwoKL2ErYj8oKkNPTU1JVCljKygqRkFJTCkvYXV0b19jYWxsb3V0Clw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFhYmNjYwoKL2ErYj8oKlNLSVApYysoKkZBSUwpL2F1dG9fY2FsbG91dApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYWJjY2NhYWFiY2NjCgovYStiPygqVEhFTiljKygqRkFJTCkvYXV0b19jYWxsb3V0Clw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFhYmNjYwoKL2EoKk1BUkspYi8KCi8oP2k6QXsxLH1cNjY2NjY2NjY2NikvCgovXGc2NjY2NjY2NjY2LwoKL1tcZzY2NjY2NjY2NjZdL0IKCi8oPzEpXGNbLwoKLy4rQS9uZXdsaW5lPWNybGYKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBcclxuQQoKL1xuQS9uZXdsaW5lPWNybGYKICAgIFxyXG5BCgovW1xyXG5dQS9uZXdsaW5lPWNybGYKICAgIFxyXG5BCgovKFxyfFxuKUEvbmV3bGluZT1jcmxmCiAgICBcclxuQQoKL2EoKkNSKWIvCgovKCpDUilhLmIvCiAgICBhXG5iClw9IEV4cGVjdCBubyBtYXRjaAogICAgYVxyYgoKLygqQ1IpYS5iL25ld2xpbmU9bGYKICAgIGFcbmIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhXHJiCgovKCpMRilhLmIvbmV3bGluZT1DUkxGCiAgICBhXHJiClw9IEV4cGVjdCBubyBtYXRjaAogICAgYVxuYgoKLygqQ1JMRilhLmIvCiAgICBhXHJiCiAgICBhXG5iClw9IEV4cGVjdCBubyBtYXRjaAogICAgYVxyXG5iCgovKCpBTllDUkxGKWEuYi9uZXdsaW5lPUNSClw9IEV4cGVjdCBubyBtYXRjaAogICAgYVxyYgogICAgYVxuYgogICAgYVxyXG5iCgovKCpBTlkpYS5iL25ld2xpbmU9Y3IKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhXHJiCiAgICBhXG5iCiAgICBhXHJcbmIKICAgIGFceDg1YgoKLygqQU5ZKS4qL2cKICAgIGFiY1xyXG5kZWYKCi8oKkFOWUNSTEYpLiovZwogICAgYWJjXHJcbmRlZgoKLygqQ1JMRikuKi9nCiAgICBhYmNcclxuZGVmCgovKCpOVUwpXi4qLwogICAgYVxuYlx4MDBjY2MKCi8oKk5VTCleLiovcwogICAgYVxuYlx4MDBjY2MKCi9eeC9tLG5ld2xpbmU9TlVMCiAgICBhYlx4MDB4eQoKLycjY29tbWVudCcgMGQgMGEgMDAgJ154XCcgMGEgJ3knL3gsbmV3bGluZT1udWwsaGV4CiAgICB4XG55egoKLygqTlVMKV5YXE5ZLwogICAgWFxuWQogICAgWFxyWQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFhceDAwWQoKL2FcUmIvSSxic3I9YW55Y3JsZgogICAgYVxyYgogICAgYVxuYgogICAgYVxyXG5iClw9IEV4cGVjdCBubyBtYXRjaAogICAgYVx4ODViCiAgICBhXHgwYmIKCi9hXFJiL0ksYnNyPXVuaWNvZGUKICAgIGFccmIKICAgIGFcbmIKICAgIGFcclxuYgogICAgYVx4ODViCiAgICBhXHgwYmIKCi9hXFI/Yi9JLGJzcj1hbnljcmxmCiAgICBhXHJiCiAgICBhXG5iCiAgICBhXHJcbmIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhXHg4NWIKICAgIGFceDBiYgoKL2FcUj9iL0ksYnNyPXVuaWNvZGUKICAgIGFccmIKICAgIGFcbmIKICAgIGFcclxuYgogICAgYVx4ODViCiAgICBhXHgwYmIKCi9hXFJ7Miw0fWIvSSxic3I9YW55Y3JsZgogICAgYVxyXG5cbmIKICAgIGFcblxyXHJiCiAgICBhXHJcblxyXG5cclxuXHJcbmIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhXHg4NVx4ODViCiAgICBhXHgwYlx4MGJiCgovYVxSezIsNH1iL0ksYnNyPXVuaWNvZGUKICAgIGFcclxyYgogICAgYVxuXG5cbmIKICAgIGFcclxuXG5cclxyYgogICAgYVx4ODVceDg1YgogICAgYVx4MGJceDBiYgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFcclxyXHJcclxyYgoKLygqQlNSX0FOWUNSTEYpYVxSYi9JCiAgICBhXG5iCiAgICBhXHJiCgovKCpCU1JfVU5JQ09ERSlhXFJiL0kKICAgIGFceDg1YgoKLygqQlNSX0FOWUNSTEYpKCpDUkxGKWFcUmIvSQogICAgYVxuYgogICAgYVxyYgoKLygqQ1JMRikoKkJTUl9VTklDT0RFKWFcUmIvSQogICAgYVx4ODViCgovKCpDUkxGKSgqQlNSX0FOWUNSTEYpKCpDUilhYi9JCgovKD88YT4pKD8mKS8KCi8oPzxhYmM+KSg/JmEpLwoKLyg/PGE+KSg/JmFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhKS8KCi8oPystYSkvCgovKD8tK2EpLwoKLyg/KC0xKSkvCgovKD8oKzEwKSkvCgovKD8oMTApKS8KCi8oPygrMikpKCkoKS8KCi8oPygyKSkoKSgpLwoKL1xrJycvCgovXGs8Pi8KCi9ca3t9LwoKL1xrLwoKL1xrYWJjLwoKLyg/UD0pLwoKLyg/UD4pLwoKL1tbOmZvbzpdXS8KCi9bWzoxMjM0Ol1dLwoKL1tbOmZcb286XV0vCgovW1s6IDpdXS8KCi9bWzouLi46XV0vCgovW1s6bFxvd2VyOl1dLwoKL1tbOmFiY1w6XV0vCgovW2FiY1s6eFxdcHFyOl1dLwoKL1tbOmFcZHo6XV0vCgovKF4oYXxiXGc8LTEnYykpLwoKL14oPysxKSg/PGE+eHx5KXswfXovCiAgICB4enh4CiAgICB5enl5Clw9IEV4cGVjdCBubyBtYXRjaAogICAgeHh6CgovKFwzKShcMSkoYSkvClw9IEV4cGVjdCBubyBtYXRjaAogICAgY2F0CgovKFwzKShcMSkoYSkvYWxsb3dfZW1wdHlfY2xhc3MsbWF0Y2hfdW5zZXRfYmFja3JlZixkdXBuYW1lcwogICAgY2F0CgovVEFdLwogICAgVGhlIEFDVEFdIGNvbWVzCgovVEFdL2FsbG93X2VtcHR5X2NsYXNzLG1hdGNoX3Vuc2V0X2JhY2tyZWYsZHVwbmFtZXMKICAgIFRoZSBBQ1RBXSBjb21lcwoKLyg/MilbXWEoKWJdKGFiYykvCiAgICBhYmNiYWJjCgovKD8yKVteXWEoKWJdKGFiYykvCiAgICBhYmNiYWJjCgovKD8xKVtdYSgpYl0oYWJjKS8KICAgIGFiY2JhYmMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmNYYWJjCgovKD8xKVteXWEoKWJdKGFiYykvCiAgICBhYmNYYWJjClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJjYmFiYwoKLyg/MilbXWEoKWJdKGFiYykoeHl6KS8KICAgIHh5emJhYmN4eXoKCi8oPyZOKVtdYSg/PE4+KV0oPzxNPmFiYykvCiAgIGFiYzxhYmMKCi8oPyZOKVtdYSg/PE4+KV0oYWJjKS8KICAgYWJjPGFiYwoKL2FbXWIvCgovYVteXWIvCgovYVtdYi9hbGxvd19lbXB0eV9jbGFzcyxtYXRjaF91bnNldF9iYWNrcmVmLGR1cG5hbWVzClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWIKCi9hW10rYi9hbGxvd19lbXB0eV9jbGFzcyxtYXRjaF91bnNldF9iYWNrcmVmLGR1cG5hbWVzClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWIKCi9hW10qK2IvYWxsb3dfZW1wdHlfY2xhc3MsbWF0Y2hfdW5zZXRfYmFja3JlZixkdXBuYW1lcwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiCgovYVteXWIvYWxsb3dfZW1wdHlfY2xhc3MsbWF0Y2hfdW5zZXRfYmFja3JlZixkdXBuYW1lcwogICAgYVhiCiAgICBhXG5iClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWIKCi9hW15dK2IvYWxsb3dfZW1wdHlfY2xhc3MsbWF0Y2hfdW5zZXRfYmFja3JlZixkdXBuYW1lcwogICAgYVhiCiAgICBhXG5YXG5YYgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiCgovYSg/ISliL0IKCi8oPyEpP2EvQgogICAgYWIKCi9hKCpGQUlMKStiLwoKLyhhYmN8cHFyfDEyMyl7MH1beHl6XS9JCgovKD8oPz0uKmIpYnxeKS9JLGF1dG9fY2FsbG91dAogICBhZGMKICAgYWJjCgovKD8oPz1iKS4qYnxeZCkvSQoKLyg/KD89LipiKS4qYnxeZCkvSQoKL3h5ei9hdXRvX2NhbGxvdXQKICB4eXoKICBhYmN4eXoKXD0gRXhwZWN0IG5vIG1hdGNoCiAgYWJjCiAgYWJjeHlwcXIKCi94eXovYXV0b19jYWxsb3V0LG5vX3N0YXJ0X29wdGltaXplCiAgYWJjeHl6Clw9IEV4cGVjdCBubyBtYXRjaAogIGFiYwogIGFiY3h5cHFyCgovKCpOT19TVEFSVF9PUFQpeHl6L2F1dG9fY2FsbG91dAogIGFiY3h5egoKLygqTk9fQVVUT19QT1NTRVNTKWErYi9CCgoveHl6L2F1dG9fY2FsbG91dCxub19zdGFydF9vcHRpbWl6ZQogIGFiY3h5egoKL14iKCg/KD89W2FdKVteIl0pfGIpKiIkL2F1dG9fY2FsbG91dAogICAgImFiIgoKL14iKCg/KD89W2FdKVteIl0pfGIpKiIkLwogICAgImFiIgoKL15YKD81KShhKSg/fChiKXwocSkpKGMpKGQpWS8KICAgIFhZYWJjZFkKCi9eWCg/Jk4pKGEpKD98KGIpfChxKSkoYykoZCkoPzxOPlkpLwogICAgWFlhYmNkWQoKL1hhezIsNH1iLwogICAgWFw9cHMKICAgIFhhXD1wcwogICAgWGFhXD1wcwogICAgWGFhYVw9cHMKICAgIFhhYWFhXD1wcwoKL1hhezIsNH0/Yi8KICAgIFhcPXBzCiAgICBYYVw9cHMKICAgIFhhYVw9cHMKICAgIFhhYWFcPXBzCiAgICBYYWFhYVw9cHMKCi9YYXsyLDR9K2IvCiAgICBYXD1wcwogICAgWGFcPXBzCiAgICBYYWFcPXBzCiAgICBYYWFhXD1wcwogICAgWGFhYWFcPXBzCgovWFxkezIsNH1iLwogICAgWFw9cHMKICAgIFgzXD1wcwogICAgWDMzXD1wcwogICAgWDMzM1w9cHMKICAgIFgzMzMzXD1wcwoKL1hcZHsyLDR9P2IvCiAgICBYXD1wcwogICAgWDNcPXBzCiAgICBYMzNcPXBzCiAgICBYMzMzXD1wcwogICAgWDMzMzNcPXBzCgovWFxkezIsNH0rYi8KICAgIFhcPXBzCiAgICBYM1w9cHMKICAgIFgzM1w9cHMKICAgIFgzMzNcPXBzCiAgICBYMzMzM1w9cHMKCi9YXER7Miw0fWIvCiAgICBYXD1wcwogICAgWGFcPXBzCiAgICBYYWFcPXBzCiAgICBYYWFhXD1wcwogICAgWGFhYWFcPXBzCgovWFxEezIsNH0/Yi8KICAgIFhcPXBzCiAgICBYYVw9cHMKICAgIFhhYVw9cHMKICAgIFhhYWFcPXBzCiAgICBYYWFhYVw9cHMKCi9YXER7Miw0fStiLwogICAgWFw9cHMKICAgIFhhXD1wcwogICAgWGFhXD1wcwogICAgWGFhYVw9cHMKICAgIFhhYWFhXD1wcwoKL1hbYWJjXXsyLDR9Yi8KICAgIFhcPXBzCiAgICBYYVw9cHMKICAgIFhhYVw9cHMKICAgIFhhYWFcPXBzCiAgICBYYWFhYVw9cHMKCi9YW2FiY117Miw0fT9iLwogICAgWFw9cHMKICAgIFhhXD1wcwogICAgWGFhXD1wcwogICAgWGFhYVw9cHMKICAgIFhhYWFhXD1wcwoKL1hbYWJjXXsyLDR9K2IvCiAgICBYXD1wcwogICAgWGFcPXBzCiAgICBYYWFcPXBzCiAgICBYYWFhXD1wcwogICAgWGFhYWFcPXBzCgovWFteYV17Miw0fWIvCiAgICBYXD1wcwogICAgWHpcPXBzCiAgICBYenpcPXBzCiAgICBYenp6XD1wcwogICAgWHp6enpcPXBzCgovWFteYV17Miw0fT9iLwogICAgWFw9cHMKICAgIFh6XD1wcwogICAgWHp6XD1wcwogICAgWHp6elw9cHMKICAgIFh6enp6XD1wcwoKL1hbXmFdezIsNH0rYi8KICAgIFhcPXBzCiAgICBYelw9cHMKICAgIFh6elw9cHMKICAgIFh6enpcPXBzCiAgICBYenp6elw9cHMKCi8oWSlYXDF7Miw0fWIvCiAgICBZWFw9cHMKICAgIFlYWVw9cHMKICAgIFlYWVlcPXBzCiAgICBZWFlZWVw9cHMKICAgIFlYWVlZWVw9cHMKCi8oWSlYXDF7Miw0fT9iLwogICAgWVhcPXBzCiAgICBZWFlcPXBzCiAgICBZWFlZXD1wcwogICAgWVhZWVlcPXBzCiAgICBZWFlZWVlcPXBzCgovKFkpWFwxezIsNH0rYi8KICAgIFlYXD1wcwogICAgWVhZXD1wcwogICAgWVhZWVw9cHMKICAgIFlYWVlZXD1wcwogICAgWVhZWVlZXD1wcwoKL1wrK1xLWnxcZCtYfDkrWS9zdGFydGNoYXIKICAgICsrKysxMjM5OTlcPXBzCiAgICArKysrMTIzOTk5WVw9cHMKICAgICsrKytaMTIzNFw9cHMKCi9aKCpGKS8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBaXD1wcwogICAgWkFcPXBzCgovWig/ISkvClw9IEV4cGVjdCBubyBtYXRjaAogICAgWlw9cHMKICAgIFpBXD1wcwoKL2RvZyhzYm9keSk/LwogICAgZG9nc1w9cHMKICAgIGRvZ3NcPXBoCgovZG9nKHNib2R5KT8/LwogICAgZG9nc1w9cHMKICAgIGRvZ3NcPXBoCgovZG9nfGRvZ3Nib2R5LwogICAgZG9nc1w9cHMKICAgIGRvZ3NcPXBoCgovZG9nc2JvZHl8ZG9nLwogICAgZG9nc1w9cHMKICAgIGRvZ3NcPXBoCgovXGJ0aGUgY2F0XGIvCiAgICB0aGUgY2F0XD1wcwogICAgdGhlIGNhdFw9cGgKCi9hYmMvCiAgIGFiY1w9cHMKICAgYWJjXD1waAoKL2FiY1xLMTIzL3N0YXJ0Y2hhcgogICAgeHl6YWJjMTIzcHFyCiAgICB4eXphYmMxMlw9cHMKICAgIHh5emFiYzEyXD1waAoKLyg/PD1hYmMpMTIzLwogICAgeHl6YWJjMTIzcHFyCiAgICB4eXphYmMxMlw9cHMKICAgIHh5emFiYzEyXD1waAoKL1xiYWJjXGIvCiAgICArKythYmMrKysKICAgICsrK2FiXD1wcwogICAgKysrYWJcPXBoCgovKD8md29yZCkoPyZlbGVtZW50KSg/KERFRklORSkoPzxlbGVtZW50PjxbXm1dW14+XT5bXjxdKSg/PHdvcmQ+XHcqKykpL0IKCi8oPyZ3b3JkKSg/JmVsZW1lbnQpKD8oREVGSU5FKSg/PGVsZW1lbnQ+PFteXGRdW14+XT5bXjxdKSg/PHdvcmQ+XHcqKykpL0IKCi8oYWIpKHgoeSl6KGNkKCpBQ0NFUFQpKSlwcS9CCgovYWJjXEsvYWZ0ZXJ0ZXh0LHN0YXJ0Y2hhcgogICAgYWJjZGVmCiAgICBhYmNkZWZcPW5vdGVtcHR5X2F0c3RhcnQKICAgIHh5emFiY2RlZlw9bm90ZW1wdHlfYXRzdGFydApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiY2RlZlw9bm90ZW1wdHkKICAgIHh5emFiY2RlZlw9bm90ZW1wdHkKCi9eKD86KD89YWJjKXxhYmNcSykvYWZ0ZXJ0ZXh0LHN0YXJ0Y2hhcgogICAgYWJjZGVmCiAgICBhYmNkZWZcPW5vdGVtcHR5X2F0c3RhcnQKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmNkZWZcPW5vdGVtcHR5CgovYT9iPy9hZnRlcnRleHQKICAgIHh5egogICAgeHl6YWJjCiAgICB4eXphYmNcPW5vdGVtcHR5CiAgICB4eXphYmNcPW5vdGVtcHR5X2F0c3RhcnQKICAgIHh5elw9bm90ZW1wdHlfYXRzdGFydApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHh5elw9bm90ZW1wdHkKCi9eYT9iPy9hZnRlcnRleHQKICAgIHh5egogICAgeHl6YWJjClw9IEV4cGVjdCBubyBtYXRjaAogICAgeHl6YWJjXD1ub3RlbXB0eQogICAgeHl6YWJjXD1ub3RlbXB0eV9hdHN0YXJ0CiAgICB4eXpcPW5vdGVtcHR5X2F0c3RhcnQKICAgIHh5elw9bm90ZW1wdHkKCi9eKD88bmFtZT5hfGJcZzxuYW1lPmMpLwogICAgYWFhYQogICAgYmFjeHh4CiAgICBiYmFjY3h4eAogICAgYmJiYWNjY3h4CgovXig/PG5hbWU+YXxiXGcnbmFtZSdjKS8KICAgIGFhYWEKICAgIGJhY3h4eAogICAgYmJhY2N4eHgKICAgIGJiYmFjY2N4eAoKL14oYXxiXGc8MT5jKS8KICAgIGFhYWEKICAgIGJhY3h4eAogICAgYmJhY2N4eHgKICAgIGJiYmFjY2N4eAoKL14oYXxiXGcnMSdjKS8KICAgIGFhYWEKICAgIGJhY3h4eAogICAgYmJhY2N4eHgKICAgIGJiYmFjY2N4eAoKL14oYXxiXGcnLTEnYykvCiAgICBhYWFhCiAgICBiYWN4eHgKICAgIGJiYWNjeHh4CiAgICBiYmJhY2NjeHgKCi8oXihhfGJcZzwtMT5jKSkvCiAgICBhYWFhCiAgICBiYWN4eHgKICAgIGJiYWNjeHh4CiAgICBiYmJhY2NjeHgKCi8oPy1pOlxnPG5hbWU+KSg/aTooPzxuYW1lPmEpKS8KICAgIFhhYVgKICAgIFhBQVgKCi8oP2k6XGc8bmFtZT4pKD8taTooPzxuYW1lPmEpKS8KICAgIFhhYVgKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYQUFYCgovKD8taTpcZzwrMT4pKD9pOihhKSkvCiAgICBYYWFYCiAgICBYQUFYCgovKD89KD88cmVnZXg+KD8jc2ltcGxlc3ludGF4KVwkKD88bmFtZT5bYS16QS1aX1x4ezdmfS1ceHtmZn1dW2EtekEtWjAtOV9ceHs3Zn0tXHh7ZmZ9XSopKD86XFsoPzxpbmRleD5bYS16QS1aMC05X1x4ezdmfS1ceHtmZn1dK3xcJFxnPG5hbWU+KVxdfC0+XGc8bmFtZT4oXCguKj9cKSk/KT98KD8jc2ltcGxlIHN5bnRheCB3aXRoYnJhY2VzKVwkXHsoPzpcZzxuYW1lPig/PGluZGljZXM+XFsoPzpcZzxpbmRleD58Jyg/OlxcLnxbXidcXF0pKid8Iig/OlxnPHJlZ2V4PnxcXC58W14iXFxdKSoiKVxdKT98XGc8Y29tcGxleD58XCRce1xnPGNvbXBsZXg+XH0pXH18KD8jY29tcGxleHN5bnRheClceyg/PGNvbXBsZXg+XCQoPzxzZWdtZW50PlxnPG5hbWU+KFxnPGluZGljZXM+KnxcKC4qP1wpKT8pKD86LT5cZzxzZWdtZW50PikqfFwkXGc8Y29tcGxleD58XCRce1xnPGNvbXBsZXg+XH0pXH0pKVx7LwoKLyg/PG4+YXxifGMpXGc8bj4qLwogICBhYmMKICAgYWNjY2NiYmIKCi9eWCg/NykoYSkoP3woYil8KHEpKHIpKHMpKShjKShkKShZKS8KICAgIFhZYWJjZFkKCi8oPzw9Yig/MSl8enp6KShhKS8KICAgIHhiYWF4CiAgICB4enp6YXgKCi8oYSkoPzw9YlwxKS8KCi8oYSkoPzw9YisoPzEpKS8KCi8oYSspKD88PWIoPzEpKS8KCi8oYSg/PD1iKD8xKSkpLwoKLyg/PD1iKD8xKSl4eXovCgovKD88PWIoPzEpKXh5eihiKylwcXJzdHV2ZXcvCgovKGF8YmMpXDEvSQoKLyhhfGJjKVwxezIsM30vSQoKLyhhfGJjKSg/MSkvSQoKLyhhfGJcMSkoYXxiXDEpL0kKCi8oYXxiXDEpezJ9L0kKCi8oYXxiYmJiXDEpKGF8YmJiYlwxKS9JCgovKGF8YmJiYlwxKXsyfS9JCgovXkZyb20gKyhbXiBdKykgK1thLXpBLVpdW2EtekEtWl1bYS16QS1aXSArW2EtekEtWl1bYS16QS1aXVthLXpBLVpdICtbMC05XT9bMC05XSArWzAtOV1bMC05XTpbMC05XVswLTldL0kKCi88dHIoW1x3XFdcc1xkXVtePD5dezAsfSk+PFREKFtcd1xXXHNcZF1bXjw+XXswLH0pPihbXGRdezAsfVwuKSguKikoKDxCUj4oW1x3XFdcc1xkXVtePD5dezAsfSl8W1xzXXswLH0pKTxcL2E+PFwvVEQ+PFREKFtcd1xXXHNcZF1bXjw+XXswLH0pPihbXHdcV1xzXGRdW148Pl17MCx9KTxcL1REPjxURChbXHdcV1xzXGRdW148Pl17MCx9KT4oW1x3XFdcc1xkXVtePD5dezAsfSk8XC9URD48XC9UUj4vSWlzCgoiKD8+LiovKWZvbyJJCgovKD8oPz1bXmEtel0rW2Etel0pICBcZHsyfS1bYS16XXszfS1cZHsyfSAgfCAgXGR7Mn0tXGR7Mn0tXGR7Mn0gKSAvSXgKCi8oPzooPzooPzooPzooPzooPzooPzooPzooPzooYXxifGMpKSkpKSkpKSkpL0lpCgovKD86Y3xkKSg/OikoPzphYWFhYWFhYSg/OikoPzpiYmJiYmJiYikoPzpiYmJiYmJiYig/OikpKD86YmJiYmJiYmIoPzopKD86YmJiYmJiYmIpKSkvSQoKLzxhW1xzXStocmVmW1xzXSo9W1xzXSogICAgICAgICAgIyBmaW5kIDxhIGhyZWY9CiAoW1wiXCddKT8gICAgICAgICAgICAgICAgICAgICAgICMgZmluZCBzaW5nbGUgb3IgZG91YmxlIHF1b3RlCiAoPygxKSAoLio/KVwxIHwgKFteXHNdKykpICAgICAgICMgaWYgcXVvdGUgZm91bmQsIG1hdGNoIHVwIHRvIG5leHQgbWF0Y2hpbmcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBxdW90ZSwgb3RoZXJ3aXNlIG1hdGNoIHVwIHRvIG5leHQgc3BhY2UKL0lpc3gKCi9eKD8hOikgICAgICAgICAgICAgICAgICAgICAgICMgY29sb24gZGlzYWxsb3dlZCBhdCBzdGFydAogICg/OiAgICAgICAgICAgICAgICAgICAgICAgICAjIHN0YXJ0IG9mIGl0ZW0KICAgICg/OiBbMC05YS1mXXsxLDR9IHwgICAgICAgIyAxLTQgaGV4IGRpZ2l0cyBvcgogICAgKD8oMSkwIHwgKCkgKSApICAgICAgICAgICAjIGlmIG51bGwgcHJldmlvdXNseSBtYXRjaGVkLCBmYWlsOyBlbHNlIG51bGwKICAgIDogICAgICAgICAgICAgICAgICAgICAgICAgIyBmb2xsb3dlZCBieSBjb2xvbgogICl7MSw3fSAgICAgICAgICAgICAgICAgICAgICAjIGVuZCBpdGVtOyAxLTcgb2YgdGhlbSByZXF1aXJlZAogIFswLTlhLWZdezEsNH0gJCAgICAgICAgICAgICAjIGZpbmFsIGhleCBudW1iZXIgYXQgZW5kIG9mIHN0cmluZwogICg/KDEpfC4pICAgICAgICAgICAgICAgICAgICAjIGNoZWNrIHRoYXQgdGhlcmUgd2FzIGFuIGVtcHR5IGNvbXBvbmVudAogIC9JaXgKCi8oP3woPzxhPkEpfCg/PGE+QikpL0kKICAgIEFCXD1jb3B5PWEKICAgIEJBXD1jb3B5PWEKCi8oP3woPzxhPkEpfCg/PGI+QikpLwoKLyg/OmEoPzxxdW90ZT4gKD88YXBvc3Ryb3BoZT4nKXwoPzxyZWFscXVvdGU+IikpIHwKICAgIGIoPzxxdW90ZT4gKD88YXBvc3Ryb3BoZT4nKXwoPzxyZWFscXVvdGU+IikpICkKICAgICg/KCdxdW90ZScpW2Etel0rfFswLTldKykvSXgsZHVwbmFtZXMKICAgIGEiYWFhYWEKICAgIGIiYWFhYWEKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBiIjExMTExCiAgICBhIjExMTExCgovXig/fChhKShiKShjKSg/PEQ+ZCl8KD88RD5lKSkgKD8oJ0QnKVh8WSkvSUJ4LGR1cG5hbWVzCiAgICBhYmNkWAogICAgZVgKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmNkWQogICAgZXkKCi8oPzxBPmEpIChiKShjKSAgKD88QT5kICAoPyhSJkEpJCB8ICg/NCkpICkvSUJ4LGR1cG5hbWVzCiAgICBhYmNkZApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiY2RkZQoKL2FiY2QqLwogICAgeHh4eGFiY2RcPXBzCiAgICB4eHh4YWJjZFw9cGgKCi9hYmNkKi9pCiAgICB4eHh4YWJjZFw9cHMKICAgIHh4eHhhYmNkXD1waAogICAgWFhYWEFCQ0RcPXBzCiAgICBYWFhYQUJDRFw9cGgKCi9hYmNcZCovCiAgICB4eHh4YWJjMVw9cHMKICAgIHh4eHhhYmMxXD1waAoKLyhhKWJjXDEqLwogICAgeHh4eGFiY2FcPXBzCiAgICB4eHh4YWJjYVw9cGgKCi9hYmNbZGVdKi8KICAgIHh4eHhhYmNkZVw9cHMKICAgIHh4eHhhYmNkZVw9cGgKCi8oXDMpKFwxKShhKS9hbGxvd19lbXB0eV9jbGFzcyxtYXRjaF91bnNldF9iYWNrcmVmLGR1cG5hbWVzCiAgICBjYXQKCi8oXDMpKFwxKShhKS9JLGFsbG93X2VtcHR5X2NsYXNzLG1hdGNoX3Vuc2V0X2JhY2tyZWYsZHVwbmFtZXMKICAgIGNhdAoKLyhcMykoXDEpKGEpL0kKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBjYXQKCi9pKD8oREVGSU5FKSg/PHM+YSkpL0kKICAgIGkKCi8oKWkoPygxKWEpL0kKICAgIGlhCgovKD9pKWEoPy1pKWJ8Yy9CCiAgICBYYWJYCiAgICBYQWJYCiAgICBDY0MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYQUJYCgovKD9pKWEoP3MpYnxjL0IKCi8oP2kpYSg/cy1pKWJ8Yy9CCgovXihhYihjXDEpZHx4KXsyfSQvQgogICAgeGFiY3hkCgovXig/JnQpKisoPyhERUZJTkUpKD88dD4uKSkkL0IKCi9eKD8mdCkqKD8oREVGSU5FKSg/PHQ+LikpJC9CCgojIFRoaXMgb25lIGlzIGhlcmUgYmVjYXVzZSBQZXJsIGdpdmVzIHRoZSBtYXRjaCBhcyAiYiIgcmF0aGVyIHRoYW4gImFiIi4gSQojIGJlbGlldmUgdGhpcyB0byBiZSBhIFBlcmwgYnVnLgoKLyg/PmFcS2IpenwoYWIpLwogICAgYWJcPXN0YXJ0Y2hhcgoKLyg/UDxMMT4oP1A8TDI+MHwpfCg/UD5MMikoP1A+TDEpKS8KICAgIGFiY2QKICAgIDBhYmMKCi9hYmMoKk1BUks6KXBxci8KCi9hYmMoKjopcHFyLwoKLygqQ09NTUlUOlgpL0IKCiMgVGhpcyBzaG91bGQsIGFuZCBkb2VzLCBmYWlsLiBJbiBQZXJsLCBpdCBkb2VzIG5vdCwgd2hpY2ggSSB0aGluayBpcyBhCiMgYnVnIGJlY2F1c2UgcmVwbGFjaW5nIHRoZSBCIGluIHRoZSBwYXR0ZXJuIGJ5IChCfEQpIGRvZXMgbWFrZSBpdCBmYWlsLgojIFR1cm5pbmcgb2ZmIFBlcmwncyBvcHRpbWl6YXRpb24gYnkgaW5zZXJ0aW5nICg/P3siIn0pIGFsc28gbWFrZXMgaXQgZmFpbC4KCi9BKCpDT01NSVQpQi9hZnRlcnRleHQsbWFyawpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFDQUJYCgojIFRoZXNlIHNob3VsZCBiZSBkaWZmZXJlbnQsIGJ1dCBpbiBQZXJsIHRoZXkgYXJlIG5vdCwgd2hpY2ggSSB0aGluawojIGlzIGEgYnVnIGluIFBlcmwuCgovQSgqVEhFTilCfEEoKlRIRU4pQy9tYXJrCiAgICBBQwoKL0EoKlBSVU5FKUJ8QSgqUFJVTkUpQy9tYXJrClw9IEV4cGVjdCBubyBtYXRjaAogICAgQUMKCiMgTWFyayBuYW1lcyBjYW4gYmUgZHVwbGljYXRlZC4gUGVybCBkb2Vzbid0IGdpdmUgYSBtYXJrIGZvciB0aGlzIG9uZSwKIyB0aG91Z2ggUENSRTIgZG9lcy4KCi9eQSgqOkEpQnxeWCgqOkEpWS9tYXJrClw9IEV4cGVjdCBubyBtYXRjaAogICAgWEFRUQoKIyBDT01NSVQgYXQgdGhlIHN0YXJ0IG9mIGEgcGF0dGVybiBzaG91bGQgYmUgdGhlIHNhbWUgYXMgYW4gYW5jaG9yLiBQZXJsCiMgb3B0aW1pemF0aW9ucyBkZWZlYXQgdGhpcy4gU28gZG9lcyB0aGUgUENSRTIgb3B0aW1pemF0aW9uIHVubGVzcyB3ZSBkaXNhYmxlCiMgaXQuCgovKCpDT01NSVQpQUJDLwogICAgQUJDREVGRwoKLygqQ09NTUlUKUFCQy9ub19zdGFydF9vcHRpbWl6ZQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIERFRkdBQkMKCi9eKGFiIChjKygqVEhFTiljZCkgfCB4eXopL3gKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmNjY2QKCi9eKGFiIChjKygqUFJVTkUpY2QpIHwgeHl6KS94Clw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJjY2NkCgovXihhYiAoYysoKkZBSUwpY2QpIHwgeHl6KS94Clw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJjY2NkCgojIFBlcmwgZ2V0cyBzb21lIG9mIHRoZXNlIHdyb25nCgovKD8+LigqQUNDRVBUKSkqPzUvCiAgICBhYmNkZQoKLyguKCpBQ0NFUFQpKSo/NS8KICAgIGFiY2RlCgovKC4oKkFDQ0VQVCkpNS8KICAgIGFiY2RlCgovKC4oKkFDQ0VQVCkpKjUvCiAgICBhYmNkZQoKL0FcTkIuL0IKICAgIEFDQkQKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBBXG5CCiAgICBBQ0JcbgoKL0FcTkIuL0JzCiAgICBBQ0JECiAgICBBQ0JcbgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFcbkIKCi9BXE5CL25ld2xpbmU9Y3JsZgogICAgQVxuQgogICAgQVxyQgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFcclxuQgoKL1xSK2IvQgoKL1xSK1xuL0IKCi9cUitcZC9CCgovXGQqXFIvQgoKL1xzKlxSL0IKICAgIFx4MjBceDBhCiAgICBceDIwXHgwZAogICAgXHgyMFx4MGRceDBhCgovXFMqXFIvQgogICAgYVx4MGEKCi9YXGgqXFIvQgogICAgWFx4MjBceDBhCgovWFxIKlxSL0IKICAgIFhceDBkXHgwYQoKL1hcSCtcUi9CCiAgICBYXHgwZFx4MGEKCi9YXEgrK1xSL0IKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYXHgwZFx4MGEKCi8oPzw9YWJjKWRlZi8KICAgIGFiY1w9cGgKCi9hYmMkLwogICAgYWJjCiAgICBhYmNcPXBzCiAgICBhYmNcPXBoCgovYWJjJC9tCiAgICBhYmMKICAgIGFiY1xuCiAgICBhYmNcPXBoCiAgICBhYmNcblw9cGgKICAgIGFiY1w9cHMKICAgIGFiY1xuXD1wcwoKL2FiY1x6LwogICAgYWJjCiAgICBhYmNcPXBzCiAgICBhYmNcPXBoCgovYWJjXFovCiAgICBhYmMKICAgIGFiY1w9cHMKICAgIGFiY1w9cGgKCi9hYmNcYi8KICAgIGFiYwogICAgYWJjXD1wcwogICAgYWJjXD1waAoKL2FiY1xCLwogICAgYWJjXD1wcwogICAgYWJjXD1waApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiYwoKLy4rLwpcPSBCYWQgb2Zmc2V0cwogICAgYWJjXD1vZmZzZXQ9NAogICAgYWJjXD1vZmZzZXQ9LTQKXD0gVmFsaWQgZGF0YQogICAgYWJjXD1vZmZzZXQ9MAogICAgYWJjXD1vZmZzZXQ9MQogICAgYWJjXD1vZmZzZXQ9MgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiY1w9b2Zmc2V0PTMKCi9eXGPEoy8KCi8oP1A8YWJuPig/UD1hYm4peHh4KS9CCgovKGFcMXopL0IKCi8oP1A8YWJuPig/UD1hYm4pKD88YmFkc3R1Znh4eCkvQgoKLyg/UDxhYm4+KD9QPWF4bil4eHgpL0IKCi8oP1A8YWJuPig/UD1heG4peHh4KSg/PGF4bj55eSkvQgoKIyBUaGVzZSB0ZXN0cyBhcmUgaGVyZSBiZWNhdXNlIFBlcmwgZ2V0cyB0aGUgZmlyc3Qgb25lIHdyb25nLgoKLyhcUiopKC4pL3MKICAgIFxyXG4KICAgIFxyXHJcblxuXHIKICAgIFxyXHJcblxuXHJcbgoKLyhcUikqKC4pL3MKICAgIFxyXG4KICAgIFxyXHJcblxuXHIKICAgIFxyXHJcblxuXHJcbgoKLygoPz5cclxufFxufFx4MGJ8XGZ8XHJ8XHg4NSkqKSguKS9zCiAgICBcclxuCiAgICBcclxyXG5cblxyCiAgICBcclxyXG5cblxyXG4KCiMgLS0tLS0tLS0tLS0tLQoKL15hYmMkL0IKCi9eYWJjJC9CbQoKL14oYSkqKyhcdykvCiAgICBhYWFhWApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYWEKCi9eKD86YSkqKyhcdykvCiAgICBhYWFhWApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYWEKCi8oYSkrKzEyMzQvSUIKCi8oW2FiY10pKysxMjM0L0kKCi8oPzw9KGFiYykrKVgvCgovKF5hYikvSQoKLyheYWIpKysvSQoKLyheYWJ8XikrL0kKCi8oXmFifF4pKysvSQoKLyg/Ol5hYikvSQoKLyg/Ol5hYikrKy9JCgovKD86XmFifF4pKy9JCgovKD86XmFifF4pKysvSQoKLyguKmFiKS9JCgovKC4qYWIpKysvSQoKLyguKmFifC4qKSsvSQoKLyguKmFifC4qKSsrL0kKCi8oPzouKmFiKS9JCgovKD86LiphYikrKy9JCgovKD86LiphYnwuKikrL0kKCi8oPzouKmFifC4qKSsrL0kKCi8oPz1hKVtiY2RdL0kKCi8oKD89YSkpW2JjZF0vSQoKLygoPz1hKSkrW2JjZF0vSQoKLygoPz1hKSkrK1tiY2RdL0kKCi8oPz1hKylbYmNkXS9JaQoKLyg/PWErPylbYmNkXS9JaQoKLyg/PWErKylbYmNkXS9JaQoKLyg/PWF7M30pW2JjZF0vSWkKCi8oYWJjKVwxKy8KCiMgUGVybCBkb2Vzbid0IGdldCB0aGVzZSByaWdodCBJTU8gKHRoZSAzcmQgaXMgUENSRTItc3BlY2lmaWMpCgovKD8xKSg/OihiKCpBQ0NFUFQpKSl7MH0vCiAgICBiCgovKD8xKSg/OihiKCpBQ0NFUFQpKSl7MH1jLwogICAgYmMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBiCgovKD8xKSg/OigoKkFDQ0VQVCkpKXswfWMvCiAgICBjCiAgICBjXD1ub3RlbXB0eQoKL14uKj8oPyg/PWEpYXxiKCpUSEVOKWMpLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGJhCgovXi4qPyg/KD89YSlhfGJjKS8KICAgIGJhCgovXi4qPyg/KD89YSlhKCpUSEVOKWJ8YykvClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWMKCi9eLio/KD8oPz1hKWEoKlRIRU4pYiljLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFjCgovXi4qPyhhKCpUSEVOKWIpYy8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYWJjCgovXi4qPyAoPzEpIGMgKD8oREVGSU5FKShhKCpUSEVOKWIpKS94CiAgICBhYWJjCgovXi4qPyhhKCpUSEVOKWJ8eiljLwogICAgYWFiYwoKL14uKj8oenxhKCpUSEVOKWIpYy8KICAgIGFhYmMKCiMgVGhlc2UgYXJlIGhlcmUgYmVjYXVzZSB0aGV5IGFyZSBub3QgUGVybC1jb21wYXRpYmxlOyB0aGUgc3R1ZHlpbmcgbWVhbnMgdGhlCiMgbWFyayBpcyBub3Qgc2Vlbi4KCi8oKk1BUks6QSkoKlNLSVA6QikoQ3xYKS9tYXJrCiAgICBDClw9IEV4cGVjdCBubyBtYXRjaAogICAgRAoKLygqOkEpQSsoKlNLSVA6QSkoQnxaKS9tYXJrClw9IEV4cGVjdCBubyBtYXRjaAogICAgQUFBQwoKIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoiKD89YSooKkFDQ0VQVCliKWMiCiAgICBjCiAgICBjXD1ub3RlbXB0eQoKLyg/MSljKD8oREVGSU5FKSgoKkFDQ0VQVCliKSkvCiAgICBjCiAgICBjXD1ub3RlbXB0eQoKLyg/PigqQUNDRVBUKWIpYy8KICAgIGMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBjXD1ub3RlbXB0eQoKLyg/Oig/PihhKSkpK2ElL2FsbGFmdGVydGV4dAogICAgJWFhJQoKLyhhKWJ8YWMvYWxsYWZ0ZXJ0ZXh0CiAgICBhY1w9b3ZlY3Rvcj0xCgovKGEpKGIpeHxhYmMvYWxsYWZ0ZXJ0ZXh0CiAgICAgYWJjXD1vdmVjdG9yPTIKCi8oYSliY3woYSkoYilcMi8KICAgIGFiY1w9b3ZlY3Rvcj0xCiAgICBhYmNcPW92ZWN0b3I9MgogICAgYWJhXD1vdmVjdG9yPTEKICAgIGFiYVw9b3ZlY3Rvcj0yCiAgICBhYmFcPW92ZWN0b3I9MwogICAgYWJhXD1vdmVjdG9yPTQKCi8oPyhERUZJTkUpKGEoPzIpfGIpKGIoPzEpfGEpKSg/Oig/MSl8KD8yKSkvSQoKLyhhKD8yKXxiKShiKD8xKXxhKSg/Oig/MSl8KD8yKSkvSQoKLyhhKD8yKXxiKShiKD8xKXxhKSg/MSkoPzIpL0kKCi8oYWJjKSg/MSkvSQoKLyg/Oihmb28pfChiYXIpfChiYXopKVgvYWxsY2FwdHVyZXMKICAgIGJhemZvb1gKICAgIGZvb2JhemJhclgKICAgIGJhcmZvb1gKICAgIGJhelgKICAgIGZvb2JhcmJhelgKICAgIGJhemZvb1hcPW92ZWN0b3I9MAogICAgYmF6Zm9vWFw9b3ZlY3Rvcj0xCiAgICBiYXpmb29YXD1vdmVjdG9yPTIKICAgIGJhemZvb1hcPW92ZWN0b3I9MwoKLyg/PWFiYyl7M31hYmMvQgoKLyg/PWFiYykrYWJjL0IKCi8oPz1hYmMpKythYmMvQgoKLyg/PWFiYyl7MH14eXovQgoKLyg/PShhKSk/Li9CCgovKD89KGEpKT8/Li9CCgovXig/PShhKSl7MH1iKD8xKS9CCgovKD8oREVGSU5FKShhKSk/Yig/MSkvQgoKL14oPz0oPzEpKT9bYXpdKFthYmNdKWQvQgoKL14oPyFhKXswfVx3Ky9CCgovKD88PShhYmMpKT94eXovQgoKL1s6YVs6YWJjXWI6XS9CCgovXihhKCo6QSkoZHxlKCo6QikpenxhZXEpL2F1dG9fY2FsbG91dAogICAgYWR6CiAgICBhZXoKICAgIGFlcXdlcnR5CgovLigqRikvClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJjXD1waAoKL1xidHlwZVxiXFcqP1xidGV4dFxiXFcqP1xiamF2YXNjcmlwdFxiL0kKCi9cYnR5cGVcYlxXKj9cYnRleHRcYlxXKj9cYmphdmFzY3JpcHRcYnxcYnVybFxiXFcqP1xic2hlbGw6fDxpbnB1dFxiLio/XGJ0eXBlXGJcVyo/XGJpbWFnZVxifFxib25rZXl1cFxiXFcqP1w9L0kKCi9hKCpTS0lQKWN8YigqQUNDRVBUKXwvSSxhZnRlcnRleHQKICAgIGEKCi9hKCpTS0lQKWN8YigqQUNDRVBUKWNkKCpBQ0NFUFQpfHgvSQogICAgYXgKCidhKigqQUNDRVBUKWInYWZ0ZXJ0ZXh0CiAgICBhYmNcPW5vdGVtcHR5X2F0c3RhcnQKICAgIGJiYlw9bm90ZW1wdHlfYXRzdGFydApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFw9bm90ZW1wdHlfYXRzdGFydAoKLygqQUNDRVBUKWEvSSxhZnRlcnRleHQKICAgIGJheAoKL3ooKkFDQ0VQVClhL0ksYWZ0ZXJ0ZXh0CiAgICBiYXh6YngKCi9eKD8+YSspKD8+KHorKSlcdy9CCiAgICBhYWFhenp6emIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYXp6CgovKC4pKFwxfGEoPzIpKS8KICAgIGJhYgoKL1wxfCguKSg/UilcMS8KICAgIGNiYmJjCgovKC4pKCg/KDEpY3xhKXxhKD8yKSkvClw9IEV4cGVjdCBubyBtYXRjaAogICAgYmFhCgovKD9QPGFibj4oP1A9YWJuKXh4eCkvQgoKLyhhXDF6KS9CCgovXmFceDQxei9hbHRfYnN1eCxhbGxvd19lbXB0eV9jbGFzcyxtYXRjaF91bnNldF9iYWNrcmVmLGR1cG5hbWVzCiAgICBhQXoKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBheDQxegoKL15hW21ceDQxXXovYWx0X2JzdXgsYWxsb3dfZW1wdHlfY2xhc3MsbWF0Y2hfdW5zZXRfYmFja3JlZixkdXBuYW1lcwogICAgYUF6CgovXmFceDF6L2FsdF9ic3V4LGFsbG93X2VtcHR5X2NsYXNzLG1hdGNoX3Vuc2V0X2JhY2tyZWYsZHVwbmFtZXMKICAgIGF4MXoKCi9eYVx1MDA0MXovYWx0X2JzdXgsYWxsb3dfZW1wdHlfY2xhc3MsbWF0Y2hfdW5zZXRfYmFja3JlZixkdXBuYW1lcwogICAgYUF6Clw9IEV4cGVjdCBubyBtYXRjaAogICAgYXUwMDQxegoKL15hW21cdTAwNDFdei9hbHRfYnN1eCxhbGxvd19lbXB0eV9jbGFzcyxtYXRjaF91bnNldF9iYWNrcmVmLGR1cG5hbWVzCiAgICBhQXoKCi9eYVx1MDQxei9hbHRfYnN1eCxhbGxvd19lbXB0eV9jbGFzcyxtYXRjaF91bnNldF9iYWNrcmVmLGR1cG5hbWVzCiAgICBhdTA0MXoKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhQXoKCi9eYVxVMDA0MXovYWx0X2JzdXgsYWxsb3dfZW1wdHlfY2xhc3MsbWF0Y2hfdW5zZXRfYmFja3JlZixkdXBuYW1lcwogICAgYVUwMDQxegpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFBegogICAgCi9eXHV7N2F9L2FsdF9ic3V4CiAgICB1ezdhfQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHpvbyAKCi9eXHV7N2F9L2V4dHJhX2FsdF9ic3V4CiAgICB6b28gCgovKD8oPz1jKWN8ZCkrK1kvQgoKLyg/KD89YyljfGQpKitZL0IKCi9hW1xOQl1jLwogICAgYU5jCgovYVtCLVxOY10vCgovYVtCXE5jXS8KCi8oYSkoPzIpezAsMTk5OX0/KGIpLwoKLyhhKSg/KERFRklORSkoYikpKD8yKXswLDE5OTl9Pyg/MikvCgojIFRoaXMgdGVzdCwgd2l0aCBzb21ldGhpbmcgbW9yZSBjb21wbGljYXRlZCB0aGFuIGluZGl2aWR1YWwgbGV0dGVycywgY2F1c2VzCiMgZGlmZmVyZW50IGJlaGF2aW91ciBpbiBQZXJsLiBQZXJoYXBzIGl0IGRpc2FibGVzIHNvbWUgb3B0aW1pemF0aW9uOyBubyB0YWcgaXMKIyBwYXNzZWQgYmFjayBmb3IgdGhlIGZhaWx1cmVzLCB3aGVyZWFzIGluIFBDUkUyIHRoZXJlIGlzIGEgdGFnLgoKLyhBfFApKCo6QSkoQnxQKSB8IChYfFApKFh8UCkoKjpCKShZfFApL3gsbWFyawogICAgQUFCQwogICAgWFhZWgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFhBUVEKICAgIFhBUVFYWloKICAgIEFYUVFRCiAgICBBWFhRUVEKCiMgUGVybCBkb2Vzbid0IGdpdmUgbWFya3MgZm9yIHRoZXNlLCB0aG91Z2ggaXQgZG9lcyBpZiB0aGUgYWx0ZXJuYXRpdmVzIGFyZQojIHJlcGxhY2VkIGJ5IHNpbmdsZSBsZXR0ZXJzLgoKLyhifHEpKCo6bSlmfGEoKjpuKXcvbWFyawogICAgYXcKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmMKCi8ocXxiKSgqOm0pZnxhKCo6bil3L21hcmsKICAgIGF3Clw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJjCgojIEFmdGVyIGEgcGFydGlhbCBtYXRjaCwgdGhlIGJlaGF2aW91ciBpcyBhcyBmb3IgYSBmYWlsdXJlLgoKL15hKCo6WCliY2RlL21hcmsKICAgYWJjXD1wcwoKIyBUaGVzZSBhcmUgaGVyZSBiZWNhdXNlIFBlcmwgZG9lc24ndCByZXR1cm4gYSBtYXJrLCBleGNlcHQgZm9yIHRoZSBmaXJzdC4KCi8oPz0oKjp4KSkocXwpL2FmdGVydGV4dCxtYXJrCiAgICBhYmMKCi8oPz0oKjp4KSkoKCo6eSlxfCkvYWZ0ZXJ0ZXh0LG1hcmsKICAgIGFiYwoKLyg/PSgqOngpKSg/OigqOnkpcXwpL2FmdGVydGV4dCxtYXJrCiAgICBhYmMKCi8oPz0oKjp4KSkoPz4oKjp5KXF8KS9hZnRlcnRleHQsbWFyawogICAgYWJjCgovKD89YSgqOngpKSg/IWEoKjp5KWMpL2FmdGVydGV4dCxtYXJrCiAgICBhYgoKLyg/PWEoKjp4KSkoPz1hKCo6eSljfCkvYWZ0ZXJ0ZXh0LG1hcmsKICAgIGFiCgovKC4uKVwxLwogICAgYWJcPXBzCiAgICBhYmFcPXBzCiAgICBhYmFiXD1wcwoKLyguLilcMS9pCiAgICBhYlw9cHMKICAgIGFiQVw9cHMKICAgIGFCQWJcPXBzCgovKC4uKVwxezIsfS8KICAgIGFiXD1wcwogICAgYWJhXD1wcwogICAgYWJhYlw9cHMKICAgIGFiYWJhXD1wcwogICAgYWJhYmFiXD1wcwogICAgYWJhYmFiXD1waAogICAgYWJhYmFiYVw9cHMKICAgIGFiYWJhYmFcPXBoCgovKC4uKVwxezIsfS9pCiAgICBhYlw9cHMKICAgIGFCYVw9cHMKICAgIGFCQWJcPXBzCiAgICBBYmFCQVw9cHMKICAgIGFiQUJBYlw9cHMKICAgIGFCQWJhQlw9cGgKICAgIGFiQUJhYkFcPXBzCiAgICBhYmFCQUJhXD1waAoKLyguLilcMXsyLH0/eC9pCiAgICBhYlw9cHMKICAgIGFiQVw9cHMKICAgIGFCQWJcPXBzCiAgICBhYmFCQVw9cHMKICAgIGFiQWJhQlw9cHMKICAgIGFiYUJhYkFcPXBzCiAgICBhYkFiQUJhQnhcPXBzCgovXiguLilcMS8KICAgIGFiYVw9cHMKCi9eKC4uKVwxezIsM314LwogICAgYWJhXD1wcwogICAgYWJhYmFcPXBzCiAgICBhYmFiYVw9cGgKICAgIGFiYWJhYngKICAgIGFiYWJhYmFieAoKL14oLi4pXDF7MiwzfT94LwogICAgYWJhXD1wcwogICAgYWJhYmFcPXBzCiAgICBhYmFiYVw9cGgKICAgIGFiYWJhYngKICAgIGFiYWJhYmFieAoKL14oLi4pKFwxezIsM30pYWIvCiAgICBhYmFiYWJhYgoKL15cUi8KICAgIFxyXD1wcwogICAgXHJcPXBoCgovXlxSezIsM314LwogICAgXHJcPXBzCiAgICBcclw9cGgKICAgIFxyXHJcPXBzCiAgICBcclxyXD1waAogICAgXHJcclxyXD1wcwogICAgXHJcclxyXD1waAogICAgXHJccngKICAgIFxyXHJccngKCi9eXFJ7MiwzfT94LwogICAgXHJcPXBzCiAgICBcclw9cGgKICAgIFxyXHJcPXBzCiAgICBcclxyXD1waAogICAgXHJcclxyXD1wcwogICAgXHJcclxyXD1waAogICAgXHJccngKICAgIFxyXHJccngKCi9eXFI/eC8KICAgIFxyXD1wcwogICAgXHJcPXBoCiAgICB4CiAgICBccngKCi9eXFIreC8KICAgIFxyXD1wcwogICAgXHJcPXBoCiAgICBcclxuXD1wcwogICAgXHJcblw9cGgKICAgIFxyeAoKL15hJC9uZXdsaW5lPWNybGYKICAgIGFcclw9cHMKICAgIGFcclw9cGgKCi9eYSQvbSxuZXdsaW5lPWNybGYKICAgIGFcclw9cHMKICAgIGFcclw9cGgKCi9eKGEkfGFccikvbmV3bGluZT1jcmxmCiAgICBhXHJcPXBzCiAgICBhXHJcPXBoCgovXihhJHxhXHIpL20sbmV3bGluZT1jcmxmCiAgICBhXHJcPXBzCiAgICBhXHJcPXBoCgovLi9uZXdsaW5lPWNybGYKICAgIFxyXD1wcwogICAgXHJcPXBoCgovLnsyLDN9L25ld2xpbmU9Y3JsZgogICAgXHJcPXBzCiAgICBcclw9cGgKICAgIFxyXHJcPXBzCiAgICBcclxyXD1waAogICAgXHJcclxyXD1wcwogICAgXHJcclxyXD1waAoKLy57MiwzfT8vbmV3bGluZT1jcmxmCiAgICBcclw9cHMKICAgIFxyXD1waAogICAgXHJcclw9cHMKICAgIFxyXHJcPXBoCiAgICBcclxyXHJcPXBzCiAgICBcclxyXHJcPXBoCgoiQUIoQyhEKSkoRShGKSk/KD8oPz1cMikoPz1cNCkpIgogICAgQUJDREdISVw9b3ZlY3Rvcj0wMQoKIyBUaGVzZSBhcmUgYWxsIHJ1biBhcyByZWFsIG1hdGNoZXMgaW4gdGVzdCAxOyBoZXJlIHdlIGFyZSBqdXN0IGNoZWNraW5nIHRoZQojIHNldHRpbmdzIG9mIHRoZSBhbmNob3JlZCBhbmQgc3RhcnRsaW5lIGJpdHMuCgovKD8+Lio/YSkoPzw9YmEpL0kKCi8oPzouKj9hKSg/PD1iYSkvSQoKLy4qP2EoKlBSVU5FKWIvSQoKLy4qP2EoKlBSVU5FKWIvSXMKCi9eYSgqUFJVTkUpYi9JcwoKLy4qP2EoKlNLSVApYi9JCgovKD8+Lio/YSliL0lzCgovKD8+Lio/YSliL0kKCi8oPz5eYSliL0lzCgovKD8+Lio/KSg/PD0oYWJjZCl8KHd4eXopKS9JCgovKD8+LiopKD88PShhYmNkKXwod3h5eikpL0kKCiIoPz4uKilmb28iSQoKIig/Pi4qPylmb28iSQoKLyg/Pl5hYmMpL0ltCgovKD8+LiphYmMpL0ltCgovKD86LiphYmMpL0ltCgovKD86KGEpKyg/QzEpYmJ8YWEoP0MyKWIpLwogICAgYWFiXD1jYWxsb3V0X2NhcHR1cmUKCi8oPzooYSkrKyg/QzEpYmJ8YWEoP0MyKWIpLwogICAgYWFiXD1jYWxsb3V0X2NhcHR1cmUKCi8oPzooPz4oYSkpKD9DMSliYnxhYSg/QzIpYikvCiAgICBhYWJcPWNhbGxvdXRfY2FwdHVyZQoKLyg/Oig/MSkoP0MxKXh8YWIoP0MyKSkoKGEpKXswfS8KICAgIGFhYlw9Y2FsbG91dF9jYXB0dXJlCgovKD8xKSg/QzEpKChhKSg/QzIpKXswfS8KICAgIGFhYlw9Y2FsbG91dF9jYXB0dXJlCgovKD86KGEpKyg/QzEpYmJ8YWEoP0MyKWIpKysvCiAgICBhYWJcPWNhbGxvdXRfY2FwdHVyZQogICAgYWFiXD1jYWxsb3V0X2NhcHR1cmUsb3ZlY3Rvcj0xCgovKGFiKXh8YWIvCiAgICBhYlw9b3ZlY3Rvcj0wCiAgICBhYlw9b3ZlY3Rvcj0xCgovKD88PTEyMykoKk1BUks6eHgpYWJjL21hcmsKICAgIHh4eHgxMjNhXD1waAogICAgeHh4eDEyM2FcPXBzCgovMTIzXEthYmMvc3RhcnRjaGFyCiAgICB4eHh4MTIzYVw9cGgKICAgIHh4eHgxMjNhXD1wcwoKL14oPyg/PWEpYWF8YmIpL2F1dG9fY2FsbG91dAogICAgYmIKCi8oP0MxKV4oP0MyKSg/KD9DOTkpKD89KD9DMylhKD9DNCkpKD9DNSlhKD9DNilhKD9DNyl8KD9DOCliKD9DOSliKD9DMTApKSg/QzExKS8KICAgIGJiCgojIFBlcmwgc2VlbXMgdG8gaGF2ZSBhIGJ1ZyB3aXRoIHRoaXMgb25lLgoKL2FhYWFhKCpDT01NSVQpKCpQUlVORSlifGErYy8KICAgIGFhYWFhYWMKCiMgSGVyZSBhcmUgc29tZSB0aGF0IFBlcmwgdHJlYXRzIGRpZmZlcmVudGx5IGJlY2F1c2Ugb2YgdGhlIHdheSBpdCBoYW5kbGVzCiMgYmFja3RyYWNraW5nIHZlcmJzLgoKLyg/IWEoKkNPTU1JVCliKWFjfGFkLwogICAgIGFjCiAgICAgYWQKCi9eKD8hYSgqVEhFTilifGFjKS4uLwogICAgIGFkClw9IEV4cGVjdCBubyBtYXRjaAogICAgIGFjCgovXig/PWEoKlRIRU4pYnxhYykvCiAgICBhYwoKL1xBLio/KD86YXxiKCpUSEVOKWMpLwogICAgYmEKCi9cQS4qPyg/OmF8YigqVEhFTiljKSsrLwogICAgYmEKCi9cQS4qPyg/OmF8YigqVEhFTiljfGQpLwogICAgYmEKCi8oPzooYSgqTUFSSzpYKWErKCpTS0lQOlgpYikpezB9KD86KD8xKXxhYWMpLwogICAgYWFjCgovXEEuKj8oYXxiKCpUSEVOKWMpLwogICAgYmEKCi9eKEEoKlRIRU4pQnxBKCpUSEVOKUQpLwogICAgQUQKCi8oPyFiKCpUSEVOKWEpYm58Ym5uLwogICAgYm5uCgovKD8oPz1iKCpTS0lQKWEpYm58Ym5uKS8KICAgIGJubgoKLyg/PWIoKlRIRU4pYXwpYm58Ym5uLwogICAgYm5uCgojIFRoaXMgdGVzdCBjYXVzZXMgYSBzZWdmYXVsdCB3aXRoIFBlcmwgNS4xOC4wCgovXig/PShhKSl7MH1iKD8xKS8KICAgIGJhY2tnYW1tb24KCi8oP3woPzxuPmYpfCg/PG4+YikpL0ksZHVwbmFtZXMKCi8oPzxhPmFiYykoPzxhPnopXGs8YT4oKS9JQixkdXBuYW1lcwoKL2EqW2JjZF0vQgoKL1tiY2RdKmEvQgoKIyBBIGNvbXBsZXRlIHNldCBvZiB0ZXN0cyBmb3IgYXV0by1wb3NzZXNzaWZpY2F0aW9uIG9mIGNoYXJhY3RlciB0eXBlcywgYnV0CiMgb21pdHRpbmcgXEMgYmVjYXVzZSBpdCBtaWdodCBiZSBkaXNhYmxlZCAoaXQgaGFzIGl0cyBvd24gdGVzdHMpLgoKL1xEK1xEIFxEK1xkIFxEK1xTIFxEK1xzIFxEK1xXIFxEK1x3IFxEKy4gXEQrXFIgXEQrXEggXEQrXGggXEQrXFYgXEQrXHYgXEQrXFogXEQrXHogXEQrJC9CeAoKL1xkK1xEIFxkK1xkIFxkK1xTIFxkK1xzIFxkK1xXIFxkK1x3IFxkKy4gXGQrXFIgXGQrXEggXGQrXGggXGQrXFYgXGQrXHYgXGQrXFogXGQrXHogXGQrJC9CeAoKL1xTK1xEIFxTK1xkIFxTK1xTIFxTK1xzIFxTK1xXIFxTK1x3IFxTKy4gXFMrXFIgXFMrXEggXFMrXGggXFMrXFYgXFMrXHYgXFMrXFogXFMrXHogXFMrJC9CeAoKL1xzK1xEIFxzK1xkIFxzK1xTIFxzK1xzIFxzK1xXIFxzK1x3IFxzKy4gXHMrXFIgXHMrXEggXHMrXGggXHMrXFYgXHMrXHYgXHMrXFogXHMrXHogXHMrJC9CeAoKL1xXK1xEIFxXK1xkIFxXK1xTIFxXK1xzIFxXK1xXIFxXK1x3IFxXKy4gXFcrXFIgXFcrXEggXFcrXGggXFcrXFYgXFcrXHYgXFcrXFogXFcrXHogXFcrJC9CeAoKL1x3K1xEIFx3K1xkIFx3K1xTIFx3K1xzIFx3K1xXIFx3K1x3IFx3Ky4gXHcrXFIgXHcrXEggXHcrXGggXHcrXFYgXHcrXHYgXHcrXFogXHcrXHogXHcrJC9CeAoKL1xSK1xEIFxSK1xkIFxSK1xTIFxSK1xzIFxSK1xXIFxSK1x3IFxSKy4gXFIrXFIgXFIrXEggXFIrXGggXFIrXFYgXFIrXHYgXFIrXFogXFIrXHogXFIrJC9CeAoKL1xIK1xEIFxIK1xkIFxIK1xTIFxIK1xzIFxIK1xXIFxIK1x3IFxIKy4gXEgrXFIgXEgrXEggXEgrXGggXEgrXFYgXEgrXHYgXEgrXFogXEgrXHogXEgrJC9CeAoKL1xoK1xEIFxoK1xkIFxoK1xTIFxoK1xzIFxoK1xXIFxoK1x3IFxoKy4gXGgrXFIgXGgrXEggXGgrXGggXGgrXFYgXGgrXHYgXGgrXFogXGgrXHogXGgrJC9CeAoKL1xWK1xEIFxWK1xkIFxWK1xTIFxWK1xzIFxWK1xXIFxWK1x3IFxWKy4gXFYrXFIgXFYrXEggXFYrXGggXFYrXFYgXFYrXHYgXFYrXFogXFYrXHogXFYrJC9CeAoKL1x2K1xEIFx2K1xkIFx2K1xTIFx2K1xzIFx2K1xXIFx2K1x3IFx2Ky4gXHYrXFIgXHYrXEggXHYrXGggXHYrXFYgXHYrXHYgXHYrXFogXHYrXHogXHYrJC9CeAoKLyBhK1xEICBhK1xkICBhK1xTICBhK1xzICBhK1xXICBhK1x3ICBhKy4gIGErXFIgIGErXEggIGErXGggIGErXFYgIGErXHYgIGErXFogIGErXHogIGErJC9CeAoKL1xuK1xEIFxuK1xkIFxuK1xTIFxuK1xzIFxuK1xXIFxuK1x3IFxuKy4gXG4rXFIgXG4rXEggXG4rXGggXG4rXFYgXG4rXHYgXG4rXFogXG4rXHogXG4rJC9CeAoKLyAuK1xEICAuK1xkICAuK1xTICAuK1xzICAuK1xXICAuK1x3ICAuKy4gIC4rXFIgIC4rXEggIC4rXGggIC4rXFYgIC4rXHYgIC4rXFogIC4rXHogIC4rJC9CeAoKLyAuK1xEICAuK1xkICAuK1xTICAuK1xzICAuK1xXICAuK1x3ICAuKy4gIC4rXFIgIC4rXEggIC4rXGggIC4rXFYgIC4rXHYgIC4rXFogIC4rXHogIC4rJC9Cc3gKCi8gXEQrJCAgXGQrJCAgXFMrJCAgXHMrJCAgXFcrJCAgXHcrJCAgXFIrJCAgXEgrJCAgXGgrJCAgXFYrJCBcdiskICBhKyQgICBcbiskICAuKyQgIC4rJC9CbXgKCi8oPz1hKylhKGErKSsrYS9CCgovYSsoYmJ8Y2MpYSsoPzpiYnxjYylhKyg/PmJifGNjKWErKD86YmJ8Y2MpK2ErKGFhKWErKD86YmJ8YWEpL0IKCi9hKyhiYnxjYyk/I2ErKD86YmJ8Y2MpPz8jYSsoPzpiYnxjYyk/KyNhKyg/OmJifGNjKSojYSsoYmJ8Y2MpP2EjYSsoPzphYSk/L0IKCi9hKyg/OmJiKT9hI2ErKD86fHx8KSNhKyg/OnxiKWEjYSsoPzp8fHwpP2EvQgoKL1thYl0qL0IKICAgIGFhYWEKCi9bYWJdKj8vQgogICAgYWFhYQoKL1thYl0/L0IKICAgIGFhYWEKCi9bYWJdPz8vQgogICAgYWFhYQoKL1thYl0rL0IKICAgIGFhYWEKCi9bYWJdKz8vQgogICAgYWFhYQoKL1thYl17MiwzfS9CCiAgICBhYWFhCgovW2FiXXsyLDN9Py9CCiAgICBhYWFhCgovW2FiXXsyLH0vQgogICAgYWFhYQoKL1thYl17Mix9Py9CCiAgICBhYWFhCgovXGQrXHN7MCw1fT1ccypcUz89XHd7MCw0fVxXKi9CCgovW2EtZF17NSwxMn1bZS16MC05XSojW15hLXpdK1tiLXldKmFbMi03XT9bXjAtOWEtel0rL0IKCi9bYS16XSpccyNbIFx0XT9cUyNbYS1jXSpcUyNbQy1HXSs/XGQjWzQtOF0qXEQjWzQtOSxdKlxEI1shJF17MCw1fVx3I1tNLVhmLWxdK1xXI1thLWMsXT9cVy9CCgovYSsoYWF8YmIpKmMjYSooYmJ8Y2MpKmEjYT8oYmJ8Y2MpKmQjW2EtZl0qKGd8aGgpKmYvQgoKL1thLWZdKihnfGhofGkpKmkjW2EteF17NCx9KHl7MCw2fSkqeSNbYS1rXSsobGx8bW0pK24vQgoKL1thLWZdKig/PmdnfGhoKSsjW2EtZl0qKD8+Z2d8aGgpPyNbYS1mXSooPz5nZ3xoaCkqYSNbYS1mXSooPz5nZ3xoaCkqaC9CCgovW2EtY10qZC9JQgoKL1thLWNdK2QvSUIKCi9bYS1jXT9kL0lCCgovW2EtY117NCw2fWQvSUIKCi9bYS1jXXswLDZ9ZC9JQgoKIyBFbmQgb2Ygc3BlY2lhbCBhdXRvLXBvc3Nlc3NpdmUgdGVzdHMKCi9eQVxvezEyMzl9Qi8KICAgIEFcMTIzQgoKL15BXG9CLwoKL15BXHh7enp9Qi8KCi9eQVx4ezEyWi8KCi9eQVx4ey8KCi9bYWJdKysvQixub19hdXRvX3Bvc3Nlc3MKCi9bXmFiXSorL0Isbm9fYXV0b19wb3NzZXNzCgovYXs0fSsvQixub19hdXRvX3Bvc3Nlc3MKCi9hezR9Ky9CaSxub19hdXRvX3Bvc3Nlc3MKCi9bYS1bOmRpZ2l0Ol1dKy8KCi9bQS1bOmRpZ2l0Ol1dKy8KCi9bYS1bLnh4eC5dXSsvCgovW2EtWz14eHg9XV0rLwoKL1thLVsheHh4IV1dKy8KCi9bQS1bIXh4eCFdXSsvCiAgICBBXV1dCgovW2EtXGRdKy8KCi8oPzwwYWJjPnh4KS8KCi8oPyYxYWJjKXh4KD88MWFiYz55KS8KCi8oPzxhYi1jZD54eCkvCgovKD8nMGFiYyd4eCkvCgovKD9QPDBhYmM+eHgpLwoKL1xrPDVnaGo+LwoKL1xrJzVnaGonLwoKL1xrezJmZ2h9LwoKLyg/UD04eXVraSkvCgovXGd7NGRmfS8KCi8oPyYxYWJjKXh4KD88MWFiYz55KS8KCi8oP1A+MWFiYyl4eCg/PDFhYmM+eSkvCgovXGcnM2doJy8KCi9cZzw1Zmc+LwoKLyg/KDw0Z2g+KWFiYykvCgovKD8oJzRnaCcpYWJjKS8KCi8oPyg0Z2gpYWJjKS8KCi8oPyhSJjZ5aClhYmMpLwoKLygoKGFcMil8KGEqKVxnPC0xPikpKmE/L0IKCiMgVGVzdCB0aGUgdWdseSAic3RhcnQgb3IgZW5kIG9mIHdvcmQiIGNvbXBhdGliaWxpdHkgc3ludGF4LgoKL1tbOjw6XV1yZWRbWzo+Ol1dL0IKICAgIGxpdHRsZSByZWQgcmlkaW5nIGhvb2QKICAgIGEgL3JlZC8gdGhpbmcKICAgIHJlZCBpcyBhIGNvbG91cgogICAgcHV0IGl0IGFsbCBvbiByZWQKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBubyByZWR1Y3Rpb24KICAgIEFsZnJlZCBXaW5pZnJlZAoKL1thWzo8Ol1dIHNob3VsZCBnaXZlIGVycm9yLwoKLyg/PWFiXEspL2FmdGVydGV4dAogICAgYWJjZFw9c3RhcnRjaGFyCgovYWJjZC9uZXdsaW5lPWxmLGZpcnN0bGluZQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHh4XG54YWJjZAoKIyBUZXN0IHN0YWNrIGd1YXJkIGV4dGVybmFsIGNhbGxzLgoKLygoKGEpKSkvc3RhY2tndWFyZD0xCgovKCgoYSkpKS9zdGFja2d1YXJkPTIKCi8oKChhKSkpL3N0YWNrZ3VhcmQ9MwoKLygoKCgoYSkpKSkpLwoKIyBFbmQgc3RhY2sgZ3VhcmQgdGVzdHMKCi9eXHcrKD8+XHMqKSg/PD1cdykvQgoKL1xvdGhpbmcvCgovXG97fS8KCi9cb3t3aGF0ZXZlcn0vCgovXHh0aGluZy8KCi9ceHt9LwoKL1x4e3doYXRldmVyfS8KCi9BXDhCLwoKL0FcOUIvCgojIFRoaXMgb25lIGlzIGhlcmUgYmVjYXVzZSBQZXJsIGZhaWxzIHRvIG1hdGNoICIxMiIgZm9yIHRoaXMgcGF0dGVybiB3aGVuIHRoZSAkCiMgaXMgcHJlc2VudC4KCi9eKD8oPz1hYmMpXHd7M306fFxkXGQpJC8KICAgIGFiYzoKICAgIDEyClw9IEV4cGVjdCBubyBtYXRjaAogICAgMTIzCiAgICB4eXoKCiMgUGVybCBnZXRzIHRoaXMgb25lIHdyb25nLCBnaXZpbmcgImEiIGFzIHRoZSBhZnRlciB0ZXh0IGZvciBjYSBhbmQgZmFpbGluZyB0bwojIG1hdGNoIGZvciBjZC4KCi8oPyg/PWFiKWFiKS9hZnRlcnRleHQKICAgIGFieHh4CiAgICBjYQogICAgY2QKCiMgVGhpcyBzaG91bGQgdGVzdCBib3RoIHBhdGhzIGZvciBwcm9jZXNzaW5nIE9QX1JFQ1VSU0UuCgovKD8oUilhK3woP1IpYikvCiAgICBhYWFhYmNkZQogICAgYWFhYWJjZGVcPW92ZWN0b3I9MTAwCgovYSo/Yio/LwogICAgYWIKCi8oKk5PVEVNUFRZKWEqP2IqPy8KICAgIGFiCiAgICBiYQogICAgY2IKCi8oKk5PVEVNUFRZX0FUU1RBUlQpYSo/Yio/L2FmdGVydGV4dAogICAgYWIKICAgIGNkYWIKCi8oPyhWRVJTSU9OPj0xMC4wKXllc3xubykvSQogICAgeWVzbm8KCi8oPyhWRVJTSU9OPj0xMC4wNCl5ZXN8bm8pLwogICAgeWVzbm8KCi8oPyhWRVJTSU9OPTgpeWVzKXszfS9CSSxhZnRlcnRleHQKICAgIHllc25vCgovKD8oVkVSU0lPTj04KXllc3xubyl7M30vSQogICAgeWVzbm9ub25veWVzClw9IEV4cGVjdCBubyBtYXRjaAogICAgeWVzbm8KCi8oPzooPzxWRVJTSU9OPmFiYyl8eHl6KSg/KFZFUlNJT04peWVzfG5vKS9JCiAgICBhYmN5ZXMKICAgIHh5em5vClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJjbm8KICAgIHh5enllcwoKLyg/KFZFUlNJT048MTApeWVzfG5vKS8KCi8oPyhWRVJTSU9OPjEwKXllc3xubykvCgovKD8oVkVSU0lPTj49MTAuMC4wKXllc3xubykvCgovKD8oVkVSU0lPTj0xMC4xMDEpeWVzfG5vKS8KCi9hYmNkL0kKCi9hYmNkL0ksbm9fc3RhcnRfb3B0aW1pemUKCi8ofGFiKSo/ZC9JCiAgIGFiZAogICB4eWQKCi8ofGFiKSo/ZC9JLG5vX3N0YXJ0X29wdGltaXplCiAgIGFiZAogICB4eWQKCi9cazxBPiooPzxBPmFhKSg/PEE+YmIpL21hdGNoX3Vuc2V0X2JhY2tyZWYsZHVwbmFtZXMKICAgIGFhYmIKCi8oKCgoKGEpKSkpKS9wYXJlbnNfbmVzdF9saW1pdD0yCgovYWJjL3JlcGxhY2U9WFlaCiAgICAxMjMxMjMKICAgIDEyM2FiYzEyMwogICAgMTIzYWJjMTIzYWJjMTIzCiAgICAxMjMxMjNcPXplcm9fdGVybWluYXRlCiAgICAxMjNhYmMxMjNcPXplcm9fdGVybWluYXRlCiAgICAxMjNhYmMxMjNhYmMxMjNcPXplcm9fdGVybWluYXRlCgovYWJjL2cscmVwbGFjZT1YWVoKICAgIDEyM2FiYzEyMwogICAgMTIzYWJjMTIzYWJjMTIzCgovYWJjL3JlcGxhY2U9WCQkWgogICAgMTIzYWJjMTIzCgovYWJjL2cscmVwbGFjZT1YJCRaCiAgICAxMjNhYmMxMjNhYmMxMjMKCi9hKGIpYyhkKWUvcmVwbGFjZT1YJDFZJHsyfVoKICAgICJhYmNkZSIKCi9hKGIpYyhkKWUvcmVwbGFjZT1YJDFZJHsyfVosZ2xvYmFsCiAgICAiYWJjZGUtYWJjZGUiCgovYSg/PE9ORT5iKWMoPzxUV08+ZCllL3JlcGxhY2U9WCRPTkUrJHtUV099WgogICAgImFiY2RlIgoKL2EoPzxPTkU+YiljKD88VFdPPmQpZS9nLHJlcGxhY2U9WCRPTkUrJHtUV099WgogICAgImFiY2RlLWFiY2RlLSIKCi9hYmMvcmVwbGFjZT1hJCsrCiAgICAxMjNhYmMKCi9hYmMvcmVwbGFjZT1hJGJhZAogICAgMTIzYWJjCgovYWJjL3JlcGxhY2U9YSR7QTIzNDU2Nzg5MDEyMzQ1Njc4OV8xMjM0NTY3ODkwMTJ9egogICAgMTIzYWJjCgovYWJjL3JlcGxhY2U9YSR7QTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzfXoKICAgIDEyM2FiYwoKL2FiYy9yZXBsYWNlPWEke2JjZAogICAgMTIzYWJjCgovYWJjL3JlcGxhY2U9YSR7YitkfXoKICAgIDEyM2FiYwoKL2FiYy9yZXBsYWNlPVsxMF1YWVoKICAgIDEyM2FiYzEyMwoKL2FiYy9yZXBsYWNlPVs5XVhZWgogICAgMTIzYWJjMTIzCgovYWJjL3JlcGxhY2U9eHl6CiAgICAxYWJjMlw9cGFydGlhbF9oYXJkCgovYWJjL3JlcGxhY2U9eHl6CiAgICAxMjNhYmM0NTYKICAgIDEyM2FiYzQ1Nlw9cmVwbGFjZT1wcXIKICAgIDEyM2FiYzQ1NmFiYzc4OQogICAgMTIzYWJjNDU2YWJjNzg5XD1nCgovKD88PWFiYykofGRlZikvZyxyZXBsYWNlPTwkMD4KICAgIDEyM2FiY3h5emFiY2RlZjc4OWFiY3BxcgoKLy4vcmVwbGFjZT0kMAogICAgYQoKLyguKSguKS9yZXBsYWNlPSQyKyQxCiAgICBhYmMKCi8oPzxBPi4pKD88Qj4uKS9yZXBsYWNlPSRCKyRBCiAgICBhYmMKCi8oLikoLikvZyxyZXBsYWNlPSQyJDEKICAgIGFiY2RlZmdoCgovKCo6cGVhcilhcHBsZXwoKjpvcmFuZ2UpbGVtb258KCo6c3RyYXdiZXJyeSlibGFja2JlcnJ5L2cscmVwbGFjZT0keypNQVJLfQogICAgYXBwbGUgbGVtb24gYmxhY2tiZXJyeQogICAgYXBwbGUgc3RydWRlbAogICAgZnJ1aXRsZXNzCgovKCo6cGVhcilhcHBsZXwoKjpvcmFuZ2UpbGVtb258KCo6c3RyYXdiZXJyeSlibGFja2JlcnJ5L3JlcGxhY2U9JHsqTUFSS30gc2F1Y2UsCiAgICBhcHBsZSBsZW1vbiBibGFja2JlcnJ5CgovKCo6cGVhcilhcHBsZXwoKjpvcmFuZ2UpbGVtb258KCo6c3RyYXdiZXJyeSlibGFja2JlcnJ5L2cscmVwbGFjZT08JCpNQVJLPgogICAgYXBwbGUgbGVtb24gYmxhY2tiZXJyeQogICAgYXBwbGUgc3RydWRlbAogICAgZnJ1aXRsZXNzCgovKCo6cGVhcilhcHBsZS9nLHJlcGxhY2U9JHsqTUFSS0lOR30KICAgIGFwcGxlIGxlbW9uIGJsYWNrYmVycnkKCi8oKjpwZWFyKWFwcGxlL2cscmVwbGFjZT0keypNQVJLLXRpbWUKICAgIGFwcGxlIGxlbW9uIGJsYWNrYmVycnkKCi8oKjpwZWFyKWFwcGxlL2cscmVwbGFjZT0keyptYXJrfQogICAgYXBwbGUgbGVtb24gYmxhY2tiZXJyeQoKLygqOnBlYXIpYXBwbGV8KCo6b3JhbmdlKWxlbW9ufCgqOnN0cmF3YmVycnkpYmxhY2tiZXJyeS9nLHJlcGxhY2U9PCQqTUFSS0VUPgogICAgYXBwbGUgbGVtb24gYmxhY2tiZXJyeQoKLygqOnBlYXIpYXBwbGV8KCo6b3JhbmdlKWxlbW9ufCgqOnN0cmF3YmVycnkpYmxhY2tiZXJyeS9nLHJlcGxhY2U9WzIyXSR7Kk1BUkt9CiAgICBhcHBsZSBsZW1vbiBibGFja2JlcnJ5CiAgICBhcHBsZSBsZW1vbiBibGFja2JlcnJ5XD1zdWJzdGl0dXRlX292ZXJmbG93X2xlbmd0aAoKLygqOnBlYXIpYXBwbGV8KCo6b3JhbmdlKWxlbW9ufCgqOnN0cmF3YmVycnkpYmxhY2tiZXJyeS9nLHJlcGxhY2U9WzIzXSR7Kk1BUkt9CiAgICBhcHBsZSBsZW1vbiBibGFja2JlcnJ5CgovYWJjLwogICAgMTIzYWJjMTIzXD1yZXBsYWNlPVs5XVhZWgogICAgMTIzYWJjMTIzXD1zdWJzdGl0dXRlX292ZXJmbG93X2xlbmd0aCxyZXBsYWNlPVs5XVhZWgogICAgMTIzYWJjMTIzXD1zdWJzdGl0dXRlX292ZXJmbG93X2xlbmd0aCxyZXBsYWNlPVs2XVhZWgogICAgMTIzYWJjMTIzXD1zdWJzdGl0dXRlX292ZXJmbG93X2xlbmd0aCxyZXBsYWNlPVsxXVhZWgogICAgMTIzYWJjMTIzXD1zdWJzdGl0dXRlX292ZXJmbG93X2xlbmd0aCxyZXBsYWNlPVswXVhZWgoKL2EoYiljLwogICAgMTIzYWJjMTIzXD1yZXBsYWNlPVs5XXgkMXoKICAgIDEyM2FiYzEyM1w9c3Vic3RpdHV0ZV9vdmVyZmxvd19sZW5ndGgscmVwbGFjZT1bOV14JDF6CiAgICAxMjNhYmMxMjNcPXN1YnN0aXR1dGVfb3ZlcmZsb3dfbGVuZ3RoLHJlcGxhY2U9WzZdeCQxegogICAgMTIzYWJjMTIzXD1zdWJzdGl0dXRlX292ZXJmbG93X2xlbmd0aCxyZXBsYWNlPVsxXXgkMXoKICAgIDEyM2FiYzEyM1w9c3Vic3RpdHV0ZV9vdmVyZmxvd19sZW5ndGgscmVwbGFjZT1bMF14JDF6CgoiKCg/PSg/KD89KD8oPz0oPyg/PSgpKSkpKSkpKSkiCiAgICBhCgoiKD8oPz0pPT0pKCgoKCgoKCgoPz0pKSkpKSkpKSkiClw9IEV4cGVjdCBubyBtYXRjaAogICAgYQoKLyhhKShiKXwoYykvCiAgICBYY1hcPW92ZWN0b3I9MixnZXQ9MSxnZXQ9MixnZXQ9MyxnZXQ9NCxnZXRhbGwKCi94KD89YWJcSykvCiAgICB4YWJcPWdldD0wCiAgICB4YWJcPWNvcHk9MAogICAgeGFiXD1nZXRhbGwKCi8oPzxBPmEpfCg/PEE+YikvZHVwbmFtZXMKICAgIGFcPW92ZWN0b3I9MSxjb3B5PUEsZ2V0PUEsZ2V0PTIKICAgIGFcPW92ZWN0b3I9Mixjb3B5PUEsZ2V0PUEsZ2V0PTIKICAgIGJcPW92ZWN0b3I9Mixjb3B5PUEsZ2V0PUEsZ2V0PTIKCi9hKGIpYyhkKS8KICAgIGFiY1w9cGgsY29weT0wLGNvcHk9MSxnZXRhbGwKCi9eYWJjL2luZm8KCi9eYWJjL2luZm8sbm9fZG90c3Rhcl9hbmNob3IKCi8uKlxkL2luZm8sYXV0b19jYWxsb3V0Clw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFhCgovLipcZC9pbmZvLG5vX2RvdHN0YXJfYW5jaG9yLGF1dG9fY2FsbG91dApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYQoKLy4qXGQvZG90YWxsLGluZm8KCi8uKlxkL2RvdGFsbCxub19kb3RzdGFyX2FuY2hvcixpbmZvCgovKCpOT19ET1RTVEFSX0FOQ0hPUikoP3MpLipcZC9pbmZvCgonXig/OihhKXxiKSg/KDEpQXxCKScKICAgIGFBMTIzXD1vdmVjdG9yPTEKICAgIGFBMTIzXD1vdmVjdG9yPTIKCideKD86KD88QUE+YSl8YikoPyg8QUE+KUF8QiknCiAgICBhQTEyM1w9b3ZlY3Rvcj0xCiAgICBhQTEyM1w9b3ZlY3Rvcj0yCgonXig/PEFBPikoPzooPzxBQT5hKXxiKSg/KDxBQT4pQXxCKSdkdXBuYW1lcwogICAgYUExMjNcPW92ZWN0b3I9MQogICAgYUExMjNcPW92ZWN0b3I9MgogICAgYUExMjNcPW92ZWN0b3I9MwoKJ14oPzooPzxBQT5YKXwpKD86KD88QUE+YSl8Yilca3tBQX0nZHVwbmFtZXMKICAgIGFhMTIzXD1vdmVjdG9yPTEKICAgIGFhMTIzXD1vdmVjdG9yPTIKICAgIGFhMTIzXD1vdmVjdG9yPTMKCi8oPzxOMTExPig/SikoPzxOMTExPjEoMTExMTExKTExfCkxfDF8KSg/KDxOMTExPikxKS8KCi8oPzxOPig/SikoPzxOPikpKD8tSilcazxOPi8KCiMgUXVhbnRpZmllcnMgYXJlIG5vdCBhbGxvd2VkIG9uIGNvbmRpdGlvbiBhc3NlcnRpb25zLCBidXQgYXJlIG90aGVyd2lzZQojIE9LIGluIGNvbmRpdGlvbnMuCgovKD8oPz0wKT8pKy8KCi8oPyg/PTApKD89MDApPzAwNzY1KS8KICAgICAwMDc2NQoKLyg/KD89MCkoPz0wMCk/MDA3NjV8KD8hMykuNTYpLwogICAgIDAwNzY1CiAgICAgNDU2Clw9IEV4cGVjdCBubyBtYXRjaAogICAgIDM1NgoKJ14oYSkqKyhcdyknCiAgICBnCiAgICBnXD1vdmVjdG9yPTEKCideKD86YSkqKyhcdyknCiAgICBnCiAgICBnXD1vdmVjdG9yPTEKCiMgVGhlc2UgdHdvIHBhdHRlcm4gc2hvd2VkcyB1cCBjb21waWxlLXRpbWUgYnVncwoKIigoPzIpezAsMTk5OX0oKSk/IgoKLygoPysxKShcMSkpL0IKCiMgQ2FsbG91dHMgd2l0aCBzdHJpbmcgYXJndW1lbnRzCgovYSg/QyIvCgovYSg/QyJhLwoKL2EoP0MiYSIvCgovYSg/QyJhImJjZGUoP0MiYiIpeHl6LwoKL2EoP0MiYSliIiJjIikvQgoKL2FiKD9DIiBhbnkgdGV4dCB3aXRoIHNwYWNlcyAiKWNkZS9CCiAgICBhYmNkZQogICAgMTJhYmNkZQoKL15hKGIpYyg/QzEpZGVmLwogICAgICBhYmNkZWYKCi9eYShiKWMoP0MiQUIiKWRlZi8KICAgICAgYWJjZGVmCgovXmEoYiljKD9DMSlkZWYvCiAgICAgIGFiY2RlZlw9Y2FsbG91dF9jYXB0dXJlCgovXmEoYiljKD9De0FCfSlkZWYvQgogICAgICBhYmNkZWZcPWNhbGxvdXRfY2FwdHVyZQoKLyg/Q2BhYGBiYCkoP0MnYScnYicpKD9DImEiImIiKSg/Q15hXl5iXikoP0MlYSUlYiUpKD9DI2EjI2IjKSg/QyRhJCRiJCkoP0N7YX19Yn0pL0IsY2FsbG91dF9pbmZvCgovKD86YSg/Q2Bjb2RlYCkpezN9L0IKCi9eKD8oP0MyNSkoPz1hYmMpYWJjZHx4eXopL0IsY2FsbG91dF9pbmZvCiAgICBhYmNkZWZnCiAgICB4eXoxMjMKCi9eKD8oP0MkYWJjJCkoPz1hYmMpYWJjZHx4eXopL0IKICAgIGFiY2RlZmcKICAgIHh5ejEyMwoKL15hYig/QydmaXJzdCcpY2QoP0Mic2Vjb25kIillZi8KICAgIGFiY2RlZmcKCi8oPzphKD9DYGNvZGVgKSl7M31YLwogICAgYWFhWFkKCiMgQmluYXJ5IHplcm8gaW4gY2FsbG91dCBzdHJpbmcKIyAgYSAgKCAgPyAgQyAgJyAgeCAgICAgeiAgJyAgKSAgYgovIDYxIDI4IDNmIDQzIDI3IDc4IDAwIDdhIDI3IDI5IDYyL2hleCxjYWxsb3V0X2luZm8KICAgIGFiY2RlZmdoCgovKD8oPyEpXikvCgovKD8oPyEpYXxiKS8KICAgIGJiYgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYQoKIyBKSVQgZ2l2ZXMgYSBkaWZmZXJlbnQgZXJyb3IgbWVzc2FnZSBmb3IgdGhlIGluZmluaXRlIHJlY3Vyc2lvbgoKIigqTk9fSklUKSgoPzIpKykoKD8xKSl7IgogICAgYWJjZHsKCiMgUGVybCBmYWlscyB0byBkaWFnbm9zZSB0aGUgYWJzZW5jZSBvZiBhbiBhc3NlcnRpb24KCiIoPyg/PEU+LiohLiopPykiCgoiWCgoPzIpKCkqKyl7Mn0rIkIKCiJYKCg/MikoKSorKXsyfSJCCgovKD88PVxiQUJRKDMoPy03KSkpLwoKLyg/PD1cYkFCUSgzKD8rNykpKS8KCiI7KD88PSgpKCg/MykpKCg/MikpKSIKCiMgUGVybCBsb29wcyBvbiB0aGlzIChQQ1JFMiB1c2VkIHRvISkKCi8oPzw9XEthKS9nLGFmdGVydGV4dAogICAgYWFhYWEKCi8oPzw9XEthKS9hbHRnbG9iYWwsYWZ0ZXJ0ZXh0CiAgICBhYWFhYQoKLygoPzIpezczfSg/MikpKCg/MSkpL2luZm8KCi9hYmMvClw9IEV4cGVjdCBubyBtYXRjaAogICAgXFs5eCF4eHgoXXs5OTk5fQoKLyhhYmMpKi8KICAgIFxbYWJjXXs1fQoKL14vZ20KICAgIFxuXG5cbgoKL14vZ20sYWx0X2NpcmN1bWZsZXgKICAgIFxuXG5cbgoKLygoKCgoKCgoeCkpKSkpKSkpXDgxLwogICAgeHgxCgovKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCh4KSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSlcODAvCiAgICB4eAoKL1w4MC8KCi9BXDhCXDlDLwogICAgQThCOUMKCi8oP3g6KCg/J2EnKSkgIyBjb21tZW50ICh3aXRoIHBhcmVudGhlc2VzKSBhbmQgfCB2ZXJ0aWNhbAooPy14OiNub3QgYSBjb21tZW50ICg/J2InKSkgIyB0aGlzIGlzIGEgY29tbWVudCAoKQooPydjJykpICMgbm90IGEgY29tbWVudCAoPydkJykvaW5mbwoKLyg/fCg/J2EnKSgyKSg/J2InKXwoPydhJykoPydhJykoMykpL0ksZHVwbmFtZXMKICAgIEEyM0IKICAgIEIzMkEKCiMgVGhlc2UgYXJlIHNvbWUgcGF0dGVybnMgdGhhdCB1c2VkIHRvIGNhdXNlIGJ1ZmZlciBvdmVyZmxvd3Mgb3Igb3RoZXIgZXJyb3JzCiMgd2hpbGUgY29tcGlsaW5nLgoKLy4oKD8yKSg/Uil8XDF8JCkoKS9CCgovLigoPzMpKD9SKSgpKD8yKXxcMXwkKSgpL0IKCi8oXDkqKyg/Mik7XDMrKygpMnwpKyt7LwoKL1xWXHg4NVw5KisoKD8yKVwzKysoKTIpKjoyLwoKLygoKD8oUikpezAsMn0pICg/J3gnKCg/J1InKSgoPydSJykpKSkpL2R1cG5hbWVzCgovKCgoPyhYKSl7MCwyfSkgKD8neCcoKD8nWCcpKCg/J1gnKSkpKSkvZHVwbmFtZXMKCi8oKCg/KFIpKXswLDJ9KSAoPyd4JygoPydYJykoKD8nUicpKSkpKS8KCiIoP0opKD8nZCcoPydkJ1xne2R9KSkiCgoiKD89ISgoPzIpKD8pKSh7OCg/PD0oPzEpezI5fThiYmJiXHgxNlx4ZFx4YzZeKCQoXHhhOUg0KXs0fWh9PzEpQikpXHgxNScpIgoKL0EoPycnKVovCgoiKD9KOig/fCg/J1InKShcaydSJyl8KCg/J1InKSkpKSIKCi8oPzw9fChcLFwkKD83MzU5MTYyMDQ0OTAwNTgyODgxNilceGE4Lns3fSl7Nn1ceDA5KS8KCi9eKD86KD8oMSl4fCkrKSskKCkvQgoKL1tbOj46XV0oPzwpLwoKLygoP3gpKCo6MCkpIyg/Jy8KCi8oP0MkWyQpKD88XS8KCi8oP0MkKSQpKD88XS8KCi8oPyhSKSkqKy9CCiAgICBhYmNkCgovKCg/eCkoPyMpKSMoPycvCgovKCg/eCkoPyMpKSMoPydhYmMnKS9JCgovW1s6XFxdKD88Wzo6XS8KCi9bWzpcXF0oPydhYmMnKVthOl0vSQoKIltbWy5ceGU4TnFceGZmcVx4ZmZceGUwXHgyfHx8OjpOcVx4ZmZxXHhmZlx4ZTBceDZceDJ8fHw6OltbWzpbOjo6Ojo6W1tbW1s6Ojo6Ojo6Ols6W1tbOls6OjpbW1tbW1tbW1tbW1s6Ojo6Ojo6Ojo6Ojo6Ojo6OltbLlx4ZThOcVx4ZmZxXHhmZlx4ZTBceDJ8fHw6Ok5xXHhmZnFceGZmXHhlMFx4Nlx4Mnx8fDo6W1tbOls6Ojo6OjpbW1tbWzo6Ojo6Ojo6WzpbW1s6Wzo6OltbW1tbW1tbW1tbW1tbOjo6RVtbWzpbOltbOls6OjpbWzo6OkVbW1s6WzpbWzonWzo6Ojo6RVtbWzpbOjo6Ojo6W1tbOltbW1tbW1s6OkVbW1s6Wzo6Ojo6OltbWzpbW1tbW1tbWzpbWzo6Wzo6OjpbWzo6Ojo6OjpbWzpbW1tbW1tbOltbOjpbOltbOlt+IgoKLygpKD8oUikwKSorL0IKCi8oP1ItOig/PC8KCi8oP1ItOig/PCkvCgovKD8oP0N7XFF9KSg/ISg/Jy8KCi8oPyg/Q3tcUX0pKD8hKD8nYWJjJykpKS9JCgovKD8xKXszOTE4fSgoKCgoMChcaydSJykpKSkoP0opKD8nUicoPydSJ1wzKXs5OX0pKSkvSQoKLyg/fChhYWEpfChiKSlcZ3sxfS9JCgovKD98KGFhYSl8KGIpKSg/MSkvSQoKLyg/fChhYWEpfChiKSkvSQoKLyg/fCg/J2EnYWFhKXwoPydhJ2IpKVxrJ2EnL0kKCi8oP3woPydhJ2FhYSl8KD8nYSdiKSkoPydhJ2NjY2MpXGsnYScvSSxkdXBuYW1lcwoKL2FiezNjZC8KICAgIGFiezNjZAoKL2FiezMsY2QvCiAgICBhYnszLGNkCgovYWJ7Myw0YX1jZC8KICAgIGFiezMsNGF9Y2QKCi97NCw1YX1iYy8KICAgIHs0LDVhfWJjCgovXHgwe2FifS8KICAgIFwwe2FifQoKL14oYShiKSlcMVxnMVxnezF9XGctMVxney0xfVxney0wMn1aLwogICAgYWJhYmFiYWJiYmFiWlhYWFgKCi8uKj9hKCpQUlVORSliLwogICAgYWFiCgovLio/YSgqUFJVTkUpYi9zCiAgICBhYWIKCi9eYSgqUFJVTkUpYi9zClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFiCgovLio/YSgqU0tJUCliLwogICAgYWFiCgovKD8oODAwMDAwMDAwMC8KCi8oKD8oUjgwMDAwMDAwMDApKSkvCgovMCg/MCl8KDEpKCpUSEVOKSgqU0tJUDowKSgqRkFJTCkvClw9IEV4cGVjdCBubyBtYXRjaAogICAgMDEKCi8oPygxKSgpXDk4MzA0MFwyKS8KCi8oKkxJTUlUX01BVENIPSlhYmMvCgovKCpDUkxGKSgqTElNSVRfTUFUQ0g9KWFiYy8KCi8oPzphYik/KD86YWIpKD86YWIpLwogICAgYWJhYgogICAgYWJhYmFiClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJhCgovKCgqTUFSSzpBKSkrK2EoKlNLSVA6QiliLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhY2IKCi8oKk1BUks6YVx6Yil6L2FsdF92ZXJibmFtZXMKCi8oKjphYlx0KGRcKWMpeHh4LwoKLygqOmFiXHQoZFwpYyl4eHgvYWx0X3ZlcmJuYW1lcyxtYXJrCiAgICBjeHh4egoKLygqOkFcUXh4KXhcRUIpeC9hbHRfdmVyYm5hbWVzLG1hcmsKICAgIHgKCi8oKjpBXEV4eHhCKXgvYWx0X3ZlcmJuYW1lcyxtYXJrCiAgICB4CgovKCo6IEEgXCBhbmQgI2NvbW1lbnQKICAgICBcIEIpeC94LGFsdF92ZXJibmFtZXMsbWFyawogICAgeAoKLygqOiBBIFwgYW5kICNjb21tZW50CiAgICAgXCBCKXgvYWx0X3ZlcmJuYW1lcyxtYXJrCiAgICB4CgovKCo6IEEgXCBhbmQgI2NvbW1lbnQKICAgICBcIEIpeC94LG1hcmsKICAgIHgKCi8oKjogQSBcIGFuZCAjY29tbWVudAogICAgIFwgQil4L21hcmsKICAgIHgKCi8oKjpBCkIpeC9hbHRfdmVyYm5hbWVzLG1hcmsKICAgIHgKCi8oKjphYmNcUXBxcikvYWx0X3ZlcmJuYW1lcwoKL2FiYy91c2Vfb2Zmc2V0X2xpbWl0CiAgICAxMjM0YWJjZGVcPW9mZnNldF9saW1pdD0xMDAKICAgIDEyMzRhYmNkZVw9b2Zmc2V0X2xpbWl0PTkKICAgIDEyMzRhYmNkZVw9b2Zmc2V0X2xpbWl0PTQKICAgIDEyMzRhYmNkZVw9b2Zmc2V0X2xpbWl0PTQsb2Zmc2V0PTQKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAxMjM0YWJjZGVcPW9mZnNldF9saW1pdD00LG9mZnNldD01CiAgICAxMjM0YWJjZGVcPW9mZnNldF9saW1pdD0zCgovKD88PWFiYykvdXNlX29mZnNldF9saW1pdAogICAgMTIzNGFiY1w9b2Zmc2V0X2xpbWl0PTcKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAxMjM0YWJjXD1vZmZzZXRfbGltaXQ9NgoKL0EvZyxyZXBsYWNlPS0sdXNlX29mZnNldF9saW1pdAogICAgWEFYQVhBWEFYQVw9b2Zmc2V0X2xpbWl0PTQKCi9hYmMvClw9IEV4cGVjdCBlcnJvcgogICAgMTIzNGFiY2RlXD1vZmZzZXRfbGltaXQ9NAoKL15cdy9tLHVzZV9vZmZzZXRfbGltaXQKICAgIFxuLi5cbmFhXD1vZmZzZXRfbGltaXQ9MwogICAgXG4uLlxuYWFcPW9mZnNldF9saW1pdD00CgovYWJjZC9udWxsX2NvbnRleHQKICAgIGFiY2RcPW51bGxfY29udGV4dApcPSBFeHBlY3QgZXJyb3IKICAgIGFiY2RcPW51bGxfY29udGV4dCxmaW5kX2xpbWl0cwogICAgYWJjZFw9YWxsdXNlZHRleHQsc3RhcnRjaGFyCgovYWJjZC9yZXBsYWNlPXdccnhceDgyeVxvezMzM316KFxRMTJcJDM0JCRceDM0XEU1JCQpLHN1YnN0aXR1dGVfZXh0ZW5kZWQKICAgIGFiY2QKCi9hKGJjKShERSkvcmVwbGFjZT1hXHUkMVxVJDFcRSQxXGwkMlxMJDJcRWFiXFVhYlxMWVpcRURvbmUsc3Vic3RpdHV0ZV9leHRlbmRlZAogICAgYWJjREUKCi9hYmNkL3JlcGxhY2U9eHlca3osc3Vic3RpdHV0ZV9leHRlbmRlZAogICAgYWJjZAoKL2EoPzooYil8KGMpKS9zdWJzdGl0dXRlX2V4dGVuZGVkLHJlcGxhY2U9WCR7MTorMTotMX1YJHsyOisyOi0yfQogICAgYWIKICAgIGFjCiAgICBhYlw9cmVwbGFjZT0kezE6KyQxXDokMTokMn0KICAgIGFjXD1yZXBsYWNlPSR7MTorJDFcOiQxOiQyfQoKL2EoPzooYil8KGMpKS9zdWJzdGl0dXRlX2V4dGVuZGVkLHJlcGxhY2U9WCR7MTotMTotMX1YJHsyOi0yOi0yfQogICAgYWIKICAgIGFjCgovKGEpL3N1YnN0aXR1dGVfZXh0ZW5kZWQscmVwbGFjZT0+JHsxOitcUSQxOnt9JCRcRStcVSQxfTwKICAgIGEKCi9YKGIpWS9zdWJzdGl0dXRlX2V4dGVuZGVkCiAgICBYYllcPXJlcGxhY2U9eCR7MTorJDFcVSQxfXkKICAgIFhiWVw9cmVwbGFjZT1cVXgkezE6KyQxJDF9eQoKL2Evc3Vic3RpdHV0ZV9leHRlbmRlZCxyZXBsYWNlPSR7Kk1BUks6K2E6Yn0KICAgIGEKCi8oYWJjZCkvcmVwbGFjZT0kezE6K3h5XGt6fSxzdWJzdGl0dXRlX2V4dGVuZGVkCiAgICBhYmNkCgovKGFiY2QpLwogICAgYWJjZFw9cmVwbGFjZT0kezE6K3h5XGt6fSxzdWJzdGl0dXRlX2V4dGVuZGVkCgovYWJjZC9zdWJzdGl0dXRlX2V4dGVuZGVkLHJlcGxhY2U9PiQxPAogICAgYWJjZAoKL2FiY2Qvc3Vic3RpdHV0ZV9leHRlbmRlZCxyZXBsYWNlPT54eHgke3h5en08PDwKICAgIGFiY2QKCi8oP0opKD86KD88QT5hKXwoPzxBPmIpKS9yZXBsYWNlPTwkQT4KICAgIFthXQogICAgW2JdClw9IEV4cGVjdCBlcnJvcgogICAgKGEpXD1vdmVjdG9yPTEKCi8oYSl8KGIpL3JlcGxhY2U9PCQxPgpcPSBFeHBlY3QgZXJyb3IKICAgIGIKCi8oYWEpKEJCKS9zdWJzdGl0dXRlX2V4dGVuZGVkLHJlcGxhY2U9XFUkMVxMJDJcRSQxLi5cVSQxXGwkMiQxCiAgICBhYUJCCgovXihvKFwxezcyfXtcIntcXHswMDAwMDA1OTA3OX1cZCopezc0fX0pezE5fS9JCgovKChwKD8nSy8KCi8oKHAoPydLL25vX2F1dG9fY2FwdHVyZQoKL2FiYy9yZXBsYWNlPUEkMzEyMzQ1Njc4OVoKICAgIGFiYwoKLyg/PCFhezY1NTM1fWF7NX0peC9JCgovKD88IWF7NjU1MzV9KXgvSQoKLyg/PWFcSykvcmVwbGFjZT16CiAgICBCYUNhRAogICAgCi8oPzw9XEsuKS9nLHJlcGxhY2U9LQogICAgYWIKCi8oPydhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkcndG9vbG9uZykvCgovKD8nYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUYnanVzdHJpZ2h0KS8KCiMgVGhlc2UgdHdvIHVzZSB6ZXJvLXRlcm1pbmF0aW9uCi9hYmNkL21heF9wYXR0ZXJuX2xlbmd0aD0zCgovYWJjL21heF9wYXR0ZXJuX2xlbmd0aD0zCgojIFRoZXNlIHR3bywgYmVpbmcgaGV4LCBwYXNzIHRoZSBsZW5ndGgKL2FiY2RlZmFiL2hleCxtYXhfcGF0dGVybl9sZW5ndGg9MwoKL2FiY2RlZi9oZXgsbWF4X3BhdHRlcm5fbGVuZ3RoPTMKCiMgVGhlc2UgcGF0dGVybnMgdXNlZCB0byB0YWtlIGEgbG9uZyB0aW1lIHRvIGNvbXBpbGUKCiIoLiopCigoPy0yKSg/LTIpKSgoPy0yKSg/LTIpKSgoPy0yKSg/LTIpKSgoPy0yKSg/LTIpKQooKD8tMikoPy0yKSkoKD8tMikoPy0yKSkoKD8tMikoPy0yKSkoKD8tMikoPy0yKSkKKCg/LTIpKD8tMikpKCg/LTIpKD8tMikpKCg/LTIpKD8tMikpInhJCgoiKD88PWEoKQooKD8tMikoPy0yKSkoKD8tMikoPy0yKSkoKD8tMikoPy0yKSkoKD8tMikoPy0yKSkKKCg/LTIpKD8tMikpKCg/LTIpKD8tMikpKCg/LTIpKD8tMikpKCg/LTIpKD8tMikpCigoPy0yKSg/LTIpKSgoPy0yKSg/LTIpKSgoPy0yKSg/LTIpKQphKSJ4SQoKIig/fCgpfCgpKSguKikKKCg/LTIpKD8tMikpKCg/LTIpKD8tMikpKCg/LTIpKD8tMikpKCg/LTIpKD8tMikpCigoPy0yKSg/LTIpKSgoPy0yKSg/LTIpKSgoPy0yKSg/LTIpKSgoPy0yKSg/LTIpKQooKD8tMikoPy0yKSkoKD8tMikoPy0yKSkoKD8tMikoPy0yKSkieEkKCiIoP3woKXwoKSkoPzw9YSgpCigoPy0yKSg/LTIpKSgoPy0yKSg/LTIpKSgoPy0yKSg/LTIpKSgoPy0yKSg/LTIpKQooKD8tMikoPy0yKSkoKD8tMikoPy0yKSkoKD8tMikoPy0yKSkoKD8tMikoPy0yKSkKKCg/LTIpKD8tMikpKCg/LTIpKD8tMikpKCg/LTIpKD8tMikpCmEpInhJCgojIFRlc3QgdGhlIHVzZSBvZiBtYWxsb2MgZm9yIGNhY2hpbmcgZ3JvdXAgaW5mb3JtYXRpb24gd2hlbiB0aGVyZSBhcmUgbW9yZQojIGdyb3VwcyB0aGFuIGZpdCBpbnRvIHRoZSBvbi1zdGFjayB3b3Jrc3BhY2UuCgovXFsoKV17MTAyNH0vSSxleHBhbmQKCiMgVGVzdCBtaW5sZW5ndGggY2FwcGVkIGF0IDY1NTM1CgovKEF7NjUwMDB9KVwxezY1MDAwfS9JCgojIFRlc3QgZ3JvdXAgc2NhbnMgd2hlbiBudW1iZXJzIGFyZSBub3QgdW5pcXVlCgovKD98KCkrfChhKSspL0JJCgovKD98KGEpK3woKSspL0JJCgovKD98KCl8KGEpKS9CSQoKLyg/fChhKXwoKSkvQkkKCiMgVGVzdCBDUkxGIGhhbmRsaW5nIGluIGVtcHR5IHN0cmluZyBzdWJzdGl0dXRpb25zCgovXiQvZ20sbmV3bGluZT1hbnljcmxmLHJlcGxhY2U9LQogICAgWFxyXG5cclxuWQoKL14kL2dtLG5ld2xpbmU9Y3JsZixyZXBsYWNlPS0KICAgIFhcclxuXHJcblkKCi9eJC9nbSxuZXdsaW5lPWFueSxyZXBsYWNlPS0KICAgIFhcclxuXHJcblkKCiIoKkFOWUNSTEYpKD9tKV4oLipbXjAtOVxyXG5dLip8KSQiZyxyZXBsYWNlPU5hTgogICAgMTVcclxuZm9vXHJcbjIwXHJcbmJhclxyXG5iYXpcclxuXHJcbjIwCgovYVtbOnB1bmN0Ol1iXS9iaW5jb2RlCgovYVtiWzpwdW5jdDpdXS9iaW5jb2RlCgovTCg/Iyh8Kys8ISgyKT8vQgoKL0woPyMofCsrPCEoMik/L0Isbm9fYXV0b19wb3NzZXNzCgovTCg/Iyh8Kys8ISgyKT8vQixhdXRvX2NhbGxvdXQKCi9MKD8jKHwrKzwhKDIpPy9CLG5vX2F1dG9fcG9zc2VzcyxhdXRvX2NhbGxvdXQKCi8oQSopXEUrL0IsYXV0b19jYWxsb3V0CgovKClcUVxFKl0vQixhdXRvX2NhbGxvdXQKICAgIGFbYmNdZAoKL1x4OGErZnw7VD8oKjo7Lic/YChceGVhcCApeyFbXigpIXkqJydDKig/JztdezE7KFx4MDgpL0IsYWx0X3ZlcmJuYW1lcyxkdXBuYW1lcyxleHRlbmRlZAoKIyBUZXN0cyBmb3IgTlVMTCBjaGFyYWN0ZXJzIGluIGNvbW1lbnRzIGFuZCB2ZXJiICJuYW1lcyIgYW5kIGNhbGxvdXRzCgojIC9BI0JceDAwQ1x4MGFaLwovNDEgMjMgNDIgMDAgNDMgMGEgNWEvQngsaGV4CgojIC9BKyNCXHgwMENceDBhKy8KLzQxIDJiIDIzIDQyIDAwIDQzIDBhIDJiL0J4LGhleAoKIyAvQSgqOkJceDAwVyNYXDAwWVx4MGFDKVovCi80MSAyOCAyYSAzYSA0MiAwMCA1NyAyMyA1OCAwMCA1OSAwYSA0MyAyOSA1YS9CeCxoZXgsYWx0X3ZlcmJuYW1lcwoKIyAvQSgqOkJceDAwVyNYXDAwWVx4MGFDKVovCi80MSAyOCAyYSAzYSA0MiAwMCA1NyAyMyA1OCAwMCA1OSAwYSA0MyAyOSA1YS9CeCxoZXgKCiMgL0EoP0N7WFx4MDBZfSlCLwovNDEgMjggM2YgNDMgN2IgNTggMDAgNTkgN2QgMjkgNDIvQixoZXgKCiMgL0EoPyNYXHgwMFkpQi8KLzQxIDI4IDNmIDIzIDdiIDAwIDdkIDI5IDQyL0IsaGV4CgojIFRlc3RzIGZvciBsZWFkaW5nIGNvbW1lbnQgaW4gZXh0ZW5kZWQgcGF0dGVybnMKCi8gKD8teCk6Py9leHRlbmRlZAoKLwsoPy14KTo/L2V4dGVuZGVkCgovMGIgMjggM2YgMmQgNzggMjkgM2EvaGV4LGV4dGVuZGVkCgovI2NvbW1lbnQKKD8teCk6Py9leHRlbmRlZAoKLyg4KCo6Nl5ceDA5eFx4YTZsXCk2IXxceGQwOlteOnwpXHgwOWRcWlxkezg1Km0oPycoPzwxISkqXFdbKlx4ZmZdISFoXHddKlx4YmU7L2FsdF9ic3V4LGFsdF92ZXJibmFtZXMsYWxsb3dfZW1wdHlfY2xhc3MsZG9sbGFyX2VuZG9ubHksZXh0ZW5kZWQsbXVsdGlsaW5lLG5ldmVyX3V0Zixub19kb3RzdGFyX2FuY2hvcixub19zdGFydF9vcHRpbWl6ZQoKL2F8KGIpYy9yZXBsYWNlPT4kMTwsc3Vic3RpdHV0ZV91bnNldF9lbXB0eQogICAgY2F0CiAgICB4YmNvbQoKL2F8KGIpYy8KICAgIGNhdFw9cmVwbGFjZT0+JDE8CiAgICBjYXRcPXJlcGxhY2U9PiQxPCxzdWJzdGl0dXRlX3Vuc2V0X2VtcHR5CiAgICB4YmNvbVw9cmVwbGFjZT0+JDE8LHN1YnN0aXR1dGVfdW5zZXRfZW1wdHkKCi9hfChiKWMvc3Vic3RpdHV0ZV9leHRlbmRlZAogICAgY2F0XD1yZXBsYWNlPT4kezI6LXh4fTwKICAgIGNhdFw9cmVwbGFjZT0+JHsyOi14eH08LHN1YnN0aXR1dGVfdW5rbm93bl91bnNldAogICAgY2F0XD1yZXBsYWNlPT4ke1g6LXh4fTwsc3Vic3RpdHV0ZV91bmtub3duX3Vuc2V0CgovYXwoPydYJ2IpYy9yZXBsYWNlPT4kWDwsc3Vic3RpdHV0ZV91bnNldF9lbXB0eQogICAgY2F0CiAgICB4YmNvbQoKL2F8KD8nWCdiKWMvcmVwbGFjZT0+JFk8LHN1YnN0aXR1dGVfdW5zZXRfZW1wdHkKICAgIGNhdAogICAgY2F0XD1zdWJzdGl0dXRlX3Vua25vd25fdW5zZXQKICAgIGNhdFw9c3Vic3RpdHV0ZV91bmtub3duX3Vuc2V0LC1zdWJzdGl0dXRlX3Vuc2V0X2VtcHR5CgovYXwoYiljL3JlcGxhY2U9PiQyPCxzdWJzdGl0dXRlX3Vuc2V0X2VtcHR5CiAgICBjYXQKICAgIGNhdFw9c3Vic3RpdHV0ZV91bmtub3duX3Vuc2V0CiAgICBjYXRcPXN1YnN0aXR1dGVfdW5rbm93bl91bnNldCwtc3Vic3RpdHV0ZV91bnNldF9lbXB0eQoKLygpKCkoKS91c2Vfb2Zmc2V0X2xpbWl0CiAgICBcPW92ZWN0b3I9MTEwMDAwMDAwMDAKICAgIFw9Y2FsbG91dF9mYWlsPTExMDAwMDAwMDAwCiAgICBcPWNhbGxvdXRfZmFpbD0xOjExMDAwMDAwMDAwCiAgICBcPWNhbGxvdXRfZGF0YT0xMTAwMDAwMDAwMAogICAgXD1jYWxsb3V0X2RhdGE9LTExMDAwMDAwMDAwCiAgICBcPW9mZnNldF9saW1pdD0xMTAwMDAwMDAwMDAwMDAwMDAwMDAwCiAgICBcPWNvcHk9MTEwMDAwMDAwMDAKCi8oKk1BUks6QVx4MDBiKS9tYXJrCiAgICBhYmMKCi8oKk1BUks6QVx4MDBiKS9tYXJrLGFsdF92ZXJibmFtZXMKICAgIGFiYwoKLyIoKk1BUks6QSIgMDAgImIpIi9tYXJrLGhleAogICAgYWJjCgovIigqTUFSSzpBIiAwMCAiYikiL21hcmssaGV4LGFsdF92ZXJibmFtZXMKICAgIGFiYwoKL2VmZy9oZXgKCi9lZmYvaGV4CgovZWZmZy9oZXgKCi8oP0opKD8nYScpKSg/J2EnKS8KCi8oPzw9KCg/QykwKSkvCiAgICA5MDEwClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJjCgovYWFhLwpcW2FiY117MTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDB9ClxbYV17M30KCi9cW0FCXXs2MDAwMDAwMDAwMDAwMDAwMDAwMDAwfS9leHBhbmQKCiMgSGV4IHVzZXMgcGF0dGVybiBsZW5ndGgsIG5vdCB6ZXJvLXRlcm1pbmF0ZWQuIFRoaXMgdGVzdHMgZm9yIG92ZXJydW5uaW5nCiMgdGhlIGdpdmVuIGxlbmd0aCBvZiBhIHBhdHRlcm4uCgovJygqVScvaGV4CgovJygqJy9oZXgKCi8nKCcvaGV4CgovL2hleAoKIyBUaGVzZSB0ZXN0cyBhcmUgaGVyZSBiZWNhdXNlIFBlcmwgbmV2ZXIgYWxsb3dzIGEgYmFjayByZWZlcmVuY2UgaW4gYQojIGxvb2tiZWhpbmQuIFBDUkUyIHN1cHBvcnRzIHNvbWUgbGltaXRlZCBjYXNlcy4KCi8oW2FiXSkuLi4oPzw9XDEpei8KICAgIGExMWF6CiAgICBiMTFiegpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGIxMWF6CgovKD98KFthYl0pKS4uLig/PD1cMSl6LwoKLyhbYWJdKShcMSkuLi4oPzw9XDIpei8KICAgIGFhMTFhegoKLyhhXDIpKGJcMSkoPzw9XDIpLwoKLyg/PEE+W2FiXSkuLi4oPzw9XGsnQScpei8KICAgIGExMWF6CiAgICBiMTFiegpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGIxMWF6CgovKD88QT5bYWJdKS4uLig/PD1caydBJykoPzxBPil6L2R1cG5hbWVzCgojIFBlcmwgZG9lcyBub3Qgc3VwcG9ydCBcZytuCgovKChcZysxWCk/KFthYl0pKSsvCiAgICBhYVhiYlhhCgovYWIoP0MxKWMvYXV0b19jYWxsb3V0CiAgICBhYmMKCi8nYWIoP0MxKWMnL2hleCxhdXRvX2NhbGxvdXQKICAgIGFiYwoKIyBQZXJsIGFjY2VwdHMgdGhlc2UsIGJ1dCBnaXZlcyBhIHdhcm5pbmcuIFdlIGNhbid0IHdhcm4sIHNvIGdpdmUgYW4gZXJyb3IuCgovW2EtWzpkaWdpdDpdXSsvCiAgICBhLWE5LWEKCi9bQS1bOmRpZ2l0Ol1dKy8KICAgIEEtQTktQQoKL1thLVxkXSsvCiAgICBhLWE5LWEKCi8oPzxSQT5hYmMpKD8oUil4eXopL0IKCi8oPzxSPmFiYykoPyhSKXh5eikvQgoKLyg/PS4qW0EtWl0pL0kKCi8oKSg/PD0oPzApKS8KCi8oPzwhfCEoPzwhKSkvCgovKD88IXwhfCF8fHx8fHwoPzwhKXx8KD88ISkhfCF8fCg/PCEpIXwhKD88ISkhfCF8IXwhfHx8fCEhfDwhKSF8IXx8fHwhfC8KCi97MiwyezIsMi91c2VfbGVuZ3RoCgovLj4qP1xnJzAvdXNlX2xlbmd0aAoKLy4+Kj9cZycwLwoKL3uEzYTNzYTNeyd7MjJ7Mnt7MnsnezIyexJ7MjJ7MnsnezIyezJ7ezJ7ezIyMnt7MnsnezIyezJ7MjJ7MnsnezIyezJ7ezJ7J3syMnsyezIyezJ7J3snezIyezJ7MjJ7MnsnezIyezJ7ezJ7J3syMnsyezIyezJ7J3syMjJ7MsSEzYTNzYTNeyd7MjJ7Mnt7MnsnezIyexJ7MTF7MnsnezIyezJ7ezJ7eyd7MjJ7Mnt7MnsnezIyexJ7MjJ7MXsnezIyezJ7ezJ7ezIyMnt7MnsnezIyezJ7MjJ7Mnsney9hdXRvX2NhbGxvdXQKCi8vClw9Z2V0PWkwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMApcPWdldD1pMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMixnZXQ9aTEyNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIKCiIoPyg/QykpIgoKLyg/KD8oPyg/KD8oPykpKSkpKS8KCi8oPzw9KD8xKSkoKD9zKSkvYW5jaG9yZWQKCi8oKjphYikqLwoKJSgqOh4oOhEoH3N2dnZ2dnZ2dnZ2Ol0qWyAgIFohKjtbXSpbXltdKiFeWxkrLit7ezIsN30nICAgICAgX1xcXFxcXFxcXFxcXFwpPy46Li4gICAgKncvLy8vXFxcUVxcXFxcXFxcXFxcXFxcXFRcXFxcXCsvPy8vLy8vJytcXFxFRUU/Ly8vLy8nKy8qKy9bXktdP10vLyh3KSVuZXZlcl9iYWNrc2xhc2hfYyxhbHRfdmVyYm5hbWVzLGF1dG9fY2FsbG91dAoKLy4vbmV3bGluZT1jcmxmCiAgICBcPXBoCgovKFx4MGUwMFwwMDAwMDBceGMpL3JlcGxhY2U9XFAsc3Vic3RpdHV0ZV9leHRlbmRlZAogICAgXHgwZTAwXDAwMDAwMFx4YwoKLy9yZXBsYWNlPTAKICAgIFw9b2Zmc2V0PTcKCi8oPzw9XEcuKS9nLHJlcGxhY2U9KwogICAgYWJjCgoiLitcUVhcRSsiQixub19hdXRvX3Bvc3Nlc3MKCiIuK1xRWFxFKyJCLGF1dG9fY2FsbG91dCxub19hdXRvX3Bvc3Nlc3MKCiMgVGhpcyBvbmUgaXMgaGVyZSBiZWNhdXNlIFBlcmwgZ2l2ZXMgYW4gJ3VubWF0Y2hlZCApJyBlcnJvciB3aGljaCBnb2VzIGF3YXkKIyBpZiBvbmUgb2YgdGhlIFwpIHNlcXVlbmNlcyBpcyByZW1vdmVkIC0gd2hpY2ggaXMgd2VpcmQuIFBDUkUgZmluZHMgaXQgdG9vCiMgY29tcGxpY2F0ZWQgdG8gZmluZCBhIG1pbmltdW0gbWF0Y2hpbmcgbGVuZ3RoLgoKIigpWHwoKCgoKCgoKCgpKSkpKSkpKCgoKCgpKSkpKSlcMigpKSgoKCgoKFwyXDIpKSlcMikoXDIyKCgoKFwyXDIpMikpXDIpKSkoMlxaWlopKzopWl58OTFaaVpabnRlcihaWiB8OTFaKFpaIFpaKFxyMlooIG9yIyhcWjIoWlxaKFwyXDIpMikpXDJaKVooXDIyWigoXFoyKFpcWihcMlwyKTIpKVwyWis6KVp8OTFaKFpaIFpaKFxyMlooIG9yIyhcWjIoWlxaKChaKihcMihaXCc6KSlcMClpfHx8fHx8fHx8fHx8fHx8bG9aXDJcMikyKSlcMlopWihcMjJaKChcWjIoWlxaKFwyXDIpMikpXDJaKSkpaW50IFwpXDBudGUhcm5hbCBlcnJwclwyXFwyMXIoMlxaWlopKzopWiF8OTFaKFpaIFpaKFxyMlooIG9yIyhcWjIoWlxaKFwyXDIpMikpXDJaKVooXDIyWigoXFoyKFpcWihcMlwyKTIpKVwyWikpKWludCBcKVwwKDJcWlpaKSs6KVpefDkxWmlaWm50ZXIoWlogfDkxWihaWiBaWihccjJaKCBvciMoXFoyKFpcWihcMlwyKTIpKVwyWilaKFwyMlooKFxaMihaXFooXDJcMikyKSlcMlopKSlpbnQgXClcMCgyXFpaWikrOilaXikpKWludCBcKVwwKDJcWlpaKSs6KVpefDkxWmlaWm50ZXIoWlplcm5aYWwgWlooXHIyWiggb3IjKFxaMihaXFooXDJcMikyKSlcMlopWihcMjJaKChcWjIoWlxaKFwyXDIpMikpXDJaKSkpaW50IFwpKVxaWihccjJaKCBvciMoXFoyKFpcWihcMlwyKTIpKVwyWilaKFwyMlooKFxaMihaXFooXDJcMikpKVwyKSkpKSgoKCgoKFwyXDIpKSkpKSkiSQoKIyBUaGlzIGNoZWNrcyB0aGF0IG5ldyBjb2RlIGZvciBoYW5kbGluZyBncm91cHMgdGhhdCBtYXkgbWF0Y2ggYW4gZW1wdHkgc3RyaW5nCiMgd29ya3Mgb24gYSB2ZXJ5IGxhcmdlIG51bWJlciBvZiBhbHRlcm5hdGl2ZXMuIFRoaXMgcGF0dGVybiB1c2VkIHRvIHByb3Zva2UgYQojIGNvbXBsYWludCB0aGF0IGl0IHdhcyB0b28gY29tcGxpY2F0ZWQuCgovKD86XFtBfEJ8Q3xEfEV8RnxHfEh8SXxKfF17MjAwfVopL2V4cGFuZAoKIyBUaGlzIG9uZSB1c2VkIHRvIGNvbXBpbGUgcnViYmlzaCBpbnN0ZWFkIG9mIGEgY29tcGlsZSBlcnJvciwgYW5kIHRoZW4KIyBiZWhhdmUgdW5wcmVkaWN0YWJseSBhdCBtYXRjaCB0aW1lLgoKLy4rKD8oP0MnWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFgnKSk/IVhYWFguPVgvCiAgICAuKyg/KD9DJ1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYJykpPyFYWFhYLj1YCgovWzpbOmFsbnVtOl0tW1thOmxudW06XSsvCgovKCg/KD9DJycpXFFYXEUoPyEoKD8oP0MnJykoPyFYPVgpKTs9KXIqWD1YKSk7PSkvCgovKCg/KD9DJycpXFFcRSg/ISgoPyg/QycnKSg/IVg9WCkpOz0pcipYPVgpKTs9KS8KCi9hYmNkL2F1dG9fY2FsbG91dAogICAgYWJjZFw9Y2FsbG91dF9lcnJvcj0yNTU6MgoKLygpKFxnKzY1NTM0KS8KCi8oKShcZys2NTUzMykvCgovwVx4MDBceDAwXHgwMBeaKFwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlwyKlx4MDBrXGQrXHgwMOKAjlx4MDBceDAwXHgwMFx4MDBceDAwXDIqXHgwMFx4MDBcMSouKXszNn1pbnReXHgwMFx4MDAI//9ceDAwmihcMXs1MDc3OX0/KUpcdzIvSQoKLyhhKShiKVwyXDFcMVwxXDEvSQoKLyg/PGE+YSkoPzxiPmIpXGd7Yn1cZ3thfVxne2F9XGd7YX1cZ3thfSg/PGE+eHgpKD88Yj56eikvSSxkdXBuYW1lcwoKLy8KICAgIFw9b3ZlY3Rvcj03Nzc3Nzc3Nzc3CgojIFRoaXMgaXMgaGVyZSBiZWNhdXNlIFBlcmwgbWF0Y2hlcywgZXZlbiB0aG91Z2ggYSBDT01NSVQgaXMgZW5jb3VudGVyZWQKIyBvdXRzaWRlIG9mIHRoZSByZWN1cnNpb24uCgovKD8xKShBKCpDT01NSVQpfEIpRC8KICAgIEJBWEJBRAoKIig/MSl7Mn0oYSkiQgoKIig/MSl7Miw0fShhKSJCCgojIFRoaXMgdGVzdCBkaWZmZXJzIGZyb20gUGVybCBmb3IgdGhlIGZpcnN0IHN1YmplY3QuIFBlcmwgZW5kcyB1cCB3aXRoCiMgJDEgc2V0IHRvICdCJzsgUENSRTIgaGFzIGl0IHVuc2V0ICh3aGljaCBJIHRoaW5rIGlzIHJpZ2h0KS4KCi9eKD86Cig/OkF8ICg/OkJ8QigqQUNDRVBUKSkgKD88PSguKSkgRCkKKFopCikrJC94CiAgICBBWkIKICAgIEFaQkRaCgojIFRoZSBmaXJzdCBvZiB0aGVzZSwgd2hlbiBydW4gYnkgUGVybCwgZ2l2ZXMgdGhlIG1hcmsgJ2FhJywgd2hpY2ggaXMgd3JvbmcuCgonKD8+YSgqOmFhKSlifGFjJyBtYXJrCiAgICBhYwoKJyg/OmEoKjphYSkpYnxhYycgbWFyawogICAgYWMKCi8oUj8pezY1fS8KICAgIChSPyl7NjV9CgovXFsoYSldezYwfS9leHBhbmQKICAgIGFhYWEKCi8oPzwhXDEoKD9VKTEoKD9VKSkpKSgqRikvbmV2ZXJfYmFja3NsYXNoX2MsYWx0X2JzdXgsYW5jaG9yZWQsZXh0ZW5kZWQKCi9cZ3szLwoKLyhhKD9DMSkoYikoYylkKSsvCiAgYWJjZGFiY2RcPWNhbGxvdXRfY2FwdHVyZQoKIyBQZXJsIG1hdGNoZXMgdGhpcyBvbmUsIGJ1dCBQQ1JFIGRvZXMgbm90IGJlY2F1c2UgKCpBQ0NFUFQpIGNsZWFycyBvdXQgYW55CiMgcGVuZGluZyBiYWNrdHJhY2tzIGluIHRoZSByZWN1cnNpb24uCgovXiAoPyhERUZJTkUpICguLigqQUNDRVBUKXwuLi4pICkgKD8xKSQveApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiYwoKIyBQZXJsIGdpdmVzIG5vIG1hdGNoIGZvciB0aGlzIG9uZQoKLyhhKCpNQVJLOm0pKCpBQ0NFUFQpKXswfSg/MSkvbWFyawogICAgYWJjCgovYWJjL2VuZGFuY2hvcmVkCiAgICB4eXphYmMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB4eXphYmNkZWYKXD0gRXhwZWN0IGVycm9yCiAgICB4eXphYmNcPXBoCgovYWJjLwogICAgeHl6YWJjXD1lbmRhbmNob3JlZApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHh5emFiY2RlZlw9ZW5kYW5jaG9yZWQKXD0gRXhwZWN0IGVycm9yCiAgICB4eXphYmNcPXBzLGVuZGFuY2hvcmVkCgovYWJjKCpBQ0NFUFQpZC9lbmRhbmNob3JlZAogICAgeHl6YWJjClw9IEV4cGVjdCBubyBtYXRjaAogICAgeHl6YWJjZGVmCgovYWJjfGJjZC9lbmRhbmNob3JlZAogICAgeHl6YWJjZApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHh5emFiY2RlZgoKL2EoKkFDQ0VQVCl4fGFhL2VuZGFuY2hvcmVkCiAgICBhYWEKCiMgQ2hlY2sgYXV0by1hbmNob3Jpbmcgd2hlbiB0aGVyZSBpcyBhIGdyb3VwIHRoYXQgaXMgbmV2ZXIgb2JleWVkIGF0CiMgdGhlIHN0YXJ0IG9mIGEgYnJhbmNoLgoKLyg/KERFRklORSkoYSkpXmJjL0kKCi8oYSl7MH0uKmJjL3NJCgojIFRoaXMgc2hvdWxkIGJlIGFuY2hvcmVkLCBhcyB0aGUgY29uZGl0aW9uIGlzIGFsd2F5cyBmYWxzZSBhbmQgdGhlcmUgaXMKIyBubyBhbHRlcm5hdGl2ZSBicmFuY2guCgovKD8oVkVSU0lPTj49OTk5KXllcyleYmMvSQoKIyBUaGlzIHNob3VsZCBub3QgYmUgYW5jaG9yZWQuCgovKD8oVkVSU0lPTj49OTk5KXllc3xubyleYmMvSQoKLygqTElNSVRfSEVBUD0wKXh4eC9JCgovXGR7MCwzfSgqOmFiYykoP0MxKXh4eC9jYWxsb3V0X2luZm8KCiMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKIyBUaGVzZSBhcmUgYSB3aG9sZSBwaWxlIG9mIHRlc3RzIHRoYXQgdG91Y2ggbGluZXMgb2YgY29kZSB0aGF0IGFyZSBub3QKIyB1c2VkIGJ5IGFueSBvdGhlciB0ZXN0cyAoYXQgbGVhc3Qgd2hlbiB0aGVzZSB3ZXJlIGNyZWF0ZWQpLgoKL15hKz94L2ksbm9fc3RhcnRfb3B0aW1pemUsbm9fYXV0b19wb3NzZXNzClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFhCgovXlteYV17Myx9P3gvaSxub19zdGFydF9vcHRpbWl6ZSxub19hdXRvX3Bvc3Nlc3MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBiYmIKICAgIGNjCgovXlhcUy9ub19zdGFydF9vcHRpbWl6ZSxub19hdXRvX3Bvc3Nlc3MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYCgovXlhcVy9ub19zdGFydF9vcHRpbWl6ZSxub19hdXRvX3Bvc3Nlc3MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYCgovXlhcSC9ub19zdGFydF9vcHRpbWl6ZSxub19hdXRvX3Bvc3Nlc3MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYCgovXlhcaC9ub19zdGFydF9vcHRpbWl6ZSxub19hdXRvX3Bvc3Nlc3MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYCgovXlhcVi9ub19zdGFydF9vcHRpbWl6ZSxub19hdXRvX3Bvc3Nlc3MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYCgovXlhcdi9ub19zdGFydF9vcHRpbWl6ZSxub19hdXRvX3Bvc3Nlc3MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYCgovXlhcaC9ub19zdGFydF9vcHRpbWl6ZSxub19hdXRvX3Bvc3Nlc3MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYWQoKL15YXFYvbm9fc3RhcnRfb3B0aW1pemUsbm9fYXV0b19wb3NzZXNzClw9IEV4cGVjdCBubyBtYXRjaAogICAgWFxuCgovXlhcdi9ub19zdGFydF9vcHRpbWl6ZSxub19hdXRvX3Bvc3Nlc3MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYWAoKL15YLis/L3Msbm9fc3RhcnRfb3B0aW1pemUsbm9fYXV0b19wb3NzZXNzClw9IEV4cGVjdCBubyBtYXRjaAogICAgWAoKL15YXFIrPy9ub19zdGFydF9vcHRpbWl6ZSxub19hdXRvX3Bvc3Nlc3MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYWAoKL15YXEgrPy9ub19zdGFydF9vcHRpbWl6ZSxub19hdXRvX3Bvc3Nlc3MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYCgovXlhcaCs/L25vX3N0YXJ0X29wdGltaXplLG5vX2F1dG9fcG9zc2VzcwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFgKCi9eWFxWKz8vbm9fc3RhcnRfb3B0aW1pemUsbm9fYXV0b19wb3NzZXNzClw9IEV4cGVjdCBubyBtYXRjaAogICAgWAogICAgWFxuCgovXlhcRCs/L25vX3N0YXJ0X29wdGltaXplLG5vX2F1dG9fcG9zc2VzcwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFgKICAgIFg5CgovXlhcUys/L25vX3N0YXJ0X29wdGltaXplLG5vX2F1dG9fcG9zc2VzcwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFgKICAgIFhcbgoKL15YXFcrPy9ub19zdGFydF9vcHRpbWl6ZSxub19hdXRvX3Bvc3Nlc3MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYCiAgICBYWAoKL15YLis/Wi9ub19zdGFydF9vcHRpbWl6ZSxub19hdXRvX3Bvc3Nlc3MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYWVxuCgovKCpDUkxGKV5YLis/Wi9ub19zdGFydF9vcHRpbWl6ZSxub19hdXRvX3Bvc3Nlc3MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYWVxyXD1wcwoKL15YXFIrP1ovbm9fc3RhcnRfb3B0aW1pemUsbm9fYXV0b19wb3NzZXNzClw9IEV4cGVjdCBubyBtYXRjaAogICAgWFxuWAogICAgWFxuXHJcbgogICAgWFxuXHJZCiAgICBYXG5cblkKICAgIFhcblx4ezBjfVkKCi8oKkJTUl9BTllDUkxGKV5YXFIrP1ovbm9fc3RhcnRfb3B0aW1pemUsbm9fYXV0b19wb3NzZXNzClw9IEV4cGVjdCBubyBtYXRjaAogICAgWFxuWAogICAgWFxuXHJcbgogICAgWFxuXHJZCiAgICBYXG5cblkKICAgIFhcblx4ezBjfVkKCi9eWFxIKz9aL25vX3N0YXJ0X29wdGltaXplLG5vX2F1dG9fcG9zc2VzcwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFhZXHQKICAgIFhZWQoKL15YXGgrP1ovbm9fc3RhcnRfb3B0aW1pemUsbm9fYXV0b19wb3NzZXNzClw9IEV4cGVjdCBubyBtYXRjaAogICAgWFx0XHQKICAgIFhcdFkKCi9eWFxWKz9aL25vX3N0YXJ0X29wdGltaXplLG5vX2F1dG9fcG9zc2VzcwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFhZXG4KICAgIFhZWQoKL15YXHYrP1ovbm9fc3RhcnRfb3B0aW1pemUsbm9fYXV0b19wb3NzZXNzClw9IEV4cGVjdCBubyBtYXRjaAogICAgWFxuXG4KICAgIFhcblkKCi9eWFxEKz9aL25vX3N0YXJ0X29wdGltaXplLG5vX2F1dG9fcG9zc2VzcwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFhZOQogICAgWFlZCgovXlhcZCs/Wi9ub19zdGFydF9vcHRpbWl6ZSxub19hdXRvX3Bvc3Nlc3MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYOTkKICAgIFg5WQoKL15YXFMrP1ovbm9fc3RhcnRfb3B0aW1pemUsbm9fYXV0b19wb3NzZXNzClw9IEV4cGVjdCBubyBtYXRjaAogICAgWFlcbgogICAgWFlZCgovXlhccys/Wi9ub19zdGFydF9vcHRpbWl6ZSxub19hdXRvX3Bvc3Nlc3MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBYXG5cbgogICAgWFxuWQoKL15YXFcrP1ovbm9fc3RhcnRfb3B0aW1pemUsbm9fYXV0b19wb3NzZXNzClw9IEV4cGVjdCBubyBtYXRjaAogICAgWC5BCiAgICBYKysKCi9eWFx3Kz9aL25vX3N0YXJ0X29wdGltaXplLG5vX2F1dG9fcG9zc2VzcwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFhhLgogICAgWGFhCgovXlguezEsM31aL3Msbm9fc3RhcnRfb3B0aW1pemUsbm9fYXV0b19wb3NzZXNzClw9IEV4cGVjdCBubyBtYXRjaAogICAgWGEuYmQKCi9eWFxoK1ovbm9fc3RhcnRfb3B0aW1pemUsbm9fYXV0b19wb3NzZXNzClw9IEV4cGVjdCBubyBtYXRjaAogICAgWFx0XHQKICAgIFhcdFkKCi9eWFxWK1ovbm9fc3RhcnRfb3B0aW1pemUsbm9fYXV0b19wb3NzZXNzClw9IEV4cGVjdCBubyBtYXRjaAogICAgWFlcbgogICAgWFlZCgovXihYKCpUSEVOKVl8QUIpezB9KD8xKS8KICAgIEFCWApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFhBQgoKL14oPyFBKD9DMSlCKUMvCiAgICBBQkNcPWNhbGxvdXRfZXJyb3I9MSxub19qaXQKCi9eKD8hQSg/QzEpQilDL25vX3N0YXJ0X29wdGltaXplCiAgICBBQkNcPWNhbGxvdXRfZXJyb3I9MQoKL14oPyg/IUEoP0MxKUIpQykvCiAgICBBQkNcPWNhbGxvdXRfZXJyb3I9MQoKIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgovW2EgYiBjXS9CeHhJCgovW2EgYiBjXS9CeHh4SQoKL1thIGIgY10vQixleHRlbmRlZF9tb3JlCgovWyBhIGIgYyBdL0IsZXh0ZW5kZWRfbW9yZQoKL1thIGJdKD94eDogWyAxMiBdICg/LXh4OlsgMzQgXSkgKXkgei9CCgojIFVuc2V0dGluZyAveCBhbHNvIHVuc2V0cyAveHgKCi9bYSBiXSg/eHg6IFsgMTIgXSAoPy14OlsgMzQgXSkgKXkgei9CCgovKGEpKD8tbjooYikpKGMpL25CCgojIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBUaGVzZSB0ZXN0IHRoZSBkYW5nZXJvdXMgUENSRTJfRVhUUkFfQkFEX0VTQ0FQRV9JU19MSVRFUkFMIG9wdGlvbi4KCi9calx4e3p9XG97ODJ9XExcdWFiY2RcdVxVXGd7XGcvQixcYmFkX2VzY2FwZV9pc19saXRlcmFsCgovXE57XGMvSUIsYmFkX2VzY2FwZV9pc19saXRlcmFsCgovW1xqXHh7en1cb1xnQWJcZ10vQixiYWRfZXNjYXBlX2lzX2xpdGVyYWwKCi9bUS1cTl0vQixiYWRfZXNjYXBlX2lzX2xpdGVyYWwKCi9bXHMtX10vYmFkX2VzY2FwZV9pc19saXRlcmFsCgovW18tXHNdL2JhZF9lc2NhcGVfaXNfbGl0ZXJhbAoKL1tcQlxSXFhdL0IKCi9bXEJcUlxYXS9CLGJhZF9lc2NhcGVfaXNfbGl0ZXJhbAoKL1tBLVxCUC1cUlYtXFhdL0IKCi9bQS1cQlAtXFJWLVxYXS9CLGJhZF9lc2NhcGVfaXNfbGl0ZXJhbAoKIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgovYVxiKGMvbGl0ZXJhbAogICAgYVxcYihjCgovYVxiKGMvbGl0ZXJhbCxjYXNlbGVzcwogICAgYVxcYihjCiAgICBhXFxCKGMKCi9hXGIoYy9saXRlcmFsLGZpcnN0bGluZQogICAgWFlZYVxcYihjClw9IEV4cGVjdCBubyBtYXRjaAogICAgWFxuYVxcYihjCgovYVxiP2MvbGl0ZXJhbCx1c2Vfb2Zmc2V0X2xpbWl0CiAgICBYWFhYYVxcYj9jXD1vZmZzZXRfbGltaXQ9NApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFhYWFhhXFxiP2NcPW9mZnNldF9saW1pdD0zCgovYVxiKGMvbGl0ZXJhbCxhbmNob3JlZCxlbmRhbmNob3JlZAogICAgYVxcYihjClw9IEV4cGVjdCBubyBtYXRjaAogICAgWGFcXGIoYwogICAgYVxcYihjWAogICAgWGFcXGIoY1gKCi8vbGl0ZXJhbCxleHRlbmRlZAoKL2FcYihjL2xpdGVyYWwsYXV0b19jYWxsb3V0LG5vX3N0YXJ0X29wdGltaXplCiAgICBYWFhYYVxcYihjCgovYVxiKGMvbGl0ZXJhbCxhdXRvX2NhbGxvdXQKICAgIFhYWFhhXFxiKGMKCi8oKkNSKWFiYy9saXRlcmFsCiAgICAoKkNSKWFiYwoKL2NhdHxkb2cvSSxtYXRjaF93b3JkCiAgICB0aGUgY2F0IHNhdApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGNhdGVycGlsbGFyCiAgICBzbm93Y2F0CiAgICBzeW5kaWNhdGUKCi8oY2F0KXxkb2cvSSxtYXRjaF9saW5lLGxpdGVyYWwKICAgIChjYXQpfGRvZwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHRoZSBjYXQgc2F0CiAgICBjYXRlcnBpbGxhcgogICAgc25vd2NhdAogICAgc3luZGljYXRlCgovYSB3aG9sZSBsaW5lL21hdGNoX2xpbmUsbXVsdGlsaW5lCiAgICBSaHViYXJiIFxuYSB3aG9sZSBsaW5lXG4gY3VzdGFyZApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIE5vdCBhIHdob2xlIGxpbmUKCiMgUGVybCBnZXRzIHRoaXMgd3JvbmcsIGZhaWxpbmcgdG8gY2FwdHVyZSAnYicgaW4gZ3JvdXAgMS4KCi9eKGIrfGEpezEsMn0/YmMvCiAgICBiYmMKICAgIAojIEFuZCBhZ2FpbiBoZXJlLCBmb3IgdGhlICJiYWJjIiBzdWJqZWN0IHN0cmluZy4gCgovXihiKnxiYSl7MSwyfT9iYy8KICAgIGJhYmMKICAgIGJiYWJjCiAgICBiYWJhYmMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBiYWJhYmJjCiAgICBiYWJhYmFiYwoKL1tbOmRpZ2l0Ol0tYV0vCgovW1s6ZGlnaXQ6XS1bOnByaW50Ol1dLwoKL1tcZC1hXS8KCi9bXEgtel0vCgovW1xkLVs6cHJpbnQ6XV0vCgojIFBlcmwgZ2V0cyB0aGUgc2Vjb25kIG9mIHRoZXNlIHdyb25nLCBnaXZpbmcgbm8gbWF0Y2guCgoiKD88PShhKSlcMT9iIkkKICAgIGFiCiAgICBhYWFiIAoKIig/PShhKSlcMT9iIkkKICAgIGFiCiAgICBhYWFiCiAgICAKIyBKSVQgZG9lcyBub3Qgc3VwcG9ydCBjYWxsb3V0X2V4dHJhICAKICAgIAovKCpOT19KSVQpKGErKWIvYXV0b19jYWxsb3V0LG5vX3N0YXJ0X29wdGltaXplLG5vX2F1dG9fcG9zc2VzcwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhY1w9Y2FsbG91dF9leHRyYSAKICAgIAovKCpOT19KSVQpYSsoP0MnWFhYJyliL25vX3N0YXJ0X29wdGltaXplLG5vX2F1dG9fcG9zc2VzcwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhY1w9Y2FsbG91dF9leHRyYSAKCi9cbi9maXJzdGxpbmUKICAgIHh5elxuYWJjCgovXG5hYmMvZmlyc3RsaW5lCiAgICB4eXpcbmFiYwoKL1x4ezBhfWFiYy9maXJzdGxpbmUsbmV3bGluZT1jcmxmClw9IEV4cGVjdCBubyBtYXRjaAogICAgeHl6XHJcbmFiYwoKL1thYmNdL2ZpcnN0bGluZQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFxuYQogICAgCiMgVGhlc2UgdGVzdHMgYXJlIG1hdGNoZWQgaW4gdGVzdCAxIGFzIHRoZXkgYXJlIFBlcmwgY29tcGF0aWJsZS4gSGVyZSB3ZSBhcmUKIyBsb29raW5nIGF0IHdoYXQgZG9lcyBhbmQgZG9lcyBub3QgZ2V0IGF1dG8tcG9zc2Vzc2lmaWVkLiAKCi8oPyhERUZJTkUpKD88b3B0aW9uYWxfYT5hPykpXig/Jm9wdGlvbmFsX2EpYSQvQgoKLyg/KERFRklORSkoPzxvcHRpb25hbF9hPmE/KVgpXig/Jm9wdGlvbmFsX2EpYSQvQgogICAgCi9eKGE/KWIoPzEpYS9CCgovXihhPykrYig/MSlhL0IKCi9eKGE/KSsrYig/MSlhL0IKCi9eKGE/KStiL0IKCi8oPz1hKylhKGErKSsrYi9CCgovKD88PSg/PS4pezQsNX14KS9CCgojIFBlcmwgYmVoYXZlcyBkaWZmZXJlbnRseSB3aXRoIHRoZXNlIHdoZW4gb3B0aW1pemF0aW9uIGlzIHR1cm5lZCBvZmYKCi9hKCpQUlVORTpYKWJjfHFxL21hcmssbm9fc3RhcnRfb3B0aW1pemUKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBheHkKCi9hKCpUSEVOOlgpYmN8cXEvbWFyayxub19zdGFydF9vcHRpbWl6ZQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGF4eQoKLyg/XngtaSlBQi8gCgovKD9eLWkpQUIvIAoKLyg/eC1pLWkpLwoKLyg/KD89XikpYi9JCiAgICBhYmMKCi8oPyg/PV4pfCliL0kKICAgIGFiYwoKLyg/KD89Xil8XiliL0kKICAgIGJiYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiYyAgICAgCgovKD8oMSlefF4oKSkvSQoKLyg/KDEpXigpKWIvSQoKLyg/KDEpXigpKStiL0ksYWZ0ZXJ0ZXh0CiAgICBhYmMKCi8oPygxKV4oKXxeKStiL0ksYWZ0ZXJ0ZXh0CiAgICBiYmMgClw9IEV4cGVjdCBubyBtYXRjaCAgICAgCiAgICBhYmMKCi8oPygxKV4oKXxeKSpiL0ksYWZ0ZXJ0ZXh0CiAgICBiYmMgCiAgICBhYmMKICAgIHhiYyAKCi8oPygxKV4oKSkrYi9JLGFmdGVydGV4dAogICAgYWJjCgovKD8oMSleYSgpfF5hKStiL0ksYWZ0ZXJ0ZXh0CiAgICBhYmMgClw9IEV4cGVjdCBubyBtYXRjaCAgICAgCiAgICBiYmMKCi8oPygxKV58XihhKSkrYi9JLGFmdGVydGV4dAogICAgYWJjIApcPSBFeHBlY3Qgbm8gbWF0Y2ggICAgIAogICAgYmJjCgovKD8oMSleYSgpfF5hKSpiL0ksYWZ0ZXJ0ZXh0CiAgICBhYmMgCiAgICBiYmMKICAgIHhiYyAKCi9hKGIpY3x4eXovZyxhbGx2ZWN0b3IscmVwbGFjZT08JDA+CiAgICBhYmNkZWZhYmNwcXJcPW92ZWN0b3I9NAogICAgYWJ4eXpcPW92ZWN0b3I9NAogICAgYWJjZGVmeHl6XD1vdmVjdG9yPTQKICAgIAovYShiKWN8eHl6L2FsbHZlY3RvcgogICAgYWJjZGVmXD1vdmVjdG9yPTQKICAgIGFieHl6XD1vdmVjdG9yPTQKCi9hKGIpY3x4eXovZyxyZXBsYWNlPTwkMD4sc3Vic3RpdHV0ZV9jYWxsb3V0CiAgICBhYmNkZWZhYmNwcXIKICAgIGFieHl6cHFyYWJjeHl6CiAgICAxMmFiYzM0eHl6OTlhYmM1NVw9c3Vic3RpdHV0ZV9zdG9wPTIKICAgIDEyYWJjMzR4eXo5OWFiYzU1XD1zdWJzdGl0dXRlX3NraXA9MQogICAgMTJhYmMzNHh5ejk5YWJjNTVcPXN1YnN0aXR1dGVfc2tpcD0yCgovYShiKWN8eHl6L2cscmVwbGFjZT08JDA+CiAgICBhYmNkZWZhYmNwcXIKICAgIGFieHl6cHFyYWJjeHl6CiAgICAxMmFiYzM0eHl6XD1zdWJzdGl0dXRlX3N0b3A9MgogICAgMTJhYmMzNHh5elw9c3Vic3RpdHV0ZV9za2lwPTEKCi9hKGIpY3x4eXovcmVwbGFjZT08JDA+CiAgICBhYmNkZWZhYmNwcXIKICAgIDEyYWJjMzR4eXpcPXN1YnN0aXR1dGVfc2tpcD0xCiAgICAxMmFiYzM0eHl6XD1zdWJzdGl0dXRlX3N0b3A9MQoKL2FiY1xyZGVmLwogICAgYWJjXG5kZWYKCi9hYmNccmRlZlx4ezBkfXh5ei9lc2NhcGVkX2NyX2lzX2xmCiAgICBhYmNcbmRlZlxyeHl6Clw9IEV4cGVjdCBubyBtYXRjaCAgICAgCiAgICBhYmNcbmRlZlxueHl6CgovKD8oKkFDQ0VQVCl4eHgpLwoKLyg/KCphdG9taWM6eHgpeHh4KS8KCi8oPygqc2NyaXB0X3J1bjp4eHgpenp6KS8KCi9mb29iYXIvCiAgICB0aGUgZm9vYmFyIHRoaW5nXD1jb3B5X21hdGNoZWRfc3ViamVjdAogICAgdGhlIGZvb2JhciB0aGluZ1w9Y29weV9tYXRjaGVkX3N1YmplY3QsemVyb190ZXJtaW5hdGUKCi9mb29iYXIvZwogICAgdGhlIGZvb2JhciB0aGluZyBmb29iYXIgYWdhaW5cPWNvcHlfbWF0Y2hlZF9zdWJqZWN0CgovKCo6WFgpXmFiYy9JCgovKCpDT01NSVQ6WFgpXmFiYy9JCgovKCpBQ0NFUFQ6WFgpXmFiYy9JCgovYWJjL3JlcGxhY2U9eHl6CiAgICBhYmNcPW51bGxfY29udGV4dAoKL2FiYy9yZXBsYWNlPXh5eixzdWJzdGl0dXRlX2NhbGxvdXQKICAgIGFiYyAKXD0gRXhwZWN0IGVycm9yIG1lc3NhZ2UKICAgIGFiY1w9bnVsbF9jb250ZXh0CgojIEVuZCBvZiB0ZXN0aW5wdXQyCg==