Last active
November 19, 2024 08:04
-
-
Save terasakisatoshi/c2c640d0d0a72b51443b1c9e5ec9a360 to your computer and use it in GitHub Desktop.
Having a type-stable implementation is still important
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html><html lang="en"><head><meta name="viewport" content="width=device-width"><meta charset="utf-8"> | |
<meta name="pluto-insertion-spot-meta"> | |
<meta name="theme-color" media="(prefers-color-scheme: light)" content="white"><meta name="theme-color" media="(prefers-color-scheme: dark)" content="#2a2928"><meta name="color-scheme" content="light dark"><link rel="icon" type="image/png" sizes="16x16" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/favicon-16x16.347d2855.png" integrity="sha384-3qsGeVLdddzV9oIkj3PhXXQX2CZCjOD/CiyrPQOX6InOWw3HAHClrsQhPfX9uRAj" crossorigin="anonymous"><link rel="icon" type="image/png" sizes="32x32" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/favicon-32x32.8789add4.png" integrity="sha384-cOe5vSoBIgKNgkUL27p9RpsGVY0uBg9PejLccDy+fR8ZD1Iv5dF1MGHjIZAIZwm6" crossorigin="anonymous"><link rel="icon" type="image/png" sizes="96x96" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/favicon-96x96.48689391.png" integrity="sha384-TN49cYb8GyNmrZT14bsYXXo4l1x1NJeJ/EHuVAauAKsNPopPHLojijs9jFT4Vs8c" crossorigin="anonymous"><link rel="pluto-logo-big" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/logo.004c1d7c.svg" integrity="sha384-GkQkODcGxsrSRJCkeakBXihum0GUM44cwBgKyutDimectXCbCgj6Vu3jlrueqEcN" crossorigin="anonymous"><link rel="pluto-logo-small" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/favicon_unsaturated.d1387b25.svg" integrity="sha384-omwjH+Qy3hpAVf5FYd/pkaDBuVAfsEDRN7eBxEA8Ek00OAWP+aiV+GpEYk3I7lyo" crossorigin="anonymous"><script type="module" src="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.7330d793.js" integrity="sha384-+mLMSKQxWEYKJeUt5VTdKTDfzHvui0mdMSd+iIQKYybm+6crs+6FeCr73c8yxir6" crossorigin="anonymous"></script><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.c9b6b472.css" integrity="sha384-/r++eFqY+MX24zOPLVQ1SEXsNKaMgaiC42LUbooLnc1+zar5i0Ih+sKH5dM93WL4" crossorigin="anonymous"><script defer="">console.log("Pluto.jl, by Fons van der Plas (https://github.com/fonsp), Mikołaj Bochenski (https://github.com/malyvsen), Michiel Dral (https://github.com/dralletje) and friends 🌈");</script><script src="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.b8733d72.js" defer="" integrity="sha384-84yPd6AGZ/1IUiaBlssipmMKMFz9WGFQ+u8vYZ9cWicH6bZm7ZOej+kLDXnIIAQJ" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.9f9dc874.js" defer="" integrity="sha384-tkFo1EK72I9JvoTmHFa199dfRzW8mkXPUkHb/N7UhYI+bxKzX3Kh8LNCZz1ltsFF" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.90ede145.js" defer="" integrity="sha384-CuNU9gQg6fa/yynNqNWjHWzPm4nj+d7O6+HXsNGSqClhs/bYQIbBC3Lw/kh8Ukui" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.dbeed08a.js" defer="" integrity="sha384-1BEdQwXfZi4ZpsNV8w1X8pQcVK1/DS/+/M8OTo3gol7mdEspSN7nT6llX57NQCSt" crossorigin="anonymous"></script><script id="iframe-resizer-content-window-script" src="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.6386bd9d.js" crossorigin="anonymous" defer="" integrity="sha384-tgN2a0VDi/lCYwZuDqT7L+A/Y/9kpxf3HV7zv2BJ5Fu7zW0EClq0nM4crfK3TRPs"></script><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.bc9e2665.css" type="text/css" integrity="sha384-59NqevPZCCG832BH9e2evhbSnqWan7JP2XQxpwB8iVQmI0EUzKtmW1rAynAgdTee" crossorigin="anonymous"><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.25621fbe.css" type="text/css" media="all" data-pluto-file="hide-ui" integrity="sha384-rW+pJQkiASFs1ishWQq4PQ+lLndxkt1hQ2c5/BaM/b8Bb310robPSiRTwkVrbTz0" crossorigin="anonymous"><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.d0a5b1f0.css" type="text/css" integrity="sha384-oUdA9RJhs9IlGgJOs6m3tNmyOqOLTPOfpCXeXLUex2W5KOLfSAdyT5HoVuwUEFDQ" crossorigin="anonymous"><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.6b85892a.css" type="text/css" integrity="sha384-ztZowizZO6B4Jr667yW8YrVsT81V3YlLDpT89ptuH7F+ldMihmR2Qg7zGJ4rgtlR" crossorigin="anonymous"><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.09b09a3f.css" type="text/css" integrity="sha384-dHB2VzrvTc7+CLgp62sndIQSbzeitJhO8vZnxV2zNlO4GHz83BZPqsY+0nTAF7WO" crossorigin="anonymous"><script data-pluto-file="launch-parameters"> | |
window.pluto_notebook_id = undefined; | |
window.pluto_isolated_cell_ids = undefined; | |
window.pluto_notebookfile = "data:text/julia;charset=utf-8;base64,IyMjIEEgUGx1dG8uamwgbm90ZWJvb2sgIyMjCiMgdjAuMjAuMwoKdXNpbmcgTWFya2Rvd24KdXNpbmcgSW50ZXJhY3RpdmVVdGlscwoKIyBUaGlzIFBsdXRvIG5vdGVib29rIHVzZXMgQGJpbmQgZm9yIGludGVyYWN0aXZpdHkuIFdoZW4gcnVubmluZyB0aGlzIG5vdGVib29rIG91dHNpZGUgb2YgUGx1dG8sIHRoZSBmb2xsb3dpbmcgJ21vY2sgdmVyc2lvbicgb2YgQGJpbmQgZ2l2ZXMgYm91bmQgdmFyaWFibGVzIGEgZGVmYXVsdCB2YWx1ZSAoaW5zdGVhZCBvZiBhbiBlcnJvcikuCm1hY3JvIGJpbmQoZGVmLCBlbGVtZW50KQogICAgIyEgZm9ybWF0OiBvZmYKICAgIHF1b3RlCiAgICAgICAgbG9jYWwgaXYgPSB0cnkgQmFzZS5sb2FkZWRfbW9kdWxlc1tCYXNlLlBrZ0lkKEJhc2UuVVVJRCgiNmU2OTZjNzItNjU0Mi0yMDY3LTcyNjUtNDIyMDZjNzU2MTUwIiksICJBYnN0cmFjdFBsdXRvRGluZ2V0amVzIildLkJvbmRzLmluaXRpYWxfdmFsdWUgY2F0Y2g7IGIgLT4gbWlzc2luZzsgZW5kCiAgICAgICAgbG9jYWwgZWwgPSAkKGVzYyhlbGVtZW50KSkKICAgICAgICBnbG9iYWwgJChlc2MoZGVmKSkgPSBDb3JlLmFwcGxpY2FibGUoQmFzZS5nZXQsIGVsKSA/IEJhc2UuZ2V0KGVsKSA6IGl2KGVsKQogICAgICAgIGVsCiAgICBlbmQKICAgICMhIGZvcm1hdDogb24KZW5kCgojIOKVlOKVkOKVoSBjZDJkNzkxYy1hNGI4LTExZWYtMjI2NC0wZmEwZDU4MWY4YzAKYmVnaW4KCXVzaW5nIEJhc2U2NAoJdXNpbmcgQ29kZUV2YWx1YXRpb24KCXVzaW5nIEJlbmNobWFya1Rvb2xzCmVuZAoKIyDilZTilZDilaEgNWRkZTQ2ZTktNGJmNC00OWJkLTlmNjctNmM1ZjI0ODlhYzNjCmJlZ2luCgl1c2luZyBQbHV0b1VJCgl1c2luZyBIeXBlcnRleHRMaXRlcmFsCmVuZAoKIyDilZTilZDilaEgMTIwYzUyOGItMzEwMC00OTg0LTljNTgtYWE0MjgwYjdkOTBhCmJlZ2luCgl1c2luZyBJbnRlcmFjdGl2ZVV0aWxzCgkKCWZ1bmN0aW9uIGYoeCkKCQl4ID4gMCA/IHggOiAwCgllbmQKCQoJZnVuY3Rpb24gZyh4KQoJCXggPiB6ZXJvKHgpID8geCA6IHplcm8oeCkKCWVuZAplbmQKCiMg4pWU4pWQ4pWhIDI2MmJlZThjLTg5NWQtNDcwYy1hNzNlLWM2YTlmOTU1NGVjOAptZCIiIgojIEhhdmluZyBhIHR5cGUtc3RhYmxlIGltcGxlbWVudGF0aW9uIGlzIHN0aWxsIGltcG9ydGFudCBpbiBKdWxpYS4KIiIiCgojIOKVlOKVkOKVoSAwNmE2YTk2Zi04ZGEwLTRjYmYtOWNmZS01MDIyZDk0NTFjZGUKIyBDaGFuZ2Ugc3R5bGVzIHRoYXQgbWFrZSBjZWxscyBiZSB3aWRlCmh0bWwiIiIKPHN0eWxlPgptYWluIHsKbWFyZ2luOiAwIGF1dG87Cm1heC13aWR0aDogMjAwMHB4OwogICAgcGFkZGluZy1sZWZ0OiBtYXgoNTBweCwgNSUpOwogICAgcGFkZGluZy1yaWdodDogbWF4KDUwcHgsIDUlKTsKfQo8L3N0eWxlPgoiIiIKCiMg4pWU4pWQ4pWhIDg3MTNkMmMzLWNmMGUtNGM0NS1iZTA2LTZjYTBlYzc3M2Q1NApmdW5jdGlvbiBjbGVhbl9hbnNpX2VzY2FwZShzKQoJIyBSZWd1bGFyIGV4cHJlc3Npb24gcGF0dGVybiB0byBtYXRjaCBBTlNJIGVzY2FwZSBzZXF1ZW5jZXMKCWFuc2lfZXNjYXBlX3BhdHRlcm4gPSByIlxlXFtbMC05O10qbSIKCSMgUmVwbGFjZSBBTlNJIGVzY2FwZSBzZXF1ZW5jZXMgd2l0aCBlbXB0eSBzdHJpbmdzCglzX2NsZWFuID0gcmVwbGFjZShzLCBhbnNpX2VzY2FwZV9wYXR0ZXJuID0+ICIiKQoJcmV0dXJuIHNfY2xlYW4KZW5kCgojIOKVlOKVkOKVoSBkOTAwM2RjMC03MGU2LTQ3MzItYmU3Zi0yNzRkYmJlMzhlYzcKQGNvZGVfd2FybnR5cGUgZigxLjApCgojIOKVlOKVkOKVoSA4NGMxNjlmNy01Yzc1LTQ2MWMtODY0My1hNzE0NDMyM2M3MTgKQGNvZGVfd2FybnR5cGUgZygxLjApCgojIOKVlOKVkOKVoSBiMDEyYzRlMC00M2E5LTQwZTgtOWI0YS1lNjQzYTQ5MjllODkKIyB0aGlzIGNhdXNlcyB0eXBlIGluc3RhYmlsaXR5CkBiZW5jaG1hcmsgZih4KSBzZXR1cD1iZWdpbgoJeCA9IHJhbmQoKQplbmQgc2FtcGxlcz0xMDAwMDAwCgojIOKVlOKVkOKVoSA0NWE4ZTY1Ni02ZDZlLTQ1Y2EtYTY5NS0wZWE3MDZkMjRmNTAKIyB0eXBlIHN0YWJsZSBpbXBsZW1lbnRhdGlvbgpAYmVuY2htYXJrIGcoeCkgc2V0dXA9YmVnaW4KCXggPSByYW5kKCkKZW5kIHNhbXBsZXM9MTAwMDAwMAoKIyDilZTilZDilaEgZTYwYzJlN2UtZWQ3YS00Y2JlLWE1MzctNWVkMTM4MWNiMTBmCmJlZ2luCglkZWZhdWx0X2NvZGVfY29tbW9uID0gIiIiCgl1c2luZyBJbnRlcmFjdGl2ZVV0aWxzCgkKCWZ1bmN0aW9uIGNvZGVBKHgpCgkJeCA+IDAgPyB4IDogMAoJZW5kCgkKCWZ1bmN0aW9uIGNvZGVCKHgpCgkJeCA+IDAgPyB4IDogemVybyh4KQoJZW5kCgkiIiIKCglkZWZhdWx0X2NvZGVBID0gIiIiCgkjIGNvZGVBCglAY29kZV9sbHZtIGRlYnVnaW5mbz06bm9uZSBjb2RlQSgxLjApCgkiIiIKCglkZWZhdWx0X2NvZGVCID0gIiIiCgkjIGNvZGVCCglAY29kZV9sbHZtIGRlYnVnaW5mbz06bm9uZSBjb2RlQigxLjApCgkiIiIKCgl1aV9jb21tb24gPSBAYmluZCBjb2RlX2NvbW1vbiBQbHV0b1VJLlRleHRGaWVsZCgoODQsIDEwKSwgZGVmYXVsdD1kZWZhdWx0X2NvZGVfY29tbW9uKQoJdWlfY29kZUEgPSBAYmluZCBjb2RlQSBQbHV0b1VJLlRleHRGaWVsZCgoNDAsIDgpLCBkZWZhdWx0PWRlZmF1bHRfY29kZUEpCgl1aV9jb2RlQiA9IEBiaW5kIGNvZGVCIFBsdXRvVUkuVGV4dEZpZWxkKCg0MCwgOCksIGRlZmF1bHQ9ZGVmYXVsdF9jb2RlQikKCglQbHV0b1VJLkV4cGVyaW1lbnRhbExheW91dC52Ym94KAoJCVsKCQkJdWlfY29tbW9uLAoJCQlQbHV0b1VJLkV4cGVyaW1lbnRhbExheW91dC5oYm94KFt1aV9jb2RlQSwgVGV4dCgiICIpLCB1aV9jb2RlQl0pCgkJXQoJCQoJKQplbmQKCiMg4pWU4pWQ4pWhIDMwNDBjMzQxLWUwZDUtNGZlZi04MDkxLTExNWJlZTQ1NmQxMgpiZWdpbgoJc2IxID0gQ29kZUV2YWx1YXRpb24uU2FuZGJveCgpCglzYjIgPSBDb2RlRXZhbHVhdGlvbi5TYW5kYm94KCkKCglDb2RlRXZhbHVhdGlvbi5jb2RlYmxvY2shKHNiMSwgY29kZV9jb21tb24pCglyMSA9IENvZGVFdmFsdWF0aW9uLmNvZGVibG9jayEoc2IxLCBjb2RlQSkKCUNvZGVFdmFsdWF0aW9uLmNvZGVibG9jayEoc2IyLCBjb2RlX2NvbW1vbikKCXIyID0gQ29kZUV2YWx1YXRpb24uY29kZWJsb2NrIShzYjIsIGNvZGVCKQoKCWlmIGlzbm90aGluZyhyMS52YWx1ZSkKCQlvMSA9IGNsZWFuX2Fuc2lfZXNjYXBlKHIxLm91dHB1dCkKCWVsc2UKCQlvMSA9IHN0cmluZyhyMS52YWx1ZSkKCWVuZAoJCglpZiBpc25vdGhpbmcocjIudmFsdWUpCgkJbzIgPSBjbGVhbl9hbnNpX2VzY2FwZShyMi5vdXRwdXQpCgllbHNlCgkJbzIgPSBzdHJpbmcocjIudmFsdWUpCgllbmQKZW5kCgojIOKVlOKVkOKVoSA0OTA2YTViNS1iYWRlLTQwN2YtOTg5NS04NzRmYmNjMDJmMDYKQGJpbmQgb3V0QSBQbHV0b1VJLlRleHRGaWVsZCgoODAsIDUpLCBkZWZhdWx0PW8xKQoKIyDilZTilZDilaEgYjJjYWQxMTMtMzdiYS00MDc0LTljODEtZGRjYjFhZWNiZmViCkBiaW5kIG91dEIgUGx1dG9VSS5UZXh0RmllbGQoKDgwLCA1KSwgZGVmYXVsdD1vMikKCiMg4pWU4pWQ4pWhIDZlZGJlMDY5LTNjNGUtNDYxZC1hY2VmLWVmZmViZmM2YjAwMQpmdW5jdGlvbiBkaWZmanMobzE6OlN0cmluZywgbzI6OlN0cmluZykKCW8xYnVmID0gSU9CdWZmZXIoKQoJbzJidWYgPSBJT0J1ZmZlcigpCgl3cml0ZShvMWJ1ZiwgbzEpCgl3cml0ZShvMmJ1ZiwgbzIpCgliNjRvMSA9IGJhc2U2NGVuY29kZShTdHJpbmcodGFrZSEobzFidWYpKSkKCWI2NG8yID0gYmFzZTY0ZW5jb2RlKFN0cmluZyh0YWtlIShvMmJ1ZikpKQoJCglkaWZmanN0ZW1wbGF0ZSA9ICIiIgpmdW5jdGlvbiBkZWNvZGVCYXNlNjQoYmFzZTY0U3RyaW5nKSB7CiAgICBjb25zdCBwcmVmaXggPSAiZGF0YTp0ZXh0L3BsYWluO2Jhc2U2NCwiOwogICAgaWYgKGJhc2U2NFN0cmluZy5zdGFydHNXaXRoKHByZWZpeCkpIHsKICAgICAgICBiYXNlNjRTdHJpbmcgPSBiYXNlNjRTdHJpbmcuc2xpY2UocHJlZml4Lmxlbmd0aCk7CiAgICB9CiAgICBjb25zdCBkZWNvZGVkRGF0YSA9IGF0b2IoYmFzZTY0U3RyaW5nKTsKICAgIHJldHVybiBkZWNvZGVkRGF0YTsKfQoKcmVxdWlyZS5jb25maWcoeyBwYXRoczogeyB2czogJ2h0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL21vbmFjby1lZGl0b3IvMC41Mi4wL21pbi92cycgfX0pOwoKcmVxdWlyZShbJ3ZzL2VkaXRvci9lZGl0b3IubWFpbiddLCAoKSA9PiB7Cgl2YXIgZGlmZkVkaXRvciA9IG1vbmFjby5lZGl0b3IuY3JlYXRlRGlmZkVkaXRvcihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbXljb250YWluZXInKSk7CglsZXQgb3JpZ2luYWxUeHQgPSBkZWNvZGVCYXNlNjQoIiQoYjY0bzEpIik7CglsZXQgbW9kaWZpZWRUeHQgPSBkZWNvZGVCYXNlNjQoIiQoYjY0bzIpIik7Cgljb25zb2xlLmxvZyhtb2RpZmllZFR4dCkKCWRpZmZFZGl0b3Iuc2V0TW9kZWwoewoJCW9yaWdpbmFsOiBtb25hY28uZWRpdG9yLmNyZWF0ZU1vZGVsKG9yaWdpbmFsVHh0LCAnanVsaWEnKSwKCQltb2RpZmllZDogbW9uYWNvLmVkaXRvci5jcmVhdGVNb2RlbChtb2RpZmllZFR4dCwgJ2p1bGlhJykKCX0pOwp9KTsKIiIiCglkaWZmanN0ZW1wbGF0ZQplbmQKCiMg4pWU4pWQ4pWhIGFmMDZlYTgyLWE0MTgtNGNhMy1iMzM4LTExZmY2MzhjOWI1YgpiZWdpbgoJZGlmZmJ1ZiA9IElPQnVmZmVyKCkKCXdyaXRlKGRpZmZidWYsIGRpZmZqcyhvMSxvMikpCgliNjRkaWZmID0gYmFzZTY0ZW5jb2RlKFN0cmluZyh0YWtlIShkaWZmYnVmKSkpCgliNjRkaWZmID0gImRhdGE6dGV4dC9qYXZhc2NyaXB0O2Jhc2U2NCwkKGI2NGRpZmYpIgoJd3JpdGUoImRpZmYuanMiLCBkaWZmanMobzEsbzIpKQoJQGh0bCAiIiIKCTxzY3JpcHQgc3JjPSJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9yZXF1aXJlLmpzLzIuMy43L3JlcXVpcmUuanMiPjwvc2NyaXB0PgoJPHNjcmlwdCBzcmM9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL21vbmFjby1lZGl0b3IvMC41Mi4wL21pbi92cy9sb2FkZXIuanMiPjwvc2NyaXB0PgoJCgk8aDI+TW9uYWNvIERpZmYgRWRpdG9yIFNhbXBsZTwvaDI+Cgk8ZGl2IGlkPSJteWNvbnRhaW5lciIgc3R5bGU9IndpZHRoOiAxNTAwcHg7IGhlaWdodDogNTAwcHg7IGJvcmRlcjogMXB4IHNvbGlkIGdyZXkiPjwvZGl2PgoJJChQbHV0b1VJLkxvY2FsUmVzb3VyY2UoImRpZmYuanMiKSkKCSIiIgplbmQKCiMg4pWU4pWQ4pWhIDAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwMDAwMQpQTFVUT19QUk9KRUNUX1RPTUxfQ09OVEVOVFMgPSAiIiIKW2RlcHNdCkJhc2U2NCA9ICIyYTBmNDRlMy02YzgzLTU1YmQtODdlNC1iMTk3OGQ5OGJkNWYiCkJlbmNobWFya1Rvb2xzID0gIjZlNGI4MGY5LWRkNjMtNTNhYS05NWEzLTBjZGIyOGZhOGJhZiIKQ29kZUV2YWx1YXRpb24gPSAiNWEwNzY2MTEtOTZjYi00ZjAyLTlkM2EtOWUzMDlmMDZmOGZmIgpIeXBlcnRleHRMaXRlcmFsID0gImFjMTE5MmE4LWY0YjMtNGJmZS1iYTIyLWFmNWI5MmNkM2FiMiIKSW50ZXJhY3RpdmVVdGlscyA9ICJiNzdlMGE0Yy1kMjkxLTU3YTAtOTBlOC04ZGIyNWEyN2EyNDAiClBsdXRvVUkgPSAiN2Y5MDRkZmUtYjg1ZS00ZmY2LWI0NjMtZGFlMjI5MjM5NmE4IgoKW2NvbXBhdF0KQmVuY2htYXJrVG9vbHMgPSAifjEuNS4wIgpDb2RlRXZhbHVhdGlvbiA9ICJ+MC4wLjEiCkh5cGVydGV4dExpdGVyYWwgPSAifjAuOS41IgpQbHV0b1VJID0gIn4wLjcuNjAiCiIiIgoKIyDilZTilZDilaEgMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAyClBMVVRPX01BTklGRVNUX1RPTUxfQ09OVEVOVFMgPSAiIiIKIyBUaGlzIGZpbGUgaXMgbWFjaGluZS1nZW5lcmF0ZWQgLSBlZGl0aW5nIGl0IGRpcmVjdGx5IGlzIG5vdCBhZHZpc2VkCgpqdWxpYV92ZXJzaW9uID0gIjEuMTEuMSIKbWFuaWZlc3RfZm9ybWF0ID0gIjIuMCIKcHJvamVjdF9oYXNoID0gImE1ODZjOGY0MWQ2ODkwNmNjYjkxMTVjMzI3OWM0MjgwYzFkMWEzMmUiCgpbW2RlcHMuQWJzdHJhY3RQbHV0b0RpbmdldGplc11dCmRlcHMgPSBbIlBrZyJdCmdpdC10cmVlLXNoYTEgPSAiNmUxZDJhMzVmMmY5MGE0YmM3YzJlZDk4MDc5YjJiYTA5YzM1YjgzYSIKdXVpZCA9ICI2ZTY5NmM3Mi02NTQyLTIwNjctNzI2NS00MjIwNmM3NTYxNTAiCnZlcnNpb24gPSAiMS4zLjIiCgpbW2RlcHMuQXJnVG9vbHNdXQp1dWlkID0gIjBkYWQ4NGM1LWQxMTItNDJlNi04ZDI4LWVmMTJkYWJiNzg5ZiIKdmVyc2lvbiA9ICIxLjEuMiIKCltbZGVwcy5BcnRpZmFjdHNdXQp1dWlkID0gIjU2ZjIyZDcyLWZkNmQtOThmMS0wMmYwLTA4ZGRjMDkwN2MzMyIKdmVyc2lvbiA9ICIxLjExLjAiCgpbW2RlcHMuQmFzZTY0XV0KdXVpZCA9ICIyYTBmNDRlMy02YzgzLTU1YmQtODdlNC1iMTk3OGQ5OGJkNWYiCnZlcnNpb24gPSAiMS4xMS4wIgoKW1tkZXBzLkJlbmNobWFya1Rvb2xzXV0KZGVwcyA9IFsiSlNPTiIsICJMb2dnaW5nIiwgIlByaW50ZiIsICJQcm9maWxlIiwgIlN0YXRpc3RpY3MiLCAiVVVJRHMiXQpnaXQtdHJlZS1zaGExID0gImYxZGZmNjcyOWJjNjFmNGQ0OWUxNDBkYTFhZjU1ZGNkMWFjOTdiMmYiCnV1aWQgPSAiNmU0YjgwZjktZGQ2My01M2FhLTk1YTMtMGNkYjI4ZmE4YmFmIgp2ZXJzaW9uID0gIjEuNS4wIgoKW1tkZXBzLkNvZGVFdmFsdWF0aW9uXV0KZGVwcyA9IFsiSU9DYXB0dXJlIiwgIlJFUEwiXQpnaXQtdHJlZS1zaGExID0gImQ2YzY5NzM5Mzg0NWM3NTczYjg1NzE5YjQ5MTU4ZmYyN2VkNWFkYzUiCnV1aWQgPSAiNWEwNzY2MTEtOTZjYi00ZjAyLTlkM2EtOWUzMDlmMDZmOGZmIgp2ZXJzaW9uID0gIjAuMC4xIgoKW1tkZXBzLkNvbG9yVHlwZXNdXQpkZXBzID0gWyJGaXhlZFBvaW50TnVtYmVycyIsICJSYW5kb20iXQpnaXQtdHJlZS1zaGExID0gImIxMGQwYjY1NjQxZDU3YjhiNGQ1ZTIzNDQ0NjU4MmRlNTA0NzA1MGQiCnV1aWQgPSAiM2RhMDAyZjctNTk4NC01YTYwLWI4YTYtY2JiNjZjMGIzMzNmIgp2ZXJzaW9uID0gIjAuMTEuNSIKCltbZGVwcy5Db21waWxlclN1cHBvcnRMaWJyYXJpZXNfamxsXV0KZGVwcyA9IFsiQXJ0aWZhY3RzIiwgIkxpYmRsIl0KdXVpZCA9ICJlNjZlMDA3OC03MDE1LTU0NTAtOTJmNy0xNWZiZDk1N2YyYWUiCnZlcnNpb24gPSAiMS4xLjErMCIKCltbZGVwcy5EYXRlc11dCmRlcHMgPSBbIlByaW50ZiJdCnV1aWQgPSAiYWRlMmNhNzAtMzg5MS01OTQ1LTk4ZmItZGMwOTk0MzJlMDZhIgp2ZXJzaW9uID0gIjEuMTEuMCIKCltbZGVwcy5Eb3dubG9hZHNdXQpkZXBzID0gWyJBcmdUb29scyIsICJGaWxlV2F0Y2hpbmciLCAiTGliQ1VSTCIsICJOZXR3b3JrT3B0aW9ucyJdCnV1aWQgPSAiZjQzYTI0MWYtYzIwYS00YWQ0LTg1MmMtZjZiMTI0Nzg2MWM2Igp2ZXJzaW9uID0gIjEuNi4wIgoKW1tkZXBzLkZpbGVXYXRjaGluZ11dCnV1aWQgPSAiN2IxZjYwNzktNzM3YS01OGRjLWI4YmMtN2EyY2E1YzFiNWVlIgp2ZXJzaW9uID0gIjEuMTEuMCIKCltbZGVwcy5GaXhlZFBvaW50TnVtYmVyc11dCmRlcHMgPSBbIlN0YXRpc3RpY3MiXQpnaXQtdHJlZS1zaGExID0gIjA1ODgyZDY5OTVhZTVjMTJiYjVmMzZkZDJlZDNmNjFjOThjYmIxNzIiCnV1aWQgPSAiNTNjNDhjMTctNGE3ZC01Y2EyLTkwYzUtNzliNzg5NmVlYTkzIgp2ZXJzaW9uID0gIjAuOC41IgoKW1tkZXBzLkh5cGVyc2NyaXB0XV0KZGVwcyA9IFsiVGVzdCJdCmdpdC10cmVlLXNoYTEgPSAiMTc5MjY3Y2ZhNWU3MTI3NjBjZDQzZGNhZTM4NWQ3ZWE5MGNjMjVhNCIKdXVpZCA9ICI0N2QyZWQyYi0zNmRlLTUwY2YtYmY4Ny00OWMyY2Y0YjhiOTEiCnZlcnNpb24gPSAiMC4wLjUiCgpbW2RlcHMuSHlwZXJ0ZXh0TGl0ZXJhbF1dCmRlcHMgPSBbIlRyaWNrcyJdCmdpdC10cmVlLXNoYTEgPSAiNzEzNDgxMGIxYWZjZTA0YmJjMTA0NWNhMTk4NWZiZTgxY2UxNzY1MyIKdXVpZCA9ICJhYzExOTJhOC1mNGIzLTRiZmUtYmEyMi1hZjViOTJjZDNhYjIiCnZlcnNpb24gPSAiMC45LjUiCgpbW2RlcHMuSU9DYXB0dXJlXV0KZGVwcyA9IFsiTG9nZ2luZyIsICJSYW5kb20iXQpnaXQtdHJlZS1zaGExID0gImI2ZDZiZmRkN2NlMjViMGY5YjJmNmIzZGQ1NmIyNjczYTY2Yzg3NzAiCnV1aWQgPSAiYjVmODFlNTktNjU1Mi00ZDMyLWIxZjAtYzA3MWIwMjFiZjg5Igp2ZXJzaW9uID0gIjAuMi41IgoKW1tkZXBzLkludGVyYWN0aXZlVXRpbHNdXQpkZXBzID0gWyJNYXJrZG93biJdCnV1aWQgPSAiYjc3ZTBhNGMtZDI5MS01N2EwLTkwZTgtOGRiMjVhMjdhMjQwIgp2ZXJzaW9uID0gIjEuMTEuMCIKCltbZGVwcy5KU09OXV0KZGVwcyA9IFsiRGF0ZXMiLCAiTW1hcCIsICJQYXJzZXJzIiwgIlVuaWNvZGUiXQpnaXQtdHJlZS1zaGExID0gIjMxZTk5NmYwYTE1YzdiMjgwYmE5Zjc2NjM2YjNmZjllMmFlNThjOWEiCnV1aWQgPSAiNjgyYzA2YTAtZGU2YS01NGFiLWExNDItYzhiMWNmNzljZGU2Igp2ZXJzaW9uID0gIjAuMjEuNCIKCltbZGVwcy5MaWJDVVJMXV0KZGVwcyA9IFsiTGliQ1VSTF9qbGwiLCAiTW96aWxsYUNBQ2VydHNfamxsIl0KdXVpZCA9ICJiMjcwMzJjMi1hM2U3LTUwYzgtODBjZC0yZDM2ZGJjYmZkMjEiCnZlcnNpb24gPSAiMC42LjQiCgpbW2RlcHMuTGliQ1VSTF9qbGxdXQpkZXBzID0gWyJBcnRpZmFjdHMiLCAiTGliU1NIMl9qbGwiLCAiTGliZGwiLCAiTWJlZFRMU19qbGwiLCAiWmxpYl9qbGwiLCAibmdodHRwMl9qbGwiXQp1dWlkID0gImRlYWM5YjQ3LThiYzctNTkwNi1hMGZlLTM1YWM1NmRjODRjMCIKdmVyc2lvbiA9ICI4LjYuMCswIgoKW1tkZXBzLkxpYkdpdDJdXQpkZXBzID0gWyJCYXNlNjQiLCAiTGliR2l0Ml9qbGwiLCAiTmV0d29ya09wdGlvbnMiLCAiUHJpbnRmIiwgIlNIQSJdCnV1aWQgPSAiNzZmODU0NTAtNTIyNi01YjVhLThlYWEtNTI5YWQwNDViNDMzIgp2ZXJzaW9uID0gIjEuMTEuMCIKCltbZGVwcy5MaWJHaXQyX2psbF1dCmRlcHMgPSBbIkFydGlmYWN0cyIsICJMaWJTU0gyX2psbCIsICJMaWJkbCIsICJNYmVkVExTX2psbCJdCnV1aWQgPSAiZTM3ZGFmNjctNThhNC01OTBhLThlOTktYjAyNDVkZDJmZmM1Igp2ZXJzaW9uID0gIjEuNy4yKzAiCgpbW2RlcHMuTGliU1NIMl9qbGxdXQpkZXBzID0gWyJBcnRpZmFjdHMiLCAiTGliZGwiLCAiTWJlZFRMU19qbGwiXQp1dWlkID0gIjI5ODE2YjVhLWI5YWItNTQ2Zi05MzNjLWVkYWQxODg2ZGZhOCIKdmVyc2lvbiA9ICIxLjExLjArMSIKCltbZGVwcy5MaWJkbF1dCnV1aWQgPSAiOGYzOTlkYTMtMzU1Ny01Njc1LWI1ZmYtZmI4MzJjOTdjYmRiIgp2ZXJzaW9uID0gIjEuMTEuMCIKCltbZGVwcy5MaW5lYXJBbGdlYnJhXV0KZGVwcyA9IFsiTGliZGwiLCAiT3BlbkJMQVNfamxsIiwgImxpYmJsYXN0cmFtcG9saW5lX2psbCJdCnV1aWQgPSAiMzdlMmU0NmQtZjg5ZC01MzlkLWI0ZWUtODM4ZmNjY2M5YzhlIgp2ZXJzaW9uID0gIjEuMTEuMCIKCltbZGVwcy5Mb2dnaW5nXV0KdXVpZCA9ICI1NmRkYjAxNi04NTdiLTU0ZTEtYjgzZC1kYjRkNThkYjU1NjgiCnZlcnNpb24gPSAiMS4xMS4wIgoKW1tkZXBzLk1JTUVzXV0KZ2l0LXRyZWUtc2hhMSA9ICI2NWYyOGFkNGI1OTRhZWJlMjIxNTdkNmZhYzg2OTc4NmEyNTViN2ViIgp1dWlkID0gIjZjNmUyZTZjLTMwMzAtNjMyZC03MzY5LTJkNmM2OTYxNmQ2NSIKdmVyc2lvbiA9ICIwLjEuNCIKCltbZGVwcy5NYXJrZG93bl1dCmRlcHMgPSBbIkJhc2U2NCJdCnV1aWQgPSAiZDZmNDM3NmUtYWVmNS01MDVhLTk2YzEtOWMwMjczOTQ2MDdhIgp2ZXJzaW9uID0gIjEuMTEuMCIKCltbZGVwcy5NYmVkVExTX2psbF1dCmRlcHMgPSBbIkFydGlmYWN0cyIsICJMaWJkbCJdCnV1aWQgPSAiYzhmZmQ5YzMtMzMwZC01ODQxLWI3OGUtMDgxN2Q3MTQ1ZmExIgp2ZXJzaW9uID0gIjIuMjguNiswIgoKW1tkZXBzLk1tYXBdXQp1dWlkID0gImE2M2FkMTE0LTdlMTMtNTA4NC05NTRmLWZlMDEyYzY3NzgwNCIKdmVyc2lvbiA9ICIxLjExLjAiCgpbW2RlcHMuTW96aWxsYUNBQ2VydHNfamxsXV0KdXVpZCA9ICIxNGEzNjA2ZC1mNjBkLTU2MmUtOTEyMS0xMmQ5NzJjZDgxNTkiCnZlcnNpb24gPSAiMjAyMy4xMi4xMiIKCltbZGVwcy5OZXR3b3JrT3B0aW9uc11dCnV1aWQgPSAiY2E1NzU5MzAtYzJlMy00M2E5LWFjZTQtMWU5ODhiMmMxOTA4Igp2ZXJzaW9uID0gIjEuMi4wIgoKW1tkZXBzLk9wZW5CTEFTX2psbF1dCmRlcHMgPSBbIkFydGlmYWN0cyIsICJDb21waWxlclN1cHBvcnRMaWJyYXJpZXNfamxsIiwgIkxpYmRsIl0KdXVpZCA9ICI0NTM2NjI5YS1jNTI4LTViODAtYmQ0Ni1mODBkNTFjNWIzNjMiCnZlcnNpb24gPSAiMC4zLjI3KzEiCgpbW2RlcHMuUGFyc2Vyc11dCmRlcHMgPSBbIkRhdGVzIiwgIlByZWNvbXBpbGVUb29scyIsICJVVUlEcyJdCmdpdC10cmVlLXNoYTEgPSAiODQ4OTkwNWJjZGJjZmFjNjRkMWRhYTUxY2EwN2MwZDhmMDI4MzgyMSIKdXVpZCA9ICI2OWRlMGE2OS0xZGRkLTUwMTctOTM1OS0yYmYwYjAyZGM5ZjAiCnZlcnNpb24gPSAiMi44LjEiCgpbW2RlcHMuUGtnXV0KZGVwcyA9IFsiQXJ0aWZhY3RzIiwgIkRhdGVzIiwgIkRvd25sb2FkcyIsICJGaWxlV2F0Y2hpbmciLCAiTGliR2l0MiIsICJMaWJkbCIsICJMb2dnaW5nIiwgIk1hcmtkb3duIiwgIlByaW50ZiIsICJSYW5kb20iLCAiU0hBIiwgIlRPTUwiLCAiVGFyIiwgIlVVSURzIiwgInA3emlwX2psbCJdCnV1aWQgPSAiNDRjZmU5NWEtMWViMi01MmVhLWI2NzItZTJhZmRmNjliNzhmIgp2ZXJzaW9uID0gIjEuMTEuMCIKd2Vha2RlcHMgPSBbIlJFUEwiXQoKICAgIFtkZXBzLlBrZy5leHRlbnNpb25zXQogICAgUkVQTEV4dCA9ICJSRVBMIgoKW1tkZXBzLlBsdXRvVUldXQpkZXBzID0gWyJBYnN0cmFjdFBsdXRvRGluZ2V0amVzIiwgIkJhc2U2NCIsICJDb2xvclR5cGVzIiwgIkRhdGVzIiwgIkZpeGVkUG9pbnROdW1iZXJzIiwgIkh5cGVyc2NyaXB0IiwgIkh5cGVydGV4dExpdGVyYWwiLCAiSU9DYXB0dXJlIiwgIkludGVyYWN0aXZlVXRpbHMiLCAiSlNPTiIsICJMb2dnaW5nIiwgIk1JTUVzIiwgIk1hcmtkb3duIiwgIlJhbmRvbSIsICJSZWV4cG9ydCIsICJVUklzIiwgIlVVSURzIl0KZ2l0LXRyZWUtc2hhMSA9ICJlYmE0ODEwZDVlNmEwMWY2MTJiOTQ4YzlmYTk0ZjkwNWI0OTA4N2IwIgp1dWlkID0gIjdmOTA0ZGZlLWI4NWUtNGZmNi1iNDYzLWRhZTIyOTIzOTZhOCIKdmVyc2lvbiA9ICIwLjcuNjAiCgpbW2RlcHMuUHJlY29tcGlsZVRvb2xzXV0KZGVwcyA9IFsiUHJlZmVyZW5jZXMiXQpnaXQtdHJlZS1zaGExID0gIjVhYTM2ZjcwNDlhNjNhMTUyOGZlOGY3YzNmMjExMzQxM2ZmZDRlMWYiCnV1aWQgPSAiYWVhN2JlMDEtNmE2YS00MDgzLTg4NTYtOGE2ZTY3MDRkODJhIgp2ZXJzaW9uID0gIjEuMi4xIgoKW1tkZXBzLlByZWZlcmVuY2VzXV0KZGVwcyA9IFsiVE9NTCJdCmdpdC10cmVlLXNoYTEgPSAiOTMwNmY2MDg1MTY1ZDI3MGY3ZTNkYjAyYWYyNmE0MDBkNTgwZjVjNiIKdXVpZCA9ICIyMTIxNmM2YS0yZTczLTY1NjMtNmU2NS03MjY1NjY2NTcyNTAiCnZlcnNpb24gPSAiMS40LjMiCgpbW2RlcHMuUHJpbnRmXV0KZGVwcyA9IFsiVW5pY29kZSJdCnV1aWQgPSAiZGUwODU4ZGEtNjMwMy01ZTY3LTg3NDQtNTFlZGRlZWViOGQ3Igp2ZXJzaW9uID0gIjEuMTEuMCIKCltbZGVwcy5Qcm9maWxlXV0KdXVpZCA9ICI5YWJiZDk0NS1kZmY4LTU2MmYtYjVlOC1lMWViZjVlZjFiNzkiCnZlcnNpb24gPSAiMS4xMS4wIgoKW1tkZXBzLlJFUExdXQpkZXBzID0gWyJJbnRlcmFjdGl2ZVV0aWxzIiwgIk1hcmtkb3duIiwgIlNvY2tldHMiLCAiU3R5bGVkU3RyaW5ncyIsICJVbmljb2RlIl0KdXVpZCA9ICIzZmEwY2Q5Ni1lZWYxLTU2NzYtOGE2MS1iM2I4NzU4YmJmZmIiCnZlcnNpb24gPSAiMS4xMS4wIgoKW1tkZXBzLlJhbmRvbV1dCmRlcHMgPSBbIlNIQSJdCnV1aWQgPSAiOWEzZjgyODQtYTJjOS01ZjAyLTlhMTEtODQ1OTgwYTFmZDVjIgp2ZXJzaW9uID0gIjEuMTEuMCIKCltbZGVwcy5SZWV4cG9ydF1dCmdpdC10cmVlLXNoYTEgPSAiNDVlNDI4NDIxNjY2MDczZWFiNmYyZGE1YzlkMzEwZDk5YmIxMmY5YiIKdXVpZCA9ICIxODlhMzg2Ny0zMDUwLTUyZGEtYTgzNi1lNjMwYmE5MGFiNjkiCnZlcnNpb24gPSAiMS4yLjIiCgpbW2RlcHMuU0hBXV0KdXVpZCA9ICJlYThlOTE5Yy0yNDNjLTUxYWYtODgyNS1hYWE2M2NkNzIxY2UiCnZlcnNpb24gPSAiMC43LjAiCgpbW2RlcHMuU2VyaWFsaXphdGlvbl1dCnV1aWQgPSAiOWU4OGI0MmEtZjgyOS01YjBjLWJiZTktOWU5MjMxOTgxNjZiIgp2ZXJzaW9uID0gIjEuMTEuMCIKCltbZGVwcy5Tb2NrZXRzXV0KdXVpZCA9ICI2NDYyZmUwYi0yNGRlLTU2MzEtODY5Ny1kZDk0MWY5MGRlY2MiCnZlcnNpb24gPSAiMS4xMS4wIgoKW1tkZXBzLlN0YXRpc3RpY3NdXQpkZXBzID0gWyJMaW5lYXJBbGdlYnJhIl0KZ2l0LXRyZWUtc2hhMSA9ICJhZTNiYjFlYjNiYmEwNzdjZDI3NmJjNWNmYzMzN2NjNjVjMzA3NWMwIgp1dWlkID0gIjEwNzQ1YjE2LTc5Y2UtMTFlOC0xMWY5LTdkMTNhZDMyYTNiMiIKdmVyc2lvbiA9ICIxLjExLjEiCgogICAgW2RlcHMuU3RhdGlzdGljcy5leHRlbnNpb25zXQogICAgU3BhcnNlQXJyYXlzRXh0ID0gWyJTcGFyc2VBcnJheXMiXQoKICAgIFtkZXBzLlN0YXRpc3RpY3Mud2Vha2RlcHNdCiAgICBTcGFyc2VBcnJheXMgPSAiMmYwMTE4NGUtZTIyYi01ZGY1LWFlNjMtZDkzZWJhYjY5ZWFmIgoKW1tkZXBzLlN0eWxlZFN0cmluZ3NdXQp1dWlkID0gImY0ODkzMzRiLWRhM2QtNGMyZS1iOGYwLWU0NzZlMTJjMTYyYiIKdmVyc2lvbiA9ICIxLjExLjAiCgpbW2RlcHMuVE9NTF1dCmRlcHMgPSBbIkRhdGVzIl0KdXVpZCA9ICJmYTI2N2YxZi02MDQ5LTRmMTQtYWE1NC0zM2JhZmFlMWVkNzYiCnZlcnNpb24gPSAiMS4wLjMiCgpbW2RlcHMuVGFyXV0KZGVwcyA9IFsiQXJnVG9vbHMiLCAiU0hBIl0KdXVpZCA9ICJhNGU1NjlhNi1lODA0LTRmYTQtYjBmMy1lZWY3YTFkNWIxM2UiCnZlcnNpb24gPSAiMS4xMC4wIgoKW1tkZXBzLlRlc3RdXQpkZXBzID0gWyJJbnRlcmFjdGl2ZVV0aWxzIiwgIkxvZ2dpbmciLCAiUmFuZG9tIiwgIlNlcmlhbGl6YXRpb24iXQp1dWlkID0gIjhkZmVkNjE0LWUyMmMtNWUwOC04NWUxLTY1YzUyMzRmMGI0MCIKdmVyc2lvbiA9ICIxLjExLjAiCgpbW2RlcHMuVHJpY2tzXV0KZ2l0LXRyZWUtc2hhMSA9ICI3ODIyYjk3ZTk5YTE2NzJiZmIxYjQ5YjY2OGE2ZDQ2ZDU4ZDhjYmNiIgp1dWlkID0gIjQxMGE0YjRkLTQ5ZTQtNGZiYy1hYjZkLWNiNzFiMTdiMzc3NSIKdmVyc2lvbiA9ICIwLjEuOSIKCltbZGVwcy5VUklzXV0KZ2l0LXRyZWUtc2hhMSA9ICI2N2RiNmNjN2IzODIxZTE5ZWJlNzU3OTFhOWRkMTljOWIxMTg4ZjJiIgp1dWlkID0gIjVjMjc0N2Y4LWI3ZWEtNGZmMi1iYTJlLTU2M2JmZDM2YjFkNCIKdmVyc2lvbiA9ICIxLjUuMSIKCltbZGVwcy5VVUlEc11dCmRlcHMgPSBbIlJhbmRvbSIsICJTSEEiXQp1dWlkID0gImNmNzExOGE3LTY5NzYtNWIxYS05YTM5LTdhZGM3MmY1OTFhNCIKdmVyc2lvbiA9ICIxLjExLjAiCgpbW2RlcHMuVW5pY29kZV1dCnV1aWQgPSAiNGVjMGE4M2UtNDkzZS01MGUyLWI5YWMtOGY3MmFjZjVhOGY1Igp2ZXJzaW9uID0gIjEuMTEuMCIKCltbZGVwcy5abGliX2psbF1dCmRlcHMgPSBbIkxpYmRsIl0KdXVpZCA9ICI4Mzc3NWE1OC0xZjFkLTUxM2YtYjE5Ny1kNzEzNTRhYjAwN2EiCnZlcnNpb24gPSAiMS4yLjEzKzEiCgpbW2RlcHMubGliYmxhc3RyYW1wb2xpbmVfamxsXV0KZGVwcyA9IFsiQXJ0aWZhY3RzIiwgIkxpYmRsIl0KdXVpZCA9ICI4ZTg1MGI5MC04NmRiLTUzNGMtYTBkMy0xNDc4MTc2YzdkOTMiCnZlcnNpb24gPSAiNS4xMS4wKzAiCgpbW2RlcHMubmdodHRwMl9qbGxdXQpkZXBzID0gWyJBcnRpZmFjdHMiLCAiTGliZGwiXQp1dWlkID0gIjhlODUwZWRlLTc2ODgtNTMzOS1hMDdjLTMwMmFjZDJhYWY4ZCIKdmVyc2lvbiA9ICIxLjU5LjArMCIKCltbZGVwcy5wN3ppcF9qbGxdXQpkZXBzID0gWyJBcnRpZmFjdHMiLCAiTGliZGwiXQp1dWlkID0gIjNmMTllOTMzLTMzZDgtNTNiMy1hYWFiLWJkNTExMGMzYjdhMCIKdmVyc2lvbiA9ICIxNy40LjArMiIKIiIiCgojIOKVlOKVkOKVoSBDZWxsIG9yZGVyOgojIOKVn+KUgDI2MmJlZThjLTg5NWQtNDcwYy1hNzNlLWM2YTlmOTU1NGVjOAojIOKVoOKVkDA2YTZhOTZmLThkYTAtNGNiZi05Y2ZlLTUwMjJkOTQ1MWNkZQojIOKVoOKVkGNkMmQ3OTFjLWE0YjgtMTFlZi0yMjY0LTBmYTBkNTgxZjhjMAojIOKVoOKVkDVkZGU0NmU5LTRiZjQtNDliZC05ZjY3LTZjNWYyNDg5YWMzYwojIOKVoOKVkDg3MTNkMmMzLWNmMGUtNGM0NS1iZTA2LTZjYTBlYzc3M2Q1NAojIOKVoOKVkDEyMGM1MjhiLTMxMDAtNDk4NC05YzU4LWFhNDI4MGI3ZDkwYQojIOKVoOKVkGQ5MDAzZGMwLTcwZTYtNDczMi1iZTdmLTI3NGRiYmUzOGVjNwojIOKVoOKVkDg0YzE2OWY3LTVjNzUtNDYxYy04NjQzLWE3MTQ0MzIzYzcxOAojIOKVoOKVkGIwMTJjNGUwLTQzYTktNDBlOC05YjRhLWU2NDNhNDkyOWU4OQojIOKVoOKVkDQ1YThlNjU2LTZkNmUtNDVjYS1hNjk1LTBlYTcwNmQyNGY1MAojIOKVoOKVkGU2MGMyZTdlLWVkN2EtNGNiZS1hNTM3LTVlZDEzODFjYjEwZgojIOKVoOKVkDMwNDBjMzQxLWUwZDUtNGZlZi04MDkxLTExNWJlZTQ1NmQxMgojIOKVoOKVkDQ5MDZhNWI1LWJhZGUtNDA3Zi05ODk1LTg3NGZiY2MwMmYwNgojIOKVoOKVkGIyY2FkMTEzLTM3YmEtNDA3NC05YzgxLWRkY2IxYWVjYmZlYgojIOKVoOKVkDZlZGJlMDY5LTNjNGUtNDYxZC1hY2VmLWVmZmViZmM2YjAwMQojIOKVoOKVkGFmMDZlYTgyLWE0MTgtNGNhMy1iMzM4LTExZmY2MzhjOWI1YgojIOKVn+KUgDAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwMDAwMQojIOKVn+KUgDAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwMDAwMgo="; | |
window.pluto_disable_ui = true; | |
window.pluto_slider_server_url = undefined; | |
window.pluto_binder_url = "https://mybinder.org/v2/gh/fonsp/pluto-on-binder/v0.20.3"; | |
window.pluto_statefile = "data:;base64,3gASpWJvbmRzhaRvdXRBgaV2YWx1ZdoCkTsgRnVuY3Rpb24gU2lnbmF0dXJlOiBjb2RlQShGbG9hdDY0KQpkZWZpbmUgeyBwdHIsIGk4IH0gQGp1bGlhX2NvZGVBXzE3ODE4KHB0ciBub2FsaWFzIG5vY2FwdHVyZSBub3VuZGVmIG5vbm51bGwgYWxpZ24gOCBkZXJlZmVyZW5jZWFibGUoOCkgJXVuaW9uX2J5dGVzX3JldHVybiwgZG91YmxlICUieDo6RmxvYXQ2NCIpICMwIHsKdG9wOgogICUwID0gZmNtcCB1bGUgZG91YmxlICUieDo6RmxvYXQ2NCIsIDAuMDAwMDAwZSswMAogIGJyIGkxICUwLCBsYWJlbCAlY29tbW9uLnJldCwgbGFiZWwgJUw0CgpMNDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDsgcHJlZHMgPSAldG9wCiAgc3RvcmUgZG91YmxlICUieDo6RmxvYXQ2NCIsIHB0ciAldW5pb25fYnl0ZXNfcmV0dXJuLCBhbGlnbiA4CiAgYnIgbGFiZWwgJWNvbW1vbi5yZXQKCmNvbW1vbi5yZXQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyBwcmVkcyA9ICVMNCwgJXRvcAogICVjb21tb24ucmV0Lm9wID0gcGhpIHsgcHRyLCBpOCB9IFsgeyBwdHIgbnVsbCwgaTggMSB9LCAlTDQgXSwgWyB7IHB0ciBAImpsX2dsb2JhbCMxNzgyMy5qaXQiLCBpOCAtMTI2IH0sICV0b3AgXQogIHJldCB7IHB0ciwgaTggfSAlY29tbW9uLnJldC5vcAp9Cqtjb2RlX2NvbW1vboGldmFsdWXZaXVzaW5nIEludGVyYWN0aXZlVXRpbHMKCmZ1bmN0aW9uIGNvZGVBKHgpCgl4ID4gMCA/IHggOiAwCmVuZAoKZnVuY3Rpb24gY29kZUIoeCkKCXggPiAwID8geCA6IHplcm8oeCkKZW5kCqRvdXRCgaV2YWx1ZdoBCDsgRnVuY3Rpb24gU2lnbmF0dXJlOiBjb2RlQihGbG9hdDY0KQpkZWZpbmUgZG91YmxlIEBqdWxpYV9jb2RlQl8xNzg5OShkb3VibGUgJSJ4OjpGbG9hdDY0IikgIzAgewp0b3A6CiAgJS5pbnYgPSBmY21wIG9ndCBkb3VibGUgJSJ4OjpGbG9hdDY0IiwgMC4wMDAwMDBlKzAwCiAgJSIueDo6RmxvYXQ2NCIgPSBzZWxlY3QgaTEgJS5pbnYsIGRvdWJsZSAlIng6OkZsb2F0NjQiLCBkb3VibGUgMC4wMDAwMDBlKzAwCiAgcmV0IGRvdWJsZSAlIi54OjpGbG9hdDY0Igp9CqVjb2RlQoGldmFsdWXZLiMgY29kZUIKQGNvZGVfbGx2bSBkZWJ1Z2luZm89Om5vbmUgY29kZUIoMS4wKQqlY29kZUGBpXZhbHVl2S4jIGNvZGVBCkBjb2RlX2xsdm0gZGVidWdpbmZvPTpub25lIGNvZGVBKDEuMCkKrGNlbGxfcmVzdWx0c94AENkkYjAxMmM0ZTAtNDNhOS00MGU4LTliNGEtZTY0M2E0OTI5ZTg5iqZxdWV1ZWTCpGxvZ3OQp3J1bm5pbmfCpm91dHB1dIakYm9kedoCu0JlbmNobWFya1Rvb2xzLlRyaWFsOiAxMDAwMDAwIHNhbXBsZXMgd2l0aCAxMDAwIGV2YWx1YXRpb25zLgogUmFuZ2UgKG1pbiDigKYgbWF4KTogIDIuMDgzIG5zIOKApiAxMTEuNjI1IG5zICDilIogR0MgKG1pbiDigKYgbWF4KTogMC4wMCUg4oCmIDAuMDAlCiBUaW1lICAobWVkaWFuKTogICAgIDIuMTY3IG5zICAgICAgICAgICAgICAg4pSKIEdDIChtZWRpYW4pOiAgICAwLjAwJQogVGltZSAgKG1lYW4gwrEgz4MpOiAgIDIuMjk2IG5zIMKxICAgMC44MDkgbnMgIOKUiiBHQyAobWVhbiDCsSDPgyk6ICAwLjAwJSDCsSAwLjAwJQoKICDiloPilojilofiloXilobiloPiloTiloHiloLiloHiloLiloLiloHiloLiloHiloPiloHiloEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDiloMKICDilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilofilobiloTiloPiloXiloTiloTiloPiloTiloTiloXiloTiloXiloTiloXiloXiloTiloXiloTiloTiloTiloTiloPiloXiloPiloTiloPiloPiloTiloPiloPiloPiloTiloPiloTiloXilojilofiloYg4paICiAgMi4wOCBucyAgICAgIEhpc3RvZ3JhbTogbG9nKGZyZXF1ZW5jeSkgYnkgdGltZSAgICAgIDUuNjcgbnMgPAoKIE1lbW9yeSBlc3RpbWF0ZTogMCBieXRlcywgYWxsb2NzIGVzdGltYXRlOiAwLqRtaW1lqnRleHQvcGxhaW6scm9vdGFzc2lnbmVlwLJsYXN0X3J1bl90aW1lc3RhbXDLQdnPEW6Ls92wcGVyc2lzdF9qc19zdGF0ZcK3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCp2NlbGxfaWTZJGIwMTJjNGUwLTQzYTktNDBlOC05YjRhLWU2NDNhNDkyOWU4OblkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzs1HSGu1cHVibGlzaGVkX29iamVjdF9rZXlzkLhkZXBlbmRzX29uX3NraXBwZWRfY2VsbHPCp2Vycm9yZWTC2SQwNmE2YTk2Zi04ZGEwLTRjYmYtOWNmZS01MDIyZDk0NTFjZGWKpnF1ZXVlZMKkbG9nc5CncnVubmluZ8Kmb3V0cHV0hqRib2R52YA8c3R5bGU+Cm1haW4gewptYXJnaW46IDAgYXV0bzsKbWF4LXdpZHRoOiAyMDAwcHg7CiAgICBwYWRkaW5nLWxlZnQ6IG1heCg1MHB4LCA1JSk7CiAgICBwYWRkaW5nLXJpZ2h0OiBtYXgoNTBweCwgNSUpOwp9Cjwvc3R5bGU+CqRtaW1lqXRleHQvaHRtbKxyb290YXNzaWduZWXAsmxhc3RfcnVuX3RpbWVzdGFtcMtB2c8RbQeB+bBwZXJzaXN0X2pzX3N0YXRlwrdoYXNfcGx1dG9faG9va19mZWF0dXJlc8KnY2VsbF9pZNkkMDZhNmE5NmYtOGRhMC00Y2JmLTljZmUtNTAyMmQ5NDUxY2RluWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOABjmrLVwdWJsaXNoZWRfb2JqZWN0X2tleXOQuGRlcGVuZHNfb25fc2tpcHBlZF9jZWxsc8KnZXJyb3JlZMLZJGNkMmQ3OTFjLWE0YjgtMTFlZi0yMjY0LTBmYTBkNTgxZjhjMIqmcXVldWVkwqRsb2dzkKdydW5uaW5nwqZvdXRwdXSGpGJvZHmgpG1pbWWqdGV4dC9wbGFpbqxyb290YXNzaWduZWXAsmxhc3RfcnVuX3RpbWVzdGFtcMtB2c8RbJyvS7BwZXJzaXN0X2pzX3N0YXRlwrdoYXNfcGx1dG9faG9va19mZWF0dXJlc8KnY2VsbF9pZNkkY2QyZDc5MWMtYTRiOC0xMWVmLTIyNjQtMGZhMGQ1ODFmOGMwuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOBDer1rVwdWJsaXNoZWRfb2JqZWN0X2tleXOQuGRlcGVuZHNfb25fc2tpcHBlZF9jZWxsc8KnZXJyb3JlZMLZJDQ5MDZhNWI1LWJhZGUtNDA3Zi05ODk1LTg3NGZiY2MwMmYwNoqmcXVldWVkwqRsb2dzkKdydW5uaW5nwqZvdXRwdXSGpGJvZHnaAxI8Ym9uZCBkZWY9Im91dEEiIHVuaXF1ZV9pZD0ibFZGeUNwTVRpaURaIj48dGV4dGFyZWEgY29scz0nODAnIHJvd3M9JzUnPjsgRnVuY3Rpb24gU2lnbmF0dXJlOiBjb2RlQShGbG9hdDY0KQpkZWZpbmUgeyBwdHIsIGk4IH0gQGp1bGlhX2NvZGVBXzE3ODE4KHB0ciBub2FsaWFzIG5vY2FwdHVyZSBub3VuZGVmIG5vbm51bGwgYWxpZ24gOCBkZXJlZmVyZW5jZWFibGUoOCkgJXVuaW9uX2J5dGVzX3JldHVybiwgZG91YmxlICUmcXVvdDt4OjpGbG9hdDY0JnF1b3Q7KSAjMCB7CnRvcDoKICAlMCA9IGZjbXAgdWxlIGRvdWJsZSAlJnF1b3Q7eDo6RmxvYXQ2NCZxdW90OywgMC4wMDAwMDBlKzAwCiAgYnIgaTEgJTAsIGxhYmVsICVjb21tb24ucmV0LCBsYWJlbCAlTDQKCkw0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyBwcmVkcyA9ICV0b3AKICBzdG9yZSBkb3VibGUgJSZxdW90O3g6OkZsb2F0NjQmcXVvdDssIHB0ciAldW5pb25fYnl0ZXNfcmV0dXJuLCBhbGlnbiA4CiAgYnIgbGFiZWwgJWNvbW1vbi5yZXQKCmNvbW1vbi5yZXQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyBwcmVkcyA9ICVMNCwgJXRvcAogICVjb21tb24ucmV0Lm9wID0gcGhpIHsgcHRyLCBpOCB9IFsgeyBwdHIgbnVsbCwgaTggMSB9LCAlTDQgXSwgWyB7IHB0ciBAJnF1b3Q7amxfZ2xvYmFsIzE3ODIzLmppdCZxdW90OywgaTggLTEyNiB9LCAldG9wIF0KICByZXQgeyBwdHIsIGk4IH0gJWNvbW1vbi5yZXQub3AKfQo8L3RleHRhcmVhPjwvYm9uZD6kbWltZal0ZXh0L2h0bWyscm9vdGFzc2lnbmVlwLJsYXN0X3J1bl90aW1lc3RhbXDLQdnPEW+PQeWwcGVyc2lzdF9qc19zdGF0ZcK3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCp2NlbGxfaWTZJDQ5MDZhNWI1LWJhZGUtNDA3Zi05ODk1LTg3NGZiY2MwMmYwNrlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgAIp6i1cHVibGlzaGVkX29iamVjdF9rZXlzkLhkZXBlbmRzX29uX3NraXBwZWRfY2VsbHPCp2Vycm9yZWTC2SQ2ZWRiZTA2OS0zYzRlLTQ2MWQtYWNlZi1lZmZlYmZjNmIwMDGKpnF1ZXVlZMKkbG9nc5CncnVubmluZ8Kmb3V0cHV0hqRib2R52SdkaWZmanMgKGdlbmVyaWMgZnVuY3Rpb24gd2l0aCAxIG1ldGhvZCmkbWltZap0ZXh0L3BsYWlurHJvb3Rhc3NpZ25lZcCybGFzdF9ydW5fdGltZXN0YW1wy0HZzxFvkpsgsHBlcnNpc3RfanNfc3RhdGXCt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqdjZWxsX2lk2SQ2ZWRiZTA2OS0zYzRlLTQ2MWQtYWNlZi1lZmZlYmZjNmIwMDG5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4ACFBBtXB1Ymxpc2hlZF9vYmplY3Rfa2V5c5C4ZGVwZW5kc19vbl9za2lwcGVkX2NlbGxzwqdlcnJvcmVkwtkkNDVhOGU2NTYtNmQ2ZS00NWNhLWE2OTUtMGVhNzA2ZDI0ZjUwiqZxdWV1ZWTCpGxvZ3OQp3J1bm5pbmfCpm91dHB1dIakYm9kedoCr0JlbmNobWFya1Rvb2xzLlRyaWFsOiAxMDAwMDAwIHNhbXBsZXMgd2l0aCAxMDAwIGV2YWx1YXRpb25zLgogUmFuZ2UgKG1pbiDigKYgbWF4KTogIDEuNzkxIG5zIOKApiAzOS40NTggbnMgIOKUiiBHQyAobWluIOKApiBtYXgpOiAwLjAwJSDigKYgMC4wMCUKIFRpbWUgIChtZWRpYW4pOiAgICAgMS45MTcgbnMgICAgICAgICAgICAgIOKUiiBHQyAobWVkaWFuKTogICAgMC4wMCUKIFRpbWUgIChtZWFuIMKxIM+DKTogICAyLjAwNCBucyDCsSAgMC42MDggbnMgIOKUiiBHQyAobWVhbiDCsSDPgyk6ICAwLjAwJSDCsSAwLjAwJQoKICAgIOKWgyAg4paHICDiloggIOKWhCAg4paFICDiloYgIOKWhyAg4paDICDiloQg4paD4paCIOKWgSAgICAgICAgICAg4paBICDiloEgICAgIOKWgSAgICDiloEg4paECiAg4paG4paB4paI4paB4paB4paI4paB4paB4paI4paB4paB4paI4paB4paB4paI4paB4paB4paI4paB4paB4paI4paB4paB4paI4paB4paB4paI4paB4paI4paI4paB4paI4paB4paB4paI4paB4paB4paI4paB4paB4paI4paB4paB4paI4paB4paB4paI4paB4paB4paI4paB4paB4paI4paB4paB4paI4paB4paIIOKWiAogIDEuNzkgbnMgICAgICBIaXN0b2dyYW06IGxvZyhmcmVxdWVuY3kpIGJ5IHRpbWUgICAgIDIuNjIgbnMgPAoKIE1lbW9yeSBlc3RpbWF0ZTogMCBieXRlcywgYWxsb2NzIGVzdGltYXRlOiAwLqRtaW1lqnRleHQvcGxhaW6scm9vdGFzc2lnbmVlwLJsYXN0X3J1bl90aW1lc3RhbXDLQdnPEW9AKmOwcGVyc2lzdF9qc19zdGF0ZcK3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCp2NlbGxfaWTZJDQ1YThlNjU2LTZkNmUtNDVjYS1hNjk1LTBlYTcwNmQyNGY1MLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzqI9gu+1cHVibGlzaGVkX29iamVjdF9rZXlzkLhkZXBlbmRzX29uX3NraXBwZWRfY2VsbHPCp2Vycm9yZWTC2SQ1ZGRlNDZlOS00YmY0LTQ5YmQtOWY2Ny02YzVmMjQ4OWFjM2OKpnF1ZXVlZMKkbG9nc5CncnVubmluZ8Kmb3V0cHV0hqRib2R5oKRtaW1lqnRleHQvcGxhaW6scm9vdGFzc2lnbmVlwLJsYXN0X3J1bl90aW1lc3RhbXDLQdnPEWzMux+wcGVyc2lzdF9qc19zdGF0ZcK3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCp2NlbGxfaWTZJDVkZGU0NmU5LTRiZjQtNDliZC05ZjY3LTZjNWYyNDg5YWMzY7lkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgJ6af61cHVibGlzaGVkX29iamVjdF9rZXlzkLhkZXBlbmRzX29uX3NraXBwZWRfY2VsbHPCp2Vycm9yZWTC2SRhZjA2ZWE4Mi1hNDE4LTRjYTMtYjMzOC0xMWZmNjM4YzliNWKKpnF1ZXVlZMKkbG9nc5CncnVubmluZ8Kmb3V0cHV0hqRib2R52gvqPHNjcmlwdCBzcmM9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL3JlcXVpcmUuanMvMi4zLjcvcmVxdWlyZS5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgc3JjPSJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9tb25hY28tZWRpdG9yLzAuNTIuMC9taW4vdnMvbG9hZGVyLmpzIj48L3NjcmlwdD4KCjxoMj5Nb25hY28gRGlmZiBFZGl0b3IgU2FtcGxlPC9oMj4KPGRpdiBpZD0ibXljb250YWluZXIiIHN0eWxlPSJ3aWR0aDogMTUwMHB4OyBoZWlnaHQ6IDUwMHB4OyBib3JkZXI6IDFweCBzb2xpZCBncmV5Ij48L2Rpdj4KPHNjcmlwdCBjb250cm9scz0nJyBzcmM9J2RhdGE6dGV4dC9qYXZhc2NyaXB0O2Jhc2U2NCxablZ1WTNScGIyNGdaR1ZqYjJSbFFtRnpaVFkwS0dKaGMyVTJORk4wY21sdVp5a2dld29nSUNBZ1kyOXVjM1FnY0hKbFptbDRJRDBnSW1SaGRHRTZkR1Y0ZEM5d2JHRnBianRpWVhObE5qUXNJanNLSUNBZ0lHbG1JQ2hpWVhObE5qUlRkSEpwYm1jdWMzUmhjblJ6VjJsMGFDaHdjbVZtYVhncEtTQjdDaUFnSUNBZ0lDQWdZbUZ6WlRZMFUzUnlhVzVuSUQwZ1ltRnpaVFkwVTNSeWFXNW5Mbk5zYVdObEtIQnlaV1pwZUM1c1pXNW5kR2dwT3dvZ0lDQWdmUW9nSUNBZ1kyOXVjM1FnWkdWamIyUmxaRVJoZEdFZ1BTQmhkRzlpS0dKaGMyVTJORk4wY21sdVp5azdDaUFnSUNCeVpYUjFjbTRnWkdWamIyUmxaRVJoZEdFN0NuMEtDbkpsY1hWcGNtVXVZMjl1Wm1sbktIc2djR0YwYUhNNklIc2dkbk02SUNkb2RIUndjem92TDJOa2JtcHpMbU5zYjNWa1pteGhjbVV1WTI5dEwyRnFZWGd2YkdsaWN5OXRiMjVoWTI4dFpXUnBkRzl5THpBdU5USXVNQzl0YVc0dmRuTW5JSDE5S1RzS0NuSmxjWFZwY21Vb1d5ZDJjeTlsWkdsMGIzSXZaV1JwZEc5eUxtMWhhVzRuWFN3Z0tDa2dQVDRnZXdvSmRtRnlJR1JwWm1aRlpHbDBiM0lnUFNCdGIyNWhZMjh1WldScGRHOXlMbU55WldGMFpVUnBabVpGWkdsMGIzSW9aRzlqZFcxbGJuUXVaMlYwUld4bGJXVnVkRUo1U1dRb0oyMTVZMjl1ZEdGcGJtVnlKeWtwT3dvSmJHVjBJRzl5YVdkcGJtRnNWSGgwSUQwZ1pHVmpiMlJsUW1GelpUWTBLQ0pQZVVKSFpGYzFhbVJIYkhaaWFVSlVZVmRrZFZsWVVqRmpiVlUyU1VkT2RscEhWa0pMUlZwellqSkdNRTVxVVhCRGJWSnNXbTFzZFZwVFFqZEpTRUl3WTJsM1oyRlVaMmRtVTBKQllXNVdjMkZYUm1aWk1qbHJXbFZHWmsxVVl6Uk5WR2R2WTBoU2VVbEhOWFpaVjNod1dWaE5aMkp0T1dwWldFSXdaRmhLYkVsSE5YWmtWelZyV2xkWloySnRPWFZpYmxaellrTkNhR0pIYkc1aWFVRTBTVWRTYkdOdFZtMWFXRXBzWW0xT2JGbFhTbk5hVTJjMFMxTkJiR1JYTlhCaU1qVm1XVzVzTUZwWVRtWmpiVll3WkZoS2RVeERRbXRpTTFacFlrZFZaMHBUU2pSUGFuQkhZa2M1YUdSRVdUQkphV3RuU1hwQloyVjNjREJpTTBFMlEybEJaMHBVUVdkUVUwSnRXVEl4ZDBsSVZuTmFVMEpyWWpOV2FXSkhWV2RLVTBvMFQycHdSMkpIT1doa1JGa3dTV2wzWjAxRE5IZE5SRUYzVFVSQ2JFdDZRWGREYVVGbldXNUpaMkZVUldkS1ZFRnpTVWQ0YUZsdFZuTkpRMVpxWWpJeGRHSXlOSFZqYlZZd1RFTkNjMWxYU214aVEwRnNWRVJSUzBOcmR6QlBhVUZuU1VOQlowbERRV2RKUTBGblNVTkJaMGxEUVdkSlEwRm5TVU5CWjBsRFFXZEpRMEZuU1VOQlowbERRV2RKUTBGblNVTkJaMGxEUVdkSlEwRm5UM2xDZDJOdFZtdGplVUU1U1VOV01HSXpRVXRKUTBKNlpFYzVlVnBUUW10aU0xWnBZa2RWWjBwVFNqUlBhbkJIWWtjNWFHUkVXVEJKYVhkblkwaFNlVWxEVmpGaWJXeDJZbXc1YVdWWVVteGpNVGw1V2xoU01XTnROSE5KUjBaellWZGtkVWxFWjB0SlEwSnBZMmxDYzFsWFNteGlRMEZzV1RJNWRHSlhPWFZNYmtwc1pFRnZTMWt5T1hSaVZ6bDFURzVLYkdSRWIyZEpRMEZuU1VOQlowbERRV2RKUTBGblNVTkJaMGxEUVdkSlEwRm5TVU5CWjBsRFFXZEpRMEZuU1VOQlowbERRV2RKUTBFM1NVaENlVnBYVW5wSlJEQm5TbFYzTUV4RFFXeGtSemwzUTJsQlowcFhUblppVnpGMlltazFlVnBZVVhWaU0wRm5VRk5DZDJGSGEyZGxlVUozWkVoSmMwbEhhelJKU0RCblYzbENOMGxJUWpCamFVSjFaRmQ0YzB4RFFuQlBRMEY0U1Vnd2MwbERWazFPUTBKa1RFTkNZa2xJYzJkalNGSjVTVVZCYVdGdGVHWmFNbmgyV1cxR2MwbDZSVE5QUkVsNlRHMXdjR1JEU1hOSlIyczBTVU13ZUUxcVdXZG1VM2RuU2xoU2RtTkRRbVJEYVVGblkyMVdNRWxJYzJkalNGSjVURU5DY0U5RFFqbEpRMVpxWWpJeGRHSXlOSFZqYlZZd1RHMDVkME51TUVzaUtUc0tDV3hsZENCdGIyUnBabWxsWkZSNGRDQTlJR1JsWTI5a1pVSmhjMlUyTkNnaVQzbENSMlJYTldwa1IyeDJZbWxDVkdGWFpIVlpXRkl4WTIxVk5rbEhUblphUjFaRFMwVmFjMkl5UmpCT2FsRndRMjFTYkZwdGJIVmFVMEpyWWpOV2FXSkhWV2RSUjNBeFlrZHNhRmd5VG5aYVIxWkRXSHBGTTA5RWF6VkxSMUoyWkZkS2MxcFRRV3hKYm1jMlQydGFjMkl5UmpCT2FsRnBTMU5CYWsxRFFqZERibEoyWTBSdlMwbERRV3hNYld4MVpHbEJPVWxIV21waVdFRm5ZakprTUVsSFVuWmtWMHB6V2xOQmJFbHVaelpQYTFwellqSkdNRTVxVVdsTVEwRjNUR3BCZDAxRVFYZE5SMVZ5VFVSQlMwbERRV3hKYVRVMFQycHdSMkpIT1doa1JGa3dTV2xCT1VsSVRteGlSMVpxWkVOQ2NFMVRRV3hNYld4MVpHbDNaMXBIT1RGWmJYaHNTVU5WYVdWRWJ6WlNiWGgyV1ZoUk1rNURTWE5KUjFKMlpGZEtjMXBUUVhkTWFrRjNUVVJCZDAxSFZYSk5SRUZMU1VOQ2VWcFlVV2RhUnpreFdXMTRiRWxEVldsTWJtYzJUMnRhYzJJeVJqQk9hbEZwUTI0d1N5SXBPd29KWTI5dWMyOXNaUzVzYjJjb2JXOWthV1pwWldSVWVIUXBDZ2xrYVdabVJXUnBkRzl5TG5ObGRFMXZaR1ZzS0hzS0NRbHZjbWxuYVc1aGJEb2diVzl1WVdOdkxtVmthWFJ2Y2k1amNtVmhkR1ZOYjJSbGJDaHZjbWxuYVc1aGJGUjRkQ3dnSjJwMWJHbGhKeWtzQ2drSmJXOWthV1pwWldRNklHMXZibUZqYnk1bFpHbDBiM0l1WTNKbFlYUmxUVzlrWld3b2JXOWthV1pwWldSVWVIUXNJQ2RxZFd4cFlTY3BDZ2w5S1RzS2ZTazdDZz09JyB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnPjwvc2NyaXB0PgqkbWltZal0ZXh0L2h0bWyscm9vdGFzc2lnbmVlwLJsYXN0X3J1bl90aW1lc3RhbXDLQdnPEXOjOh2wcGVyc2lzdF9qc19zdGF0ZcK3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCp2NlbGxfaWTZJGFmMDZlYTgyLWE0MTgtNGNhMy1iMzM4LTExZmY2MzhjOWI1YrlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgAIiTm1cHVibGlzaGVkX29iamVjdF9rZXlzkLhkZXBlbmRzX29uX3NraXBwZWRfY2VsbHPCp2Vycm9yZWTC2SQxMjBjNTI4Yi0zMTAwLTQ5ODQtOWM1OC1hYTQyODBiN2Q5MGGKpnF1ZXVlZMKkbG9nc5CncnVubmluZ8Kmb3V0cHV0hqRib2R52SJnIChnZW5lcmljIGZ1bmN0aW9uIHdpdGggMSBtZXRob2QppG1pbWWqdGV4dC9wbGFpbqxyb290YXNzaWduZWXAsmxhc3RfcnVuX3RpbWVzdGFtcMtB2c8RbO2nqLBwZXJzaXN0X2pzX3N0YXRlwrdoYXNfcGx1dG9faG9va19mZWF0dXJlc8KnY2VsbF9pZNkkMTIwYzUyOGItMzEwMC00OTg0LTljNTgtYWE0MjgwYjdkOTBhuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOAAi717VwdWJsaXNoZWRfb2JqZWN0X2tleXOQuGRlcGVuZHNfb25fc2tpcHBlZF9jZWxsc8KnZXJyb3JlZMLZJGIyY2FkMTEzLTM3YmEtNDA3NC05YzgxLWRkY2IxYWVjYmZlYoqmcXVldWVkwqRsb2dzkKdydW5uaW5nwqZvdXRwdXSGpGJvZHnaAZM8Ym9uZCBkZWY9Im91dEIiIHVuaXF1ZV9pZD0iUkNGSXFIeGxUL1FDIj48dGV4dGFyZWEgY29scz0nODAnIHJvd3M9JzUnPjsgRnVuY3Rpb24gU2lnbmF0dXJlOiBjb2RlQihGbG9hdDY0KQpkZWZpbmUgZG91YmxlIEBqdWxpYV9jb2RlQl8xNzg5OShkb3VibGUgJSZxdW90O3g6OkZsb2F0NjQmcXVvdDspICMwIHsKdG9wOgogICUuaW52ID0gZmNtcCBvZ3QgZG91YmxlICUmcXVvdDt4OjpGbG9hdDY0JnF1b3Q7LCAwLjAwMDAwMGUrMDAKICAlJnF1b3Q7Lng6OkZsb2F0NjQmcXVvdDsgPSBzZWxlY3QgaTEgJS5pbnYsIGRvdWJsZSAlJnF1b3Q7eDo6RmxvYXQ2NCZxdW90OywgZG91YmxlIDAuMDAwMDAwZSswMAogIHJldCBkb3VibGUgJSZxdW90Oy54OjpGbG9hdDY0JnF1b3Q7Cn0KPC90ZXh0YXJlYT48L2JvbmQ+pG1pbWWpdGV4dC9odG1srHJvb3Rhc3NpZ25lZcCybGFzdF9ydW5fdGltZXN0YW1wy0HZzxFvj3MRsHBlcnNpc3RfanNfc3RhdGXCt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqdjZWxsX2lk2SRiMmNhZDExMy0zN2JhLTQwNzQtOWM4MS1kZGNiMWFlY2JmZWK5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4ACO8ctXB1Ymxpc2hlZF9vYmplY3Rfa2V5c5C4ZGVwZW5kc19vbl9za2lwcGVkX2NlbGxzwqdlcnJvcmVkwtkkMjYyYmVlOGMtODk1ZC00NzBjLWE3M2UtYzZhOWY5NTU0ZWM4iqZxdWV1ZWTCpGxvZ3OQp3J1bm5pbmfCpm91dHB1dIakYm9kedlmPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxoMT5IYXZpbmcgYSB0eXBlLXN0YWJsZSBpbXBsZW1lbnRhdGlvbiBpcyBzdGlsbCBpbXBvcnRhbnQgaW4gSnVsaWEuPC9oMT4KPC9kaXY+pG1pbWWpdGV4dC9odG1srHJvb3Rhc3NpZ25lZcCybGFzdF9ydW5fdGltZXN0YW1wy0HZzxGP89HlsHBlcnNpc3RfanNfc3RhdGXCt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqdjZWxsX2lk2SQyNjJiZWU4Yy04OTVkLTQ3MGMtYTczZS1jNmE5Zjk1NTRlYzi5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4ABVXjtXB1Ymxpc2hlZF9vYmplY3Rfa2V5c5C4ZGVwZW5kc19vbl9za2lwcGVkX2NlbGxzwqdlcnJvcmVkwtkkODcxM2QyYzMtY2YwZS00YzQ1LWJlMDYtNmNhMGVjNzczZDU0iqZxdWV1ZWTCpGxvZ3OQp3J1bm5pbmfCpm91dHB1dIakYm9kedkyY2xlYW5fYW5zaV9lc2NhcGUgKGdlbmVyaWMgZnVuY3Rpb24gd2l0aCAxIG1ldGhvZCmkbWltZap0ZXh0L3BsYWlurHJvb3Rhc3NpZ25lZcCybGFzdF9ydW5fdGltZXN0YW1wy0HZzxFtC6WYsHBlcnNpc3RfanNfc3RhdGXCt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqdjZWxsX2lk2SQ4NzEzZDJjMy1jZjBlLTRjNDUtYmUwNi02Y2EwZWM3NzNkNTS5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AIlDVtXB1Ymxpc2hlZF9vYmplY3Rfa2V5c5C4ZGVwZW5kc19vbl9za2lwcGVkX2NlbGxzwqdlcnJvcmVkwtkkZTYwYzJlN2UtZWQ3YS00Y2JlLWE1MzctNWVkMTM4MWNiMTBmiqZxdWV1ZWTCpGxvZ3OQp3J1bm5pbmfCpm91dHB1dIakYm9keYOoY2hpbGRyZW6SktnOPGJvbmQgZGVmPSJjb2RlX2NvbW1vbiIgdW5pcXVlX2lkPSJSZEEyJiM0MztLVldFNmNGIj48dGV4dGFyZWEgY29scz0nODQnIHJvd3M9JzEwJz51c2luZyBJbnRlcmFjdGl2ZVV0aWxzCgpmdW5jdGlvbiBjb2RlQSh4KQoJeCA+IDAgPyB4IDogMAplbmQKCmZ1bmN0aW9uIGNvZGVCKHgpCgl4ID4gMCA/IHggOiB6ZXJvKHgpCmVuZAo8L3RleHRhcmVhPjwvYm9uZD6pdGV4dC9odG1skoOoY2hpbGRyZW6TktmIPGJvbmQgZGVmPSJjb2RlQSIgdW5pcXVlX2lkPSIyd2lTUzRRd2RqVTAiPjx0ZXh0YXJlYSBjb2xzPSc0MCcgcm93cz0nOCc+IyBjb2RlQQpAY29kZV9sbHZtIGRlYnVnaW5mbz06bm9uZSBjb2RlQSgxLjApCjwvdGV4dGFyZWE+PC9ib25kPql0ZXh0L2h0bWySoSCqdGV4dC9wbGFpbpLZiDxib25kIGRlZj0iY29kZUIiIHVuaXF1ZV9pZD0icHdDcTVZR1BEdU16Ij48dGV4dGFyZWEgY29scz0nNDAnIHJvd3M9JzgnPiMgY29kZUIKQGNvZGVfbGx2bSBkZWJ1Z2luZm89Om5vbmUgY29kZUIoMS4wKQo8L3RleHRhcmVhPjwvYm9uZD6pdGV4dC9odG1sqWNsYXNzbmFtZcClc3R5bGXZI2Rpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiByb3c72SdhcHBsaWNhdGlvbi92bmQucGx1dG8uZGl2ZWxlbWVudCtvYmplY3SpY2xhc3NuYW1lwKVzdHlsZdkmZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjukbWltZdknYXBwbGljYXRpb24vdm5kLnBsdXRvLmRpdmVsZW1lbnQrb2JqZWN0rHJvb3Rhc3NpZ25lZcCybGFzdF9ydW5fdGltZXN0YW1wy0HZzxFvX64lsHBlcnNpc3RfanNfc3RhdGXCt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqdjZWxsX2lk2SRlNjBjMmU3ZS1lZDdhLTRjYmUtYTUzNy01ZWQxMzgxY2IxMGa5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4MtDPNtXB1Ymxpc2hlZF9vYmplY3Rfa2V5c5C4ZGVwZW5kc19vbl9za2lwcGVkX2NlbGxzwqdlcnJvcmVkwtkkMzA0MGMzNDEtZTBkNS00ZmVmLTgwOTEtMTE1YmVlNDU2ZDEyiqZxdWV1ZWTCpGxvZ3OQp3J1bm5pbmfCpm91dHB1dIakYm9kedoBGyI7IEZ1bmN0aW9uIFNpZ25hdHVyZTogY29kZUIoRmxvYXQ2NClcbmRlZmluZSBkb3VibGUgQGp1bGlhX2NvZGVCXzE3ODk5KGRvdWJsZSAlXCJ4OjpGbG9hdDY0XCIpICMwIHtcbnRvcDpcbiAgJS5pbnYgPSBmY21wIG9ndCBkb3VibGUgJVwieDo6RmxvYXQ2NFwiLCAwLjAwMDAwMGUrMDBcbiAgJVwiLng6OkZsb2F0NjRcIiA9IHNlbGVjdCBpMSAlLmludiwgZG91YmxlICVcIng6OkZsb2F0NjRcIiwgZG91YmxlIDAuMDAwMDAwZSswMFxuICByZXQgZG91YmxlICVcIi54OjpGbG9hdDY0XCJcbn1cbiKkbWltZap0ZXh0L3BsYWlurHJvb3Rhc3NpZ25lZcCybGFzdF9ydW5fdGltZXN0YW1wy0HZzxFvjK8psHBlcnNpc3RfanNfc3RhdGXCt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqdjZWxsX2lk2SQzMDQwYzM0MS1lMGQ1LTRmZWYtODA5MS0xMTViZWU0NTZkMTK5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4jjHIxtXB1Ymxpc2hlZF9vYmplY3Rfa2V5c5C4ZGVwZW5kc19vbl9za2lwcGVkX2NlbGxzwqdlcnJvcmVkwtkkZDkwMDNkYzAtNzBlNi00NzMyLWJlN2YtMjc0ZGJiZTM4ZWM3iqZxdWV1ZWTCpGxvZ3ORiKRsaW5l/6Ntc2eS2gKhTWV0aG9kSW5zdGFuY2UgZm9yIE1haW4udmFyIndvcmtzcGFjZSM0Ii5mKDo6RmxvYXQ2NCkKICBmcm9tIGYoG1s5MG14G1szOW0pG1s5MG0gQBtbMzltIBtbOTBtTWFpbi52YXIid29ya3NwYWNlIzQiG1szOW0gG1s5MG1+L3dvcmsvYXRlbGllcmFyaXRoL1BsdXRvTW9uYWNvRGlmZlZpZXdlci5qbC9wbGF5Z3JvdW5kL3BsdXRvLxtbMzltG1s5MG0bWzRtbW9uYWNvZGlmZi5qbCM9PSMxMjBjNTI4Yi0zMTAwLTQ5ODQtOWM1OC1hYTQyODBiN2Q5MGE6NBtbMjRtG1szOW0KQXJndW1lbnRzCiAgI3NlbGYjG1szNm06OkNvcmUuQ29uc3QoTWFpbi52YXIid29ya3NwYWNlIzQiLmYpG1szOW0KICB4G1szNm06OkZsb2F0NjQbWzM5bQpCb2R5G1szM20bWzFtOjpVbmlvbntGbG9hdDY0LCBJbnQ2NH0bWzIybRtbMzltChtbOTBtMSDilIAbWzM5bSAlMSA9IE1haW4udmFyIndvcmtzcGFjZSM0Ii46PhtbMzZtOjpDb3JlLkNvbnN0KD4pG1szOW0KG1s5MG3ilIIgIBtbMzltICUyID0gKCUxKSh4LCAwKRtbMzZtOjpCb29sG1szOW0KG1s5MG3ilJTilIDilIAbWzM5bSAgICAgIGdvdG8gIzMgaWYgbm90ICUyChtbOTBtMiDilIAbWzM5bSAlNCA9IHgbWzM2bTo6RmxvYXQ2NBtbMzltChtbOTBt4pSU4pSA4pSAG1szOW0gICAgICByZXR1cm4gJTQKG1s5MG0zIOKUgBtbMzltICAgICAgcmV0dXJuIDAKCqp0ZXh0L3BsYWlup2NlbGxfaWTZJGQ5MDAzZGMwLTcwZTYtNDczMi1iZTdmLTI3NGRiYmUzOGVjN6Zrd2FyZ3OQomlktFBsdXRvUnVubmVyX2QxYWNiODFlpGZpbGXZVy9Vc2Vycy9hdGVsaWVyYXJpdGgvLmp1bGlhL3BhY2thZ2VzL1BsdXRvL2VzQzRSL3NyYy9ydW5uZXIvUGx1dG9SdW5uZXIvc3JjL2lvL3N0ZG91dC5qbKVncm91cKZzdGRvdXSlbGV2ZWyuTG9nTGV2ZWwoLTU1NSmncnVubmluZ8Kmb3V0cHV0hqRib2R5oKRtaW1lqnRleHQvcGxhaW6scm9vdGFzc2lnbmVlwLJsYXN0X3J1bl90aW1lc3RhbXDLQdnPEW1rGcawcGVyc2lzdF9qc19zdGF0ZcK3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCp2NlbGxfaWTZJGQ5MDAzZGMwLTcwZTYtNDczMi1iZTdmLTI3NGRiYmUzOGVjN7lkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzky6wuC1cHVibGlzaGVkX29iamVjdF9rZXlzkLhkZXBlbmRzX29uX3NraXBwZWRfY2VsbHPCp2Vycm9yZWTC2SQ4NGMxNjlmNy01Yzc1LTQ2MWMtODY0My1hNzE0NDMyM2M3MTiKpnF1ZXVlZMKkbG9nc5GIpGxpbmX/o21zZ5LaA5hNZXRob2RJbnN0YW5jZSBmb3IgTWFpbi52YXIid29ya3NwYWNlIzQiLmcoOjpGbG9hdDY0KQogIGZyb20gZygbWzkwbXgbWzM5bSkbWzkwbSBAG1szOW0gG1s5MG1NYWluLnZhciJ3b3Jrc3BhY2UjNCIbWzM5bSAbWzkwbX4vd29yay9hdGVsaWVyYXJpdGgvUGx1dG9Nb25hY29EaWZmVmlld2VyLmpsL3BsYXlncm91bmQvcGx1dG8vG1szOW0bWzkwbRtbNG1tb25hY29kaWZmLmpsIz09IzEyMGM1MjhiLTMxMDAtNDk4NC05YzU4LWFhNDI4MGI3ZDkwYTo4G1syNG0bWzM5bQpBcmd1bWVudHMKICAjc2VsZiMbWzM2bTo6Q29yZS5Db25zdChNYWluLnZhciJ3b3Jrc3BhY2UjNCIuZykbWzM5bQogIHgbWzM2bTo6RmxvYXQ2NBtbMzltCkJvZHkbWzM2bTo6RmxvYXQ2NBtbMzltChtbOTBtMSDilIAbWzM5bSAlMSA9IE1haW4udmFyIndvcmtzcGFjZSM0Ii46PhtbMzZtOjpDb3JlLkNvbnN0KD4pG1szOW0KG1s5MG3ilIIgIBtbMzltICUyID0gTWFpbi52YXIid29ya3NwYWNlIzQiLnplcm8bWzM2bTo6Q29yZS5Db25zdCh6ZXJvKRtbMzltChtbOTBt4pSCICAbWzM5bSAlMyA9ICglMikoeCkbWzM2bTo6Q29yZS5Db25zdCgwLjApG1szOW0KG1s5MG3ilIIgIBtbMzltICU0ID0gKCUxKSh4LCAlMykbWzM2bTo6Qm9vbBtbMzltChtbOTBt4pSU4pSA4pSAG1szOW0gICAgICBnb3RvICMzIGlmIG5vdCAlNAobWzkwbTIg4pSAG1szOW0gJTYgPSB4G1szNm06OkZsb2F0NjQbWzM5bQobWzkwbeKUlOKUgOKUgBtbMzltICAgICAgcmV0dXJuICU2ChtbOTBtMyDilIAbWzM5bSAlOCA9IE1haW4udmFyIndvcmtzcGFjZSM0Ii56ZXJvG1szNm06OkNvcmUuQ29uc3QoemVybykbWzM5bQobWzkwbeKUgiAgG1szOW0gJTkgPSAoJTgpKHgpG1szNm06OkNvcmUuQ29uc3QoMC4wKRtbMzltChtbOTBt4pSU4pSA4pSAG1szOW0gICAgICByZXR1cm4gJTkKCqp0ZXh0L3BsYWlup2NlbGxfaWTZJDg0YzE2OWY3LTVjNzUtNDYxYy04NjQzLWE3MTQ0MzIzYzcxOKZrd2FyZ3OQomlktFBsdXRvUnVubmVyX2QxYWNiODFlpGZpbGXZVy9Vc2Vycy9hdGVsaWVyYXJpdGgvLmp1bGlhL3BhY2thZ2VzL1BsdXRvL2VzQzRSL3NyYy9ydW5uZXIvUGx1dG9SdW5uZXIvc3JjL2lvL3N0ZG91dC5qbKVncm91cKZzdGRvdXSlbGV2ZWyuTG9nTGV2ZWwoLTU1NSmncnVubmluZ8Kmb3V0cHV0hqRib2R5oKRtaW1lqnRleHQvcGxhaW6scm9vdGFzc2lnbmVlwLJsYXN0X3J1bl90aW1lc3RhbXDLQdnPEW1sojiwcGVyc2lzdF9qc19zdGF0ZcK3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCp2NlbGxfaWTZJDg0YzE2OWY3LTVjNzUtNDYxYy04NjQzLWE3MTQ0MzIzYzcxOLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgYBzZK1cHVibGlzaGVkX29iamVjdF9rZXlzkLhkZXBlbmRzX29uX3NraXBwZWRfY2VsbHPCp2Vycm9yZWTCq3N0YXR1c190cmVlhaRuYW1lqG5vdGVib29rqHN1YnRhc2tzhKZzYXZpbmeFpG5hbWWmc2F2aW5nqHN1YnRhc2tzgKtmaW5pc2hlZF9hdMtB2c8RkEg1BadzdWNjZXNzw6pzdGFydGVkX2F0y0HZzxGQR/VmqXdvcmtzcGFjZYWkbmFtZal3b3Jrc3BhY2Woc3VidGFza3OCrGluaXRfcHJvY2Vzc4WkbmFtZaxpbml0X3Byb2Nlc3Ooc3VidGFza3OEoTSFpG5hbWWhNKhzdWJ0YXNrc4CrZmluaXNoZWRfYXTLQdnPEWw/yWSnc3VjY2Vzc8Oqc3RhcnRlZF9hdMtB2c8RbCpZ76ExhaRuYW1loTGoc3VidGFza3OAq2ZpbmlzaGVkX2F0y0HZzxFsJiQYp3N1Y2Nlc3PDqnN0YXJ0ZWRfYXTLQdnPEWwfl4mhMoWkbmFtZaEyqHN1YnRhc2tzgKtmaW5pc2hlZF9hdMtB2c8RbCg6fqdzdWNjZXNzw6pzdGFydGVkX2F0y0HZzxFsJiQtoTOFpG5hbWWhM6hzdWJ0YXNrc4CrZmluaXNoZWRfYXTLQdnPEWwqWdWnc3VjY2Vzc8Oqc3RhcnRlZF9hdMtB2c8RbCg6k6tmaW5pc2hlZF9hdMtB2c8RbD/JcadzdWNjZXNzw6pzdGFydGVkX2F0y0HZzxFsH5d0rmNyZWF0ZV9wcm9jZXNzhaRuYW1lrmNyZWF0ZV9wcm9jZXNzqHN1YnRhc2tzgtkhTG9hZGluZyBub3RlYm9vayBib290IGVudmlyb25tZW50haRuYW1l2SFMb2FkaW5nIG5vdGVib29rIGJvb3QgZW52aXJvbm1lbnSoc3VidGFza3OAq2ZpbmlzaGVkX2F0y0HZzxFsH5djp3N1Y2Nlc3PDqnN0YXJ0ZWRfYXTLQdnPEWuWwsqwU3RhcnRpbmcgcHJvY2Vzc4WkbmFtZbBTdGFydGluZyBwcm9jZXNzqHN1YnRhc2tzgKtmaW5pc2hlZF9hdMtB2c8Ra5bCvadzdWNjZXNzw6pzdGFydGVkX2F0y0HZzxFrXXFtq2ZpbmlzaGVkX2F0y0HZzxFsH5dfp3N1Y2Nlc3PDqnN0YXJ0ZWRfYXTLQdnPEWtdcWGrZmluaXNoZWRfYXTLQdnPEWw/yXWnc3VjY2Vzc8Oqc3RhcnRlZF9hdMtB2c8Ra11xUKNwa2eFpG5hbWWjcGtnqHN1YnRhc2tzgahhbmFseXNpc4WkbmFtZahhbmFseXNpc6hzdWJ0YXNrc4CrZmluaXNoZWRfYXTLQdnPEY/zL2Knc3VjY2Vzc8Oqc3RhcnRlZF9hdMtB2c8Rj/MoB6tmaW5pc2hlZF9hdMtB2c8Rj/MvZqdzdWNjZXNzw6pzdGFydGVkX2F0y0HZzxGP8ygHo3J1boWkbmFtZaNydW6oc3VidGFza3OCsHJlc29sdmVfdG9wb2xvZ3mFpG5hbWWwcmVzb2x2ZV90b3BvbG9neahzdWJ0YXNrc4CrZmluaXNoZWRfYXTLQdnPEY/zfd2nc3VjY2Vzc8Oqc3RhcnRlZF9hdMtB2c8Rj/NegahldmFsdWF0ZYWkbmFtZahldmFsdWF0ZahzdWJ0YXNrc4GhMYWkbmFtZaExqHN1YnRhc2tzgKtmaW5pc2hlZF9hdMtB2c8Rj/PSLadzdWNjZXNzw6pzdGFydGVkX2F0y0HZzxGP85OSq2ZpbmlzaGVkX2F0y0HZzxGP89Jbp3N1Y2Nlc3PDqnN0YXJ0ZWRfYXTLQdnPEY/zfd2rZmluaXNoZWRfYXTLQdnPEY/z0lanc3VjY2Vzc8Oqc3RhcnRlZF9hdMtB2c8Rj/NeeKtmaW5pc2hlZF9hdMCnc3VjY2Vzc8Cqc3RhcnRlZF9hdMtB2c8RXZ3c+bFjZWxsX2RlcGVuZGVuY2llc94AENkkYjAxMmM0ZTAtNDNhOS00MGU4LTliNGEtZTY0M2E0OTI5ZTg5hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkYjAxMmM0ZTAtNDNhOS00MGU4LTliNGEtZTY0M2E0OTI5ZTg5tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCHoWaR2SQxMjBjNTI4Yi0zMTAwLTQ5ODQtOWM1OC1hYTQyODBiN2Q5MGG5QmVuY2htYXJrVG9vbHMuUGFyYW1ldGVyc5CqQGJlbmNobWFya5DZLEJlbmNobWFya1Rvb2xzLmdlbmVyYXRlX2JlbmNobWFya19kZWZpbml0aW9ukK5CZW5jaG1hcmtUb29sc5HZJGNkMmQ3OTFjLWE0YjgtMTFlZi0yMjY0LTBmYTBkNTgxZjhjMLojX19fdGhpc19wbHV0b19tb2R1bGVfbmFtZZCkcmFuZJDZJDA2YTZhOTZmLThkYTAtNGNiZi05Y2ZlLTUwMjJkOTQ1MWNkZYS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDA2YTZhOTZmLThkYTAtNGNiZi05Y2ZlLTUwMjJkOTQ1MWNkZbRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwg6RCYXNlkK5CYXNlLkRvY3MuSFRNTJCpQGh0bWxfc3RykNkkY2QyZDc5MWMtYTRiOC0xMWVmLTIyNjQtMGZhMGQ1ODFmOGMwhLRwcmVjZWRlbmNlX2hldXJpc3RpYwenY2VsbF9pZNkkY2QyZDc5MWMtYTRiOC0xMWVmLTIyNjQtMGZhMGQ1ODFmOGMwtGRvd25zdHJlYW1fY2VsbHNfbWFwg65Db2RlRXZhbHVhdGlvbpHZJDMwNDBjMzQxLWUwZDUtNGZlZi04MDkxLTExNWJlZTQ1NmQxMqZCYXNlNjSQrkJlbmNobWFya1Rvb2xzktkkYjAxMmM0ZTAtNDNhOS00MGU4LTliNGEtZTY0M2E0OTI5ZTg52SQ0NWE4ZTY1Ni02ZDZlLTQ1Y2EtYTY5NS0wZWE3MDZkMjRmNTCydXBzdHJlYW1fY2VsbHNfbWFwgNkkNDkwNmE1YjUtYmFkZS00MDdmLTk4OTUtODc0ZmJjYzAyZjA2hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkNDkwNmE1YjUtYmFkZS00MDdmLTk4OTUtODc0ZmJjYzAyZjA2tGRvd25zdHJlYW1fY2VsbHNfbWFwgaRvdXRBkLJ1cHN0cmVhbV9jZWxsc19tYXCKpENvcmWQpEJhc2WQt1BsdXRvUnVubmVyLmNyZWF0ZV9ib25kkKJvMZHZJDMwNDBjMzQxLWUwZDUtNGZlZi04MDkxLTExNWJlZTQ1NmQxMqtQbHV0b1J1bm5lcpCnUGx1dG9VSZHZJDVkZGU0NmU5LTRiZjQtNDliZC05ZjY3LTZjNWYyNDg5YWMzY7FQbHV0b1VJLlRleHRGaWVsZJCvQ29yZS5hcHBsaWNhYmxlkKVAYmluZJCoQmFzZS5nZXSQ2SQ2ZWRiZTA2OS0zYzRlLTQ2MWQtYWNlZi1lZmZlYmZjNmIwMDGEtHByZWNlZGVuY2VfaGV1cmlzdGljCadjZWxsX2lk2SQ2ZWRiZTA2OS0zYzRlLTQ2MWQtYWNlZi1lZmZlYmZjNmIwMDG0ZG93bnN0cmVhbV9jZWxsc19tYXCBpmRpZmZqc5HZJGFmMDZlYTgyLWE0MTgtNGNhMy1iMzM4LTExZmY2MzhjOWI1YrJ1cHN0cmVhbV9jZWxsc19tYXCFqElPQnVmZmVykKV3cml0ZZCmU3RyaW5nkKxiYXNlNjRlbmNvZGWQpXRha2UhkNkkNDVhOGU2NTYtNmQ2ZS00NWNhLWE2OTUtMGVhNzA2ZDI0ZjUwhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkNDVhOGU2NTYtNmQ2ZS00NWNhLWE2OTUtMGVhNzA2ZDI0ZjUwtGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCHoWeR2SQxMjBjNTI4Yi0zMTAwLTQ5ODQtOWM1OC1hYTQyODBiN2Q5MGG5QmVuY2htYXJrVG9vbHMuUGFyYW1ldGVyc5CqQGJlbmNobWFya5DZLEJlbmNobWFya1Rvb2xzLmdlbmVyYXRlX2JlbmNobWFya19kZWZpbml0aW9ukK5CZW5jaG1hcmtUb29sc5HZJGNkMmQ3OTFjLWE0YjgtMTFlZi0yMjY0LTBmYTBkNTgxZjhjMLojX19fdGhpc19wbHV0b19tb2R1bGVfbmFtZZCkcmFuZJDZJDVkZGU0NmU5LTRiZjQtNDliZC05ZjY3LTZjNWYyNDg5YWMzY4S0cHJlY2VkZW5jZV9oZXVyaXN0aWMHp2NlbGxfaWTZJDVkZGU0NmU5LTRiZjQtNDliZC05ZjY3LTZjNWYyNDg5YWMzY7Rkb3duc3RyZWFtX2NlbGxzX21hcIKnUGx1dG9VSZTZJGU2MGMyZTdlLWVkN2EtNGNiZS1hNTM3LTVlZDEzODFjYjEwZtkkNDkwNmE1YjUtYmFkZS00MDdmLTk4OTUtODc0ZmJjYzAyZjA22SRiMmNhZDExMy0zN2JhLTQwNzQtOWM4MS1kZGNiMWFlY2JmZWLZJGFmMDZlYTgyLWE0MTgtNGNhMy1iMzM4LTExZmY2MzhjOWI1YrBIeXBlcnRleHRMaXRlcmFskdkkYWYwNmVhODItYTQxOC00Y2EzLWIzMzgtMTFmZjYzOGM5YjVisnVwc3RyZWFtX2NlbGxzX21hcIDZJGFmMDZlYTgyLWE0MTgtNGNhMy1iMzM4LTExZmY2MzhjOWI1YoS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJGFmMDZlYTgyLWE0MTgtNGNhMy1iMzM4LTExZmY2MzhjOWI1YrRkb3duc3RyZWFtX2NlbGxzX21hcIKnZGlmZmJ1ZpCnYjY0ZGlmZpCydXBzdHJlYW1fY2VsbHNfbWFwj6hJT0J1ZmZlcpC3SHlwZXJ0ZXh0TGl0ZXJhbC5CeXBhc3OQtVBsdXRvVUkuTG9jYWxSZXNvdXJjZZCnUGx1dG9VSZHZJDVkZGU0NmU5LTRiZjQtNDliZC05ZjY3LTZjNWYyNDg5YWMzY6ZkaWZmanOR2SQ2ZWRiZTA2OS0zYzRlLTQ2MWQtYWNlZi1lZmZlYmZjNmIwMDG4SHlwZXJ0ZXh0TGl0ZXJhbC5jb250ZW50kKZTdHJpbmeQpEBodGyQpXRha2UhkKJvMpHZJDMwNDBjMzQxLWUwZDUtNGZlZi04MDkxLTExNWJlZTQ1NmQxMqJvMZHZJDMwNDBjMzQxLWUwZDUtNGZlZi04MDkxLTExNWJlZTQ1NmQxMqV3cml0ZZC3SHlwZXJ0ZXh0TGl0ZXJhbC5SZXN1bHSQsEh5cGVydGV4dExpdGVyYWyR2SQ1ZGRlNDZlOS00YmY0LTQ5YmQtOWY2Ny02YzVmMjQ4OWFjM2OsYmFzZTY0ZW5jb2RlkNkkMTIwYzUyOGItMzEwMC00OTg0LTljNTgtYWE0MjgwYjdkOTBhhLRwcmVjZWRlbmNlX2hldXJpc3RpYwenY2VsbF9pZNkkMTIwYzUyOGItMzEwMC00OTg0LTljNTgtYWE0MjgwYjdkOTBhtGRvd25zdHJlYW1fY2VsbHNfbWFwg6FmktkkZDkwMDNkYzAtNzBlNi00NzMyLWJlN2YtMjc0ZGJiZTM4ZWM32SRiMDEyYzRlMC00M2E5LTQwZTgtOWI0YS1lNjQzYTQ5MjllODmhZ5LZJDg0YzE2OWY3LTVjNzUtNDYxYy04NjQzLWE3MTQ0MzIzYzcxONkkNDVhOGU2NTYtNmQ2ZS00NWNhLWE2OTUtMGVhNzA2ZDI0ZjUwsEludGVyYWN0aXZlVXRpbHOS2SRkOTAwM2RjMC03MGU2LTQ3MzItYmU3Zi0yNzRkYmJlMzhlYzfZJDg0YzE2OWY3LTVjNzUtNDYxYy04NjQzLWE3MTQ0MzIzYzcxOLJ1cHN0cmVhbV9jZWxsc19tYXCEoTyQpHplcm+QoT6QpmlzbGVzc5DZJGIyY2FkMTEzLTM3YmEtNDA3NC05YzgxLWRkY2IxYWVjYmZlYoS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJGIyY2FkMTEzLTM3YmEtNDA3NC05YzgxLWRkY2IxYWVjYmZlYrRkb3duc3RyZWFtX2NlbGxzX21hcIGkb3V0QpCydXBzdHJlYW1fY2VsbHNfbWFwiqJvMpHZJDMwNDBjMzQxLWUwZDUtNGZlZi04MDkxLTExNWJlZTQ1NmQxMqRCYXNlkKRDb3JlkLdQbHV0b1J1bm5lci5jcmVhdGVfYm9uZJCrUGx1dG9SdW5uZXKQsVBsdXRvVUkuVGV4dEZpZWxkkKdQbHV0b1VJkdkkNWRkZTQ2ZTktNGJmNC00OWJkLTlmNjctNmM1ZjI0ODlhYzNjr0NvcmUuYXBwbGljYWJsZZClQGJpbmSQqEJhc2UuZ2V0kNkkMjYyYmVlOGMtODk1ZC00NzBjLWE3M2UtYzZhOWY5NTU0ZWM4hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkMjYyYmVlOGMtODk1ZC00NzBjLWE3M2UtYzZhOWY5NTU0ZWM4tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kNkkODcxM2QyYzMtY2YwZS00YzQ1LWJlMDYtNmNhMGVjNzczZDU0hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkODcxM2QyYzMtY2YwZS00YzQ1LWJlMDYtNmNhMGVjNzczZDU0tGRvd25zdHJlYW1fY2VsbHNfbWFwgbFjbGVhbl9hbnNpX2VzY2FwZZHZJDMwNDBjMzQxLWUwZDUtNGZlZi04MDkxLTExNWJlZTQ1NmQxMrJ1cHN0cmVhbV9jZWxsc19tYXCDp3JlcGxhY2WQpkByX3N0cpCiPT6Q2SRlNjBjMmU3ZS1lZDdhLTRjYmUtYTUzNy01ZWQxMzgxY2IxMGaEtHByZWNlZGVuY2VfaGV1cmlzdGljCadjZWxsX2lk2SRlNjBjMmU3ZS1lZDdhLTRjYmUtYTUzNy01ZWQxMzgxY2IxMGa0ZG93bnN0cmVhbV9jZWxsc19tYXCJqXVpX2NvbW1vbpCrY29kZV9jb21tb26R2SQzMDQwYzM0MS1lMGQ1LTRmZWYtODA5MS0xMTViZWU0NTZkMTKtZGVmYXVsdF9jb2RlQZCzZGVmYXVsdF9jb2RlX2NvbW1vbpClY29kZUKR2SQzMDQwYzM0MS1lMGQ1LTRmZWYtODA5MS0xMTViZWU0NTZkMTKodWlfY29kZUGQpWNvZGVBkdkkMzA0MGMzNDEtZTBkNS00ZmVmLTgwOTEtMTE1YmVlNDU2ZDEyqHVpX2NvZGVCkK1kZWZhdWx0X2NvZGVCkLJ1cHN0cmVhbV9jZWxsc19tYXCMpENvcmWQsVBsdXRvVUkuVGV4dEZpZWxkkKdQbHV0b1VJkdkkNWRkZTQ2ZTktNGJmNC00OWJkLTlmNjctNmM1ZjI0ODlhYzNjqEJhc2UuZ2V0kKVAYmluZJCkVGV4dJCkQmFzZZC/UGx1dG9VSS5FeHBlcmltZW50YWxMYXlvdXQuaGJveJCrUGx1dG9SdW5uZXKQt1BsdXRvUnVubmVyLmNyZWF0ZV9ib25kkK9Db3JlLmFwcGxpY2FibGWQv1BsdXRvVUkuRXhwZXJpbWVudGFsTGF5b3V0LnZib3iQ2SQzMDQwYzM0MS1lMGQ1LTRmZWYtODA5MS0xMTViZWU0NTZkMTKEtHByZWNlZGVuY2VfaGV1cmlzdGljCadjZWxsX2lk2SQzMDQwYzM0MS1lMGQ1LTRmZWYtODA5MS0xMTViZWU0NTZkMTK0ZG93bnN0cmVhbV9jZWxsc19tYXCGom8yktkkYjJjYWQxMTMtMzdiYS00MDc0LTljODEtZGRjYjFhZWNiZmVi2SRhZjA2ZWE4Mi1hNDE4LTRjYTMtYjMzOC0xMWZmNjM4YzliNWKicjGQom8xktkkNDkwNmE1YjUtYmFkZS00MDdmLTk4OTUtODc0ZmJjYzAyZjA22SRhZjA2ZWE4Mi1hNDE4LTRjYTMtYjMzOC0xMWZmNjM4YzliNWKicjKQo3NiMZCjc2IykLJ1cHN0cmVhbV9jZWxsc19tYXCJq2NvZGVfY29tbW9ukdkkZTYwYzJlN2UtZWQ3YS00Y2JlLWE1MzctNWVkMTM4MWNiMTBmrkNvZGVFdmFsdWF0aW9ukdkkY2QyZDc5MWMtYTRiOC0xMWVmLTIyNjQtMGZhMGQ1ODFmOGMwpnN0cmluZ5C5Q29kZUV2YWx1YXRpb24uY29kZWJsb2NrIZCxY2xlYW5fYW5zaV9lc2NhcGWR2SQ4NzEzZDJjMy1jZjBlLTRjNDUtYmUwNi02Y2EwZWM3NzNkNTSlY29kZUKR2SRlNjBjMmU3ZS1lZDdhLTRjYmUtYTUzNy01ZWQxMzgxY2IxMGalY29kZUGR2SRlNjBjMmU3ZS1lZDdhLTRjYmUtYTUzNy01ZWQxMzgxY2IxMGa2Q29kZUV2YWx1YXRpb24uU2FuZGJveJCpaXNub3RoaW5nkNkkZDkwMDNkYzAtNzBlNi00NzMyLWJlN2YtMjc0ZGJiZTM4ZWM3hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkZDkwMDNkYzAtNzBlNi00NzMyLWJlN2YtMjc0ZGJiZTM4ZWM3tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCEoWaR2SQxMjBjNTI4Yi0zMTAwLTQ5ODQtOWM1OC1hYTQyODBiN2Q5MGGwSW50ZXJhY3RpdmVVdGlsc5HZJDEyMGM1MjhiLTMxMDAtNDk4NC05YzU4LWFhNDI4MGI3ZDkwYb5JbnRlcmFjdGl2ZVV0aWxzLmNvZGVfd2FybnR5cGWQrkBjb2RlX3dhcm50eXBlkNkkODRjMTY5ZjctNWM3NS00NjFjLTg2NDMtYTcxNDQzMjNjNzE4hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkODRjMTY5ZjctNWM3NS00NjFjLTg2NDMtYTcxNDQzMjNjNzE4tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCEoWeR2SQxMjBjNTI4Yi0zMTAwLTQ5ODQtOWM1OC1hYTQyODBiN2Q5MGGwSW50ZXJhY3RpdmVVdGlsc5HZJDEyMGM1MjhiLTMxMDAtNDk4NC05YzU4LWFhNDI4MGI3ZDkwYb5JbnRlcmFjdGl2ZVV0aWxzLmNvZGVfd2FybnR5cGWQrkBjb2RlX3dhcm50eXBlkLRjZWxsX2V4ZWN1dGlvbl9vcmRlctwAENkkY2QyZDc5MWMtYTRiOC0xMWVmLTIyNjQtMGZhMGQ1ODFmOGMw2SQ1ZGRlNDZlOS00YmY0LTQ5YmQtOWY2Ny02YzVmMjQ4OWFjM2PZJDEyMGM1MjhiLTMxMDAtNDk4NC05YzU4LWFhNDI4MGI3ZDkwYdkkMjYyYmVlOGMtODk1ZC00NzBjLWE3M2UtYzZhOWY5NTU0ZWM42SQwNmE2YTk2Zi04ZGEwLTRjYmYtOWNmZS01MDIyZDk0NTFjZGXZJDg3MTNkMmMzLWNmMGUtNGM0NS1iZTA2LTZjYTBlYzc3M2Q1NNkkZDkwMDNkYzAtNzBlNi00NzMyLWJlN2YtMjc0ZGJiZTM4ZWM32SQ4NGMxNjlmNy01Yzc1LTQ2MWMtODY0My1hNzE0NDMyM2M3MTjZJGIwMTJjNGUwLTQzYTktNDBlOC05YjRhLWU2NDNhNDkyOWU4OdkkNDVhOGU2NTYtNmQ2ZS00NWNhLWE2OTUtMGVhNzA2ZDI0ZjUw2SRlNjBjMmU3ZS1lZDdhLTRjYmUtYTUzNy01ZWQxMzgxY2IxMGbZJDMwNDBjMzQxLWUwZDUtNGZlZi04MDkxLTExNWJlZTQ1NmQxMtkkNDkwNmE1YjUtYmFkZS00MDdmLTk4OTUtODc0ZmJjYzAyZjA22SRiMmNhZDExMy0zN2JhLTQwNzQtOWM4MS1kZGNiMWFlY2JmZWLZJDZlZGJlMDY5LTNjNGUtNDYxZC1hY2VmLWVmZmViZmM2YjAwMdkkYWYwNmVhODItYTQxOC00Y2EzLWIzMzgtMTFmZjYzOGM5YjVitGxhc3RfaG90X3JlbG9hZF90aW1lywAAAAAAAAAAqXNob3J0cGF0aK1tb25hY29kaWZmLmpsrnByb2Nlc3Nfc3RhdHVzpXJlYWR5pHBhdGjZXS9Vc2Vycy9hdGVsaWVyYXJpdGgvd29yay9hdGVsaWVyYXJpdGgvUGx1dG9Nb25hY29EaWZmVmlld2VyLmpsL3BsYXlncm91bmQvcGx1dG8vbW9uYWNvZGlmZi5qbK1wbHV0b192ZXJzaW9up3YwLjIwLjOubGFzdF9zYXZlX3RpbWXLQdnPEZBH9VqqY2VsbF9vcmRlctwAENkkMjYyYmVlOGMtODk1ZC00NzBjLWE3M2UtYzZhOWY5NTU0ZWM42SQwNmE2YTk2Zi04ZGEwLTRjYmYtOWNmZS01MDIyZDk0NTFjZGXZJGNkMmQ3OTFjLWE0YjgtMTFlZi0yMjY0LTBmYTBkNTgxZjhjMNkkNWRkZTQ2ZTktNGJmNC00OWJkLTlmNjctNmM1ZjI0ODlhYzNj2SQ4NzEzZDJjMy1jZjBlLTRjNDUtYmUwNi02Y2EwZWM3NzNkNTTZJDEyMGM1MjhiLTMxMDAtNDk4NC05YzU4LWFhNDI4MGI3ZDkwYdkkZDkwMDNkYzAtNzBlNi00NzMyLWJlN2YtMjc0ZGJiZTM4ZWM32SQ4NGMxNjlmNy01Yzc1LTQ2MWMtODY0My1hNzE0NDMyM2M3MTjZJGIwMTJjNGUwLTQzYTktNDBlOC05YjRhLWU2NDNhNDkyOWU4OdkkNDVhOGU2NTYtNmQ2ZS00NWNhLWE2OTUtMGVhNzA2ZDI0ZjUw2SRlNjBjMmU3ZS1lZDdhLTRjYmUtYTUzNy01ZWQxMzgxY2IxMGbZJDMwNDBjMzQxLWUwZDUtNGZlZi04MDkxLTExNWJlZTQ1NmQxMtkkNDkwNmE1YjUtYmFkZS00MDdmLTk4OTUtODc0ZmJjYzAyZjA22SRiMmNhZDExMy0zN2JhLTQwNzQtOWM4MS1kZGNiMWFlY2JmZWLZJDZlZGJlMDY5LTNjNGUtNDYxZC1hY2VmLWVmZmViZmM2YjAwMdkkYWYwNmVhODItYTQxOC00Y2EzLWIzMzgtMTFmZjYzOGM5YjVisXB1Ymxpc2hlZF9vYmplY3RzgKVuYnBrZ4qvaW5zdGFsbF90aW1lX25zzpJjJGWsaW5zdGFudGlhdGVkw7JpbnN0YWxsZWRfdmVyc2lvbnOGrkNvZGVFdmFsdWF0aW9upTAuMC4xsEludGVyYWN0aXZlVXRpbHOmc3RkbGlipkJhc2U2NKZzdGRsaWKnUGx1dG9VSaYwLjcuNjCwSHlwZXJ0ZXh0TGl0ZXJhbKUwLjkuNa5CZW5jaG1hcmtUb29sc6UxLjUuMLB0ZXJtaW5hbF9vdXRwdXRzh65Db2RlRXZhbHVhdGlvbtoB3AobWzBtG1sxbUluc3RhbnRpYXRpbmcuLi4bWzIybQobWzkwbT09PRtbMzltCgobWzBtG1sxbVJlc29sdmluZy4uLhtbMjJtChtbOTBtPT09G1szOW0KG1szMm0bWzFtICBObyBDaGFuZ2VzG1syMm0bWzM5bSB0byBgL3ByaXZhdGUvdmFyL2ZvbGRlcnMveTkveGg5NGZ2cGQyaGw1MHpzMDI0aGhqbDE4MDAwMGduL1QvamxfWTgzdUFEL1Byb2plY3QudG9tbGAKG1szMm0bWzFtICBObyBDaGFuZ2VzG1syMm0bWzM5bSB0byBgL3ByaXZhdGUvdmFyL2ZvbGRlcnMveTkveGg5NGZ2cGQyaGw1MHpzMDI0aGhqbDE4MDAwMGduL1QvamxfWTgzdUFEL01hbmlmZXN0LnRvbWxgCgobWzBtG1sxbVByZWNvbXBpbGluZy4uLhtbMjJtChtbOTBtPT09G1szOW0KG1szMm0bWzFtICBBY3RpdmF0aW5nG1syMm0bWzM5bSBwcm9qZWN0IGF0IGAvcHJpdmF0ZS92YXIvZm9sZGVycy95OS94aDk0ZnZwZDJobDUwenMwMjRoaGpsMTgwMDAwZ24vVC9qbF9ZODN1QURgqm5icGtnX3N5bmPaAdwKG1swbRtbMW1JbnN0YW50aWF0aW5nLi4uG1syMm0KG1s5MG09PT0bWzM5bQoKG1swbRtbMW1SZXNvbHZpbmcuLi4bWzIybQobWzkwbT09PRtbMzltChtbMzJtG1sxbSAgTm8gQ2hhbmdlcxtbMjJtG1szOW0gdG8gYC9wcml2YXRlL3Zhci9mb2xkZXJzL3k5L3hoOTRmdnBkMmhsNTB6czAyNGhoamwxODAwMDBnbi9UL2psX1k4M3VBRC9Qcm9qZWN0LnRvbWxgChtbMzJtG1sxbSAgTm8gQ2hhbmdlcxtbMjJtG1szOW0gdG8gYC9wcml2YXRlL3Zhci9mb2xkZXJzL3k5L3hoOTRmdnBkMmhsNTB6czAyNGhoamwxODAwMDBnbi9UL2psX1k4M3VBRC9NYW5pZmVzdC50b21sYAoKG1swbRtbMW1QcmVjb21waWxpbmcuLi4bWzIybQobWzkwbT09PRtbMzltChtbMzJtG1sxbSAgQWN0aXZhdGluZxtbMjJtG1szOW0gcHJvamVjdCBhdCBgL3ByaXZhdGUvdmFyL2ZvbGRlcnMveTkveGg5NGZ2cGQyaGw1MHpzMDI0aGhqbDE4MDAwMGduL1QvamxfWTgzdUFEYKZCYXNlNjTaAdwKG1swbRtbMW1JbnN0YW50aWF0aW5nLi4uG1syMm0KG1s5MG09PT0bWzM5bQoKG1swbRtbMW1SZXNvbHZpbmcuLi4bWzIybQobWzkwbT09PRtbMzltChtbMzJtG1sxbSAgTm8gQ2hhbmdlcxtbMjJtG1szOW0gdG8gYC9wcml2YXRlL3Zhci9mb2xkZXJzL3k5L3hoOTRmdnBkMmhsNTB6czAyNGhoamwxODAwMDBnbi9UL2psX1k4M3VBRC9Qcm9qZWN0LnRvbWxgChtbMzJtG1sxbSAgTm8gQ2hhbmdlcxtbMjJtG1szOW0gdG8gYC9wcml2YXRlL3Zhci9mb2xkZXJzL3k5L3hoOTRmdnBkMmhsNTB6czAyNGhoamwxODAwMDBnbi9UL2psX1k4M3VBRC9NYW5pZmVzdC50b21sYAoKG1swbRtbMW1QcmVjb21waWxpbmcuLi4bWzIybQobWzkwbT09PRtbMzltChtbMzJtG1sxbSAgQWN0aXZhdGluZxtbMjJtG1szOW0gcHJvamVjdCBhdCBgL3ByaXZhdGUvdmFyL2ZvbGRlcnMveTkveGg5NGZ2cGQyaGw1MHpzMDI0aGhqbDE4MDAwMGduL1QvamxfWTgzdUFEYKdQbHV0b1VJ2gHcChtbMG0bWzFtSW5zdGFudGlhdGluZy4uLhtbMjJtChtbOTBtPT09G1szOW0KChtbMG0bWzFtUmVzb2x2aW5nLi4uG1syMm0KG1s5MG09PT0bWzM5bQobWzMybRtbMW0gIE5vIENoYW5nZXMbWzIybRtbMzltIHRvIGAvcHJpdmF0ZS92YXIvZm9sZGVycy95OS94aDk0ZnZwZDJobDUwenMwMjRoaGpsMTgwMDAwZ24vVC9qbF9ZODN1QUQvUHJvamVjdC50b21sYAobWzMybRtbMW0gIE5vIENoYW5nZXMbWzIybRtbMzltIHRvIGAvcHJpdmF0ZS92YXIvZm9sZGVycy95OS94aDk0ZnZwZDJobDUwenMwMjRoaGpsMTgwMDAwZ24vVC9qbF9ZODN1QUQvTWFuaWZlc3QudG9tbGAKChtbMG0bWzFtUHJlY29tcGlsaW5nLi4uG1syMm0KG1s5MG09PT0bWzM5bQobWzMybRtbMW0gIEFjdGl2YXRpbmcbWzIybRtbMzltIHByb2plY3QgYXQgYC9wcml2YXRlL3Zhci9mb2xkZXJzL3k5L3hoOTRmdnBkMmhsNTB6czAyNGhoamwxODAwMDBnbi9UL2psX1k4M3VBRGCwSW50ZXJhY3RpdmVVdGlsc9oB3AobWzBtG1sxbUluc3RhbnRpYXRpbmcuLi4bWzIybQobWzkwbT09PRtbMzltCgobWzBtG1sxbVJlc29sdmluZy4uLhtbMjJtChtbOTBtPT09G1szOW0KG1szMm0bWzFtICBObyBDaGFuZ2VzG1syMm0bWzM5bSB0byBgL3ByaXZhdGUvdmFyL2ZvbGRlcnMveTkveGg5NGZ2cGQyaGw1MHpzMDI0aGhqbDE4MDAwMGduL1QvamxfWTgzdUFEL1Byb2plY3QudG9tbGAKG1szMm0bWzFtICBObyBDaGFuZ2VzG1syMm0bWzM5bSB0byBgL3ByaXZhdGUvdmFyL2ZvbGRlcnMveTkveGg5NGZ2cGQyaGw1MHpzMDI0aGhqbDE4MDAwMGduL1QvamxfWTgzdUFEL01hbmlmZXN0LnRvbWxgCgobWzBtG1sxbVByZWNvbXBpbGluZy4uLhtbMjJtChtbOTBtPT09G1szOW0KG1szMm0bWzFtICBBY3RpdmF0aW5nG1syMm0bWzM5bSBwcm9qZWN0IGF0IGAvcHJpdmF0ZS92YXIvZm9sZGVycy95OS94aDk0ZnZwZDJobDUwenMwMjRoaGpsMTgwMDAwZ24vVC9qbF9ZODN1QURgsEh5cGVydGV4dExpdGVyYWzaAdwKG1swbRtbMW1JbnN0YW50aWF0aW5nLi4uG1syMm0KG1s5MG09PT0bWzM5bQoKG1swbRtbMW1SZXNvbHZpbmcuLi4bWzIybQobWzkwbT09PRtbMzltChtbMzJtG1sxbSAgTm8gQ2hhbmdlcxtbMjJtG1szOW0gdG8gYC9wcml2YXRlL3Zhci9mb2xkZXJzL3k5L3hoOTRmdnBkMmhsNTB6czAyNGhoamwxODAwMDBnbi9UL2psX1k4M3VBRC9Qcm9qZWN0LnRvbWxgChtbMzJtG1sxbSAgTm8gQ2hhbmdlcxtbMjJtG1szOW0gdG8gYC9wcml2YXRlL3Zhci9mb2xkZXJzL3k5L3hoOTRmdnBkMmhsNTB6czAyNGhoamwxODAwMDBnbi9UL2psX1k4M3VBRC9NYW5pZmVzdC50b21sYAoKG1swbRtbMW1QcmVjb21waWxpbmcuLi4bWzIybQobWzkwbT09PRtbMzltChtbMzJtG1sxbSAgQWN0aXZhdGluZxtbMjJtG1szOW0gcHJvamVjdCBhdCBgL3ByaXZhdGUvdmFyL2ZvbGRlcnMveTkveGg5NGZ2cGQyaGw1MHpzMDI0aGhqbDE4MDAwMGduL1QvamxfWTgzdUFEYK5CZW5jaG1hcmtUb29sc9oB3AobWzBtG1sxbUluc3RhbnRpYXRpbmcuLi4bWzIybQobWzkwbT09PRtbMzltCgobWzBtG1sxbVJlc29sdmluZy4uLhtbMjJtChtbOTBtPT09G1szOW0KG1szMm0bWzFtICBObyBDaGFuZ2VzG1syMm0bWzM5bSB0byBgL3ByaXZhdGUvdmFyL2ZvbGRlcnMveTkveGg5NGZ2cGQyaGw1MHpzMDI0aGhqbDE4MDAwMGduL1QvamxfWTgzdUFEL1Byb2plY3QudG9tbGAKG1szMm0bWzFtICBObyBDaGFuZ2VzG1syMm0bWzM5bSB0byBgL3ByaXZhdGUvdmFyL2ZvbGRlcnMveTkveGg5NGZ2cGQyaGw1MHpzMDI0aGhqbDE4MDAwMGduL1QvamxfWTgzdUFEL01hbmlmZXN0LnRvbWxgCgobWzBtG1sxbVByZWNvbXBpbGluZy4uLhtbMjJtChtbOTBtPT09G1szOW0KG1szMm0bWzFtICBBY3RpdmF0aW5nG1syMm0bWzM5bSBwcm9qZWN0IGF0IGAvcHJpdmF0ZS92YXIvZm9sZGVycy95OS94aDk0ZnZwZDJobDUwenMwMjRoaGpsMTgwMDAwZ24vVC9qbF9ZODN1QURgp2VuYWJsZWTDt3Jlc3RhcnRfcmVjb21tZW5kZWRfbXNnwLRyZXN0YXJ0X3JlcXVpcmVkX21zZ8CtYnVzeV9wYWNrYWdlc5C2d2FpdGluZ19mb3JfcGVybWlzc2lvbsLZLHdhaXRpbmdfZm9yX3Blcm1pc3Npb25fYnV0X3Byb2JhYmx5X2Rpc2FibGVkwqtjZWxsX2lucHV0c94AENkkYjAxMmM0ZTAtNDNhOS00MGU4LTliNGEtZTY0M2E0OTI5ZTg5hKdjZWxsX2lk2SRiMDEyYzRlMC00M2E5LTQwZTgtOWI0YS1lNjQzYTQ5MjllODmkY29kZdlaIyB0aGlzIGNhdXNlcyB0eXBlIGluc3RhYmlsaXR5CkBiZW5jaG1hcmsgZih4KSBzZXR1cD1iZWdpbgoJeCA9IHJhbmQoKQplbmQgc2FtcGxlcz0xMDAwMDAwqG1ldGFkYXRhg6lzaG93X2xvZ3PDqGRpc2FibGVkwq5za2lwX2FzX3NjcmlwdMKrY29kZV9mb2xkZWTC2SQwNmE2YTk2Zi04ZGEwLTRjYmYtOWNmZS01MDIyZDk0NTFjZGWEp2NlbGxfaWTZJDA2YTZhOTZmLThkYTAtNGNiZi05Y2ZlLTUwMjJkOTQ1MWNkZaRjb2Rl2bMjIENoYW5nZSBzdHlsZXMgdGhhdCBtYWtlIGNlbGxzIGJlIHdpZGUKaHRtbCIiIgo8c3R5bGU+Cm1haW4gewptYXJnaW46IDAgYXV0bzsKbWF4LXdpZHRoOiAyMDAwcHg7CiAgICBwYWRkaW5nLWxlZnQ6IG1heCg1MHB4LCA1JSk7CiAgICBwYWRkaW5nLXJpZ2h0OiBtYXgoNTBweCwgNSUpOwp9Cjwvc3R5bGU+CiIiIqhtZXRhZGF0YYOpc2hvd19sb2dzw6hkaXNhYmxlZMKuc2tpcF9hc19zY3JpcHTCq2NvZGVfZm9sZGVkwtkkY2QyZDc5MWMtYTRiOC0xMWVmLTIyNjQtMGZhMGQ1ODFmOGMwhKdjZWxsX2lk2SRjZDJkNzkxYy1hNGI4LTExZWYtMjI2NC0wZmEwZDU4MWY4YzCkY29kZdlDYmVnaW4KCXVzaW5nIEJhc2U2NAoJdXNpbmcgQ29kZUV2YWx1YXRpb24KCXVzaW5nIEJlbmNobWFya1Rvb2xzCmVuZKhtZXRhZGF0YYOpc2hvd19sb2dzw6hkaXNhYmxlZMKuc2tpcF9hc19zY3JpcHTCq2NvZGVfZm9sZGVkwtkkNDkwNmE1YjUtYmFkZS00MDdmLTk4OTUtODc0ZmJjYzAyZjA2hKdjZWxsX2lk2SQ0OTA2YTViNS1iYWRlLTQwN2YtOTg5NS04NzRmYmNjMDJmMDakY29kZdkxQGJpbmQgb3V0QSBQbHV0b1VJLlRleHRGaWVsZCgoODAsIDUpLCBkZWZhdWx0PW8xKahtZXRhZGF0YYOpc2hvd19sb2dzw6hkaXNhYmxlZMKuc2tpcF9hc19zY3JpcHTCq2NvZGVfZm9sZGVkwtkkNmVkYmUwNjktM2M0ZS00NjFkLWFjZWYtZWZmZWJmYzZiMDAxhKdjZWxsX2lk2SQ2ZWRiZTA2OS0zYzRlLTQ2MWQtYWNlZi1lZmZlYmZjNmIwMDGkY29kZdoD/GZ1bmN0aW9uIGRpZmZqcyhvMTo6U3RyaW5nLCBvMjo6U3RyaW5nKQoJbzFidWYgPSBJT0J1ZmZlcigpCglvMmJ1ZiA9IElPQnVmZmVyKCkKCXdyaXRlKG8xYnVmLCBvMSkKCXdyaXRlKG8yYnVmLCBvMikKCWI2NG8xID0gYmFzZTY0ZW5jb2RlKFN0cmluZyh0YWtlIShvMWJ1ZikpKQoJYjY0bzIgPSBiYXNlNjRlbmNvZGUoU3RyaW5nKHRha2UhKG8yYnVmKSkpCgkKCWRpZmZqc3RlbXBsYXRlID0gIiIiCmZ1bmN0aW9uIGRlY29kZUJhc2U2NChiYXNlNjRTdHJpbmcpIHsKICAgIGNvbnN0IHByZWZpeCA9ICJkYXRhOnRleHQvcGxhaW47YmFzZTY0LCI7CiAgICBpZiAoYmFzZTY0U3RyaW5nLnN0YXJ0c1dpdGgocHJlZml4KSkgewogICAgICAgIGJhc2U2NFN0cmluZyA9IGJhc2U2NFN0cmluZy5zbGljZShwcmVmaXgubGVuZ3RoKTsKICAgIH0KICAgIGNvbnN0IGRlY29kZWREYXRhID0gYXRvYihiYXNlNjRTdHJpbmcpOwogICAgcmV0dXJuIGRlY29kZWREYXRhOwp9CgpyZXF1aXJlLmNvbmZpZyh7IHBhdGhzOiB7IHZzOiAnaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvbW9uYWNvLWVkaXRvci8wLjUyLjAvbWluL3ZzJyB9fSk7CgpyZXF1aXJlKFsndnMvZWRpdG9yL2VkaXRvci5tYWluJ10sICgpID0+IHsKCXZhciBkaWZmRWRpdG9yID0gbW9uYWNvLmVkaXRvci5jcmVhdGVEaWZmRWRpdG9yKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdteWNvbnRhaW5lcicpKTsKCWxldCBvcmlnaW5hbFR4dCA9IGRlY29kZUJhc2U2NCgiJChiNjRvMSkiKTsKCWxldCBtb2RpZmllZFR4dCA9IGRlY29kZUJhc2U2NCgiJChiNjRvMikiKTsKCWNvbnNvbGUubG9nKG1vZGlmaWVkVHh0KQoJZGlmZkVkaXRvci5zZXRNb2RlbCh7CgkJb3JpZ2luYWw6IG1vbmFjby5lZGl0b3IuY3JlYXRlTW9kZWwob3JpZ2luYWxUeHQsICdqdWxpYScpLAoJCW1vZGlmaWVkOiBtb25hY28uZWRpdG9yLmNyZWF0ZU1vZGVsKG1vZGlmaWVkVHh0LCAnanVsaWEnKQoJfSk7Cn0pOwoiIiIKCWRpZmZqc3RlbXBsYXRlCmVuZKhtZXRhZGF0YYOpc2hvd19sb2dzw6hkaXNhYmxlZMKuc2tpcF9hc19zY3JpcHTCq2NvZGVfZm9sZGVkwtkkNDVhOGU2NTYtNmQ2ZS00NWNhLWE2OTUtMGVhNzA2ZDI0ZjUwhKdjZWxsX2lk2SQ0NWE4ZTY1Ni02ZDZlLTQ1Y2EtYTY5NS0wZWE3MDZkMjRmNTCkY29kZdlYIyB0eXBlIHN0YWJsZSBpbXBsZW1lbnRhdGlvbgpAYmVuY2htYXJrIGcoeCkgc2V0dXA9YmVnaW4KCXggPSByYW5kKCkKZW5kIHNhbXBsZXM9MTAwMDAwMKhtZXRhZGF0YYOpc2hvd19sb2dzw6hkaXNhYmxlZMKuc2tpcF9hc19zY3JpcHTCq2NvZGVfZm9sZGVkwtkkNWRkZTQ2ZTktNGJmNC00OWJkLTlmNjctNmM1ZjI0ODlhYzNjhKdjZWxsX2lk2SQ1ZGRlNDZlOS00YmY0LTQ5YmQtOWY2Ny02YzVmMjQ4OWFjM2OkY29kZdkwYmVnaW4KCXVzaW5nIFBsdXRvVUkKCXVzaW5nIEh5cGVydGV4dExpdGVyYWwKZW5kqG1ldGFkYXRhg6lzaG93X2xvZ3PDqGRpc2FibGVkwq5za2lwX2FzX3NjcmlwdMKrY29kZV9mb2xkZWTC2SRhZjA2ZWE4Mi1hNDE4LTRjYTMtYjMzOC0xMWZmNjM4YzliNWKEp2NlbGxfaWTZJGFmMDZlYTgyLWE0MTgtNGNhMy1iMzM4LTExZmY2MzhjOWI1YqRjb2Rl2gI6YmVnaW4KCWRpZmZidWYgPSBJT0J1ZmZlcigpCgl3cml0ZShkaWZmYnVmLCBkaWZmanMobzEsbzIpKQoJYjY0ZGlmZiA9IGJhc2U2NGVuY29kZShTdHJpbmcodGFrZSEoZGlmZmJ1ZikpKQoJYjY0ZGlmZiA9ICJkYXRhOnRleHQvamF2YXNjcmlwdDtiYXNlNjQsJChiNjRkaWZmKSIKCXdyaXRlKCJkaWZmLmpzIiwgZGlmZmpzKG8xLG8yKSkKCUBodGwgIiIiCgk8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvcmVxdWlyZS5qcy8yLjMuNy9yZXF1aXJlLmpzIj48L3NjcmlwdD4KCTxzY3JpcHQgc3JjPSJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9tb25hY28tZWRpdG9yLzAuNTIuMC9taW4vdnMvbG9hZGVyLmpzIj48L3NjcmlwdD4KCQoJPGgyPk1vbmFjbyBEaWZmIEVkaXRvciBTYW1wbGU8L2gyPgoJPGRpdiBpZD0ibXljb250YWluZXIiIHN0eWxlPSJ3aWR0aDogMTUwMHB4OyBoZWlnaHQ6IDUwMHB4OyBib3JkZXI6IDFweCBzb2xpZCBncmV5Ij48L2Rpdj4KCSQoUGx1dG9VSS5Mb2NhbFJlc291cmNlKCJkaWZmLmpzIikpCgkiIiIKZW5kqG1ldGFkYXRhg6lzaG93X2xvZ3PDqGRpc2FibGVkwq5za2lwX2FzX3NjcmlwdMKrY29kZV9mb2xkZWTC2SQxMjBjNTI4Yi0zMTAwLTQ5ODQtOWM1OC1hYTQyODBiN2Q5MGGEp2NlbGxfaWTZJDEyMGM1MjhiLTMxMDAtNDk4NC05YzU4LWFhNDI4MGI3ZDkwYaRjb2Rl2XliZWdpbgoJdXNpbmcgSW50ZXJhY3RpdmVVdGlscwoJCglmdW5jdGlvbiBmKHgpCgkJeCA+IDAgPyB4IDogMAoJZW5kCgkKCWZ1bmN0aW9uIGcoeCkKCQl4ID4gemVybyh4KSA/IHggOiB6ZXJvKHgpCgllbmQKZW5kqG1ldGFkYXRhg6lzaG93X2xvZ3PDqGRpc2FibGVkwq5za2lwX2FzX3NjcmlwdMKrY29kZV9mb2xkZWTC2SRiMmNhZDExMy0zN2JhLTQwNzQtOWM4MS1kZGNiMWFlY2JmZWKEp2NlbGxfaWTZJGIyY2FkMTEzLTM3YmEtNDA3NC05YzgxLWRkY2IxYWVjYmZlYqRjb2Rl2TFAYmluZCBvdXRCIFBsdXRvVUkuVGV4dEZpZWxkKCg4MCwgNSksIGRlZmF1bHQ9bzIpqG1ldGFkYXRhg6lzaG93X2xvZ3PDqGRpc2FibGVkwq5za2lwX2FzX3NjcmlwdMKrY29kZV9mb2xkZWTC2SQyNjJiZWU4Yy04OTVkLTQ3MGMtYTczZS1jNmE5Zjk1NTRlYziEp2NlbGxfaWTZJDI2MmJlZThjLTg5NWQtNDcwYy1hNzNlLWM2YTlmOTU1NGVjOKRjb2Rl2UxtZCIiIgojIEhhdmluZyBhIHR5cGUtc3RhYmxlIGltcGxlbWVudGF0aW9uIGlzIHN0aWxsIGltcG9ydGFudCBpbiBKdWxpYS4KIiIiqG1ldGFkYXRhg6lzaG93X2xvZ3PDqGRpc2FibGVkwq5za2lwX2FzX3NjcmlwdMKrY29kZV9mb2xkZWTD2SQ4NzEzZDJjMy1jZjBlLTRjNDUtYmUwNi02Y2EwZWM3NzNkNTSEp2NlbGxfaWTZJDg3MTNkMmMzLWNmMGUtNGM0NS1iZTA2LTZjYTBlYzc3M2Q1NKRjb2Rl2fpmdW5jdGlvbiBjbGVhbl9hbnNpX2VzY2FwZShzKQoJIyBSZWd1bGFyIGV4cHJlc3Npb24gcGF0dGVybiB0byBtYXRjaCBBTlNJIGVzY2FwZSBzZXF1ZW5jZXMKCWFuc2lfZXNjYXBlX3BhdHRlcm4gPSByIlxlXFtbMC05O10qbSIKCSMgUmVwbGFjZSBBTlNJIGVzY2FwZSBzZXF1ZW5jZXMgd2l0aCBlbXB0eSBzdHJpbmdzCglzX2NsZWFuID0gcmVwbGFjZShzLCBhbnNpX2VzY2FwZV9wYXR0ZXJuID0+ICIiKQoJcmV0dXJuIHNfY2xlYW4KZW5kqG1ldGFkYXRhg6lzaG93X2xvZ3PDqGRpc2FibGVkwq5za2lwX2FzX3NjcmlwdMKrY29kZV9mb2xkZWTC2SRlNjBjMmU3ZS1lZDdhLTRjYmUtYTUzNy01ZWQxMzgxY2IxMGaEp2NlbGxfaWTZJGU2MGMyZTdlLWVkN2EtNGNiZS1hNTM3LTVlZDEzODFjYjEwZqRjb2Rl2gKhYmVnaW4KCWRlZmF1bHRfY29kZV9jb21tb24gPSAiIiIKCXVzaW5nIEludGVyYWN0aXZlVXRpbHMKCQoJZnVuY3Rpb24gY29kZUEoeCkKCQl4ID4gMCA/IHggOiAwCgllbmQKCQoJZnVuY3Rpb24gY29kZUIoeCkKCQl4ID4gMCA/IHggOiB6ZXJvKHgpCgllbmQKCSIiIgoKCWRlZmF1bHRfY29kZUEgPSAiIiIKCSMgY29kZUEKCUBjb2RlX2xsdm0gZGVidWdpbmZvPTpub25lIGNvZGVBKDEuMCkKCSIiIgoKCWRlZmF1bHRfY29kZUIgPSAiIiIKCSMgY29kZUIKCUBjb2RlX2xsdm0gZGVidWdpbmZvPTpub25lIGNvZGVCKDEuMCkKCSIiIgoKCXVpX2NvbW1vbiA9IEBiaW5kIGNvZGVfY29tbW9uIFBsdXRvVUkuVGV4dEZpZWxkKCg4NCwgMTApLCBkZWZhdWx0PWRlZmF1bHRfY29kZV9jb21tb24pCgl1aV9jb2RlQSA9IEBiaW5kIGNvZGVBIFBsdXRvVUkuVGV4dEZpZWxkKCg0MCwgOCksIGRlZmF1bHQ9ZGVmYXVsdF9jb2RlQSkKCXVpX2NvZGVCID0gQGJpbmQgY29kZUIgUGx1dG9VSS5UZXh0RmllbGQoKDQwLCA4KSwgZGVmYXVsdD1kZWZhdWx0X2NvZGVCKQoKCVBsdXRvVUkuRXhwZXJpbWVudGFsTGF5b3V0LnZib3goCgkJWwoJCQl1aV9jb21tb24sCgkJCVBsdXRvVUkuRXhwZXJpbWVudGFsTGF5b3V0Lmhib3goW3VpX2NvZGVBLCBUZXh0KCIgIiksIHVpX2NvZGVCXSkKCQldCgkJCgkpCmVuZKhtZXRhZGF0YYOpc2hvd19sb2dzw6hkaXNhYmxlZMKuc2tpcF9hc19zY3JpcHTCq2NvZGVfZm9sZGVkwtkkMzA0MGMzNDEtZTBkNS00ZmVmLTgwOTEtMTE1YmVlNDU2ZDEyhKdjZWxsX2lk2SQzMDQwYzM0MS1lMGQ1LTRmZWYtODA5MS0xMTViZWU0NTZkMTKkY29kZdoBvWJlZ2luCglzYjEgPSBDb2RlRXZhbHVhdGlvbi5TYW5kYm94KCkKCXNiMiA9IENvZGVFdmFsdWF0aW9uLlNhbmRib3goKQoKCUNvZGVFdmFsdWF0aW9uLmNvZGVibG9jayEoc2IxLCBjb2RlX2NvbW1vbikKCXIxID0gQ29kZUV2YWx1YXRpb24uY29kZWJsb2NrIShzYjEsIGNvZGVBKQoJQ29kZUV2YWx1YXRpb24uY29kZWJsb2NrIShzYjIsIGNvZGVfY29tbW9uKQoJcjIgPSBDb2RlRXZhbHVhdGlvbi5jb2RlYmxvY2shKHNiMiwgY29kZUIpCgoJaWYgaXNub3RoaW5nKHIxLnZhbHVlKQoJCW8xID0gY2xlYW5fYW5zaV9lc2NhcGUocjEub3V0cHV0KQoJZWxzZQoJCW8xID0gc3RyaW5nKHIxLnZhbHVlKQoJZW5kCgkKCWlmIGlzbm90aGluZyhyMi52YWx1ZSkKCQlvMiA9IGNsZWFuX2Fuc2lfZXNjYXBlKHIyLm91dHB1dCkKCWVsc2UKCQlvMiA9IHN0cmluZyhyMi52YWx1ZSkKCWVuZAplbmSobWV0YWRhdGGDqXNob3dfbG9nc8OoZGlzYWJsZWTCrnNraXBfYXNfc2NyaXB0wqtjb2RlX2ZvbGRlZMLZJGQ5MDAzZGMwLTcwZTYtNDczMi1iZTdmLTI3NGRiYmUzOGVjN4SnY2VsbF9pZNkkZDkwMDNkYzAtNzBlNi00NzMyLWJlN2YtMjc0ZGJiZTM4ZWM3pGNvZGW1QGNvZGVfd2FybnR5cGUgZigxLjApqG1ldGFkYXRhg6lzaG93X2xvZ3PDqGRpc2FibGVkwq5za2lwX2FzX3NjcmlwdMKrY29kZV9mb2xkZWTC2SQ4NGMxNjlmNy01Yzc1LTQ2MWMtODY0My1hNzE0NDMyM2M3MTiEp2NlbGxfaWTZJDg0YzE2OWY3LTVjNzUtNDYxYy04NjQzLWE3MTQ0MzIzYzcxOKRjb2RltUBjb2RlX3dhcm50eXBlIGcoMS4wKahtZXRhZGF0YYOpc2hvd19sb2dzw6hkaXNhYmxlZMKuc2tpcF9hc19zY3JpcHTCq2NvZGVfZm9sZGVkwqtub3RlYm9va19pZNkkNDBhYWFmZWEtYTY0Yy0xMWVmLTAxOTQtZGRkYTEwNmQ3ZTNkq2luX3RlbXBfZGlywqhtZXRhZGF0YYA="; | |
window.pluto_preamble_html = undefined; | |
</script> | |
<meta name="pluto-insertion-spot-parameters"> | |
<script src="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.ec3e2f3c.js" type="module" defer="" integrity="sha384-hAH1f4wjZa+VcKIIrZfqVuQm2PtEI9kjEwikktfW1r0LQUjNFZwlYShWy7ys2akU" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.8a3292da.js" integrity="sha384-itp4oE2PRbSrrTHVpWh8sqAuVUsz7ja6L2Dgp/JRfMCD2AwVdTk56K96POF3oLmu" crossorigin="anonymous"></script><script type="text/javascript" id="MathJax-script" integrity="sha384-4kE/rQ11E8xT9QgrCBTyvenkuPfQo8rXYQvJZuMgxyPOoUfpatjQPlgdv6V5yhUK" crossorigin="" not-the-src-yet="https://cdn.jsdelivr.net/npm/[email protected]/es5/tex-svg-full.js" async=""></script> | |
<meta name="pluto-insertion-spot-preload"> | |
</head><body class="loading no-MαθJax"> <div style="display:flex;min-height:100vh;"> <pluto-editor class="fullscreen"> <progress style="filter:grayscale(1)" class="delete-me-when-live statefile-fetch-progress" max="100"></progress> </pluto-editor> </div> </body></html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
https://htmlview.glitch.me/?https://gist.github.com/terasakisatoshi/c2c640d0d0a72b51443b1c9e5ec9a360