Skip to content

Instantly share code, notes, and snippets.

@fonsp
Created December 1, 2021 13:47
Show Gist options
  • Save fonsp/ceb9fd05eab900383821e4e3a2268972 to your computer and use it in GitHub Desktop.
Save fonsp/ceb9fd05eab900383821e4e3a2268972 to your computer and use it in GitHub Desktop.
some HTML exports from different Pluto versions
<!DOCTYPE html>
<html lang="en">
<head>
<meta name="viewport" content="width=device-width" />
<title>⚡ Pluto.jl ⚡</title>
<meta charset="utf-8" />
<script>
console.log("Pluto.jl, by Fons van der Plas (https://github.com/fonsp) and Mikołaj Bochenski (https://github.com/malyvsen) 🌈")
</script>
<meta name="author" content="Fons van der Plas; Mikołaj Bochenski" />
<link rel="license" href="https://github.com/fonsp/Pluto.jl/blob/main/LICENSE" />
<meta name="theme-color" content="#ffffff" />
<link rel="icon" type="image/png" sizes="16x16" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@2a48ae2/frontend/img/favicon-16x16.png" />
<link rel="icon" type="image/png" sizes="32x32" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@2a48ae2/frontend/img/favicon-32x32.png" />
<link rel="icon" type="image/png" sizes="96x96" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@2a48ae2/frontend/img/favicon-96x96.png" />
<meta name="description" content="Pluto.jl notebooks" />
<link rel="pluto-logo-big" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@2a48ae2/frontend/img/logo.svg" />
<link rel="pluto-logo-small" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@2a48ae2/frontend/img/favicon_unsaturated.svg" />
<link rel="pluto-sw" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@2a48ae2/frontend/sw.js" />
<script>
navigator.serviceWorker?.register(document.head.querySelector("link[rel='pluto-sw']").getAttribute("href"), { scope: "./" }).catch(console.warn)
</script>
<script src="https://cdn.jsdelivr.net/npm/lodash@4.17.20/lodash.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/@observablehq/stdlib@3.3.1/dist/stdlib.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/iframe-resizer@4.2.11/js/iframeResizer.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/lib/codemirror.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/mode/julia/julia.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/mode/loadmode.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/mode/meta.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/hint/show-hint.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/display/placeholder.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/edit/matchbrackets.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/runmode/runmode.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/comment/comment.min.js" defer></script>
<!-- <script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/edit/closebrackets.min.js" defer></script> -->
<!-- <script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/search/searchcursor.min.js" defer></script> -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/lib/codemirror.min.css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/hint/show-hint.min.css" />
<script src="https://cdn.jsdelivr.net/npm/ansi_up@5.0.1/ansi_up.min.js" defer></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@2a48ae2/frontend/editor.css" type="text/css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@2a48ae2/frontend/hide-ui.css" type="text/css" media="all" data-pluto-file="hide-ui">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@2a48ae2/frontend/binder.css" type="text/css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@2a48ae2/frontend/treeview.css" type="text/css" />
<link rel="preload" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@2a48ae2/frontend/juliamono.css" as="style">
<link rel="preload" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@2a48ae2/frontend/vollkorn.css" as="style">
<!-- The instant feedback form at the bottom of the page uses Google Firestore to save feedback. -->
<script src="https://cdn.jsdelivr.net/npm/firebase@7.13.1/firebase-app.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/firebase@7.13.1/firebase-firestore.js" defer></script>
<script data-pluto-file="launch-parameters">
window.pluto_notebookfile = "data:text/julia;charset=utf-8;base64,IyMjIEEgUGx1dG8uamwgbm90ZWJvb2sgIyMjCiMgdjAuMTUuMAoKdXNpbmcgTWFya2Rvd24KdXNpbmcgSW50ZXJhY3RpdmVVdGlscwoKIyDilZTilZDilaEgNWIyZWU0MGUtYTJiOC0xMWVhLTBmZWYtYzM1ZmU2OTE4ODYwCm1kIiIiCiMgVGhlIHRvd2VyIG9mIEhhbm9pCgpUaGUgdG93ZXIgb2YgaGFub2kgaXMgYSBmYW1vdXMgcHV6emxlLgoKIVtzZXR1cCBvZiB0aGUgdG93ZXIgb2YgYSBoYW5vaV0oaHR0cHM6Ly91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy8wLzA3L1Rvd2VyX29mX0hhbm9pLmpwZWcpCgpUaGUgZ2FtZSBjb25zaXN0cyBvZiB0aHJlZSByb2RzIHdpdGggZGlza3Mgc3RhY2tlZCBvbiB0b3Agb2YgdGhlbS4gVGhlIHB1enpsZSB3aWxsIHN0YXJ0IHdpdGggYWxsIGRpc2tzIGluIGEgc3RhY2sgb24gb25lIG9mIHRoZSByb2RzIChsaWtlIGluIHRoZSBwaWN0dXJlKS4gVGhlIGdvYWwgaXMgdG8gbW92ZSBhbGwgdGhlIGRpc2NzIHRvIGEgc2luZ2xlIHN0YWNrIG9uIHRoZSBsYXN0IHJvZC4KClRvIG1vdmUgdGhlIGRpc2tzLCB5b3UgaGF2ZSB0byBmb2xsb3cgdGhlIGZvbGxvd2luZyBydWxlczoKCiogWW91IGNhbiBtb3ZlIG9ubHkgb25lIGRpc2sgYXQgYSB0aW1lLgoqIEZvciBlYWNoIG1vdmUsIHlvdSBoYXZlIHRvIHRha2UgdGhlIHVwcGVyIGRpc2sgZnJvbSBvbmUgb2YgdGhlIHN0YWNrcywgYW5kIHBsYWNlIGl0IG9uIHRvcCBvZiBhbm90aGVyIHN0YWNrIG9yIGVtcHR5IHJvZC4KKiBZb3UgY2Fubm90IHBsYWNlIGEgbGFyZ2VyIGRpc2sgb24gdG9wIG9mIGEgc21hbGxlciBkaXNrLgoKVGhpcyBub3RlYm9vayB3aWxsIGRlZmluZSBhIEp1bGlhIGltcGxlbWVudGF0aW9uIG9mIHRoZSBwdXp6bGUuIEl0J3MgdXAgdG8geW91IHRvIHdyaXRlIGFuIGFsZ29yaXRobSB0aGF0IHNvbHZlcyBpdC4KIiIiCgojIOKVlOKVkOKVoSA5NWZiZDBkMi1hMmI5LTExZWEtMDY4Mi1mZGY3ODMyNTE3OTcKbWQiIiIKIyMgU2V0dGluZyB1cCB0aGUgZ2FtZSBwaWVjZXMKCldoYXQgZG9lcyBhIEp1bGlhIGltcGxlbWVudGF0aW9uIGxvb2sgbGlrZT8gV2UncmUgbm90IHJlYWxseSBpbnRlcmVzdGVkIGluIHdyaXRpbmcgY29kZSB0aGF0IHdpbGwgbWFuaXB1bGF0ZSBwaHlzaWNhbCBkaXNrcy4gT3VyIGZpbmFsIGdvYWwgaXMgYSBmdW5jdGlvbiB0aGF0IHdpbGwgZ2l2ZSB1cyBhIF9yZWNpcGVfIHRvIHNvbHZlIHRoZSB0b3dlciBvZiBoYW5vaSwgd2hpY2ggaXMganVzdCBhIGxpc3Qgb2YgbW92ZXMgdG8gbWFrZS4gQmVjYXVzZSBvZiB0aGF0LCB3ZSBjYW4gdXNlIGEgbG90IG9mIGFic3RyYWN0aW9uIGluIG91ciBpbXBsZW1lbnRhdGlvbiwgYW5kIGtlZXAgdGhlIGRhdGEgc3RydWN0dXJlcyBhcyBzaW1wbGUgYXMgcG9zc2libGUuCgpUbyBzdGFydCwgd2UgaGF2ZSB0byBkZWZpbmUgc29tZSByZXByZXNlbnRhdGlvbiBvZiB0aGUgZGlza3MgYW5kIHRoZSBzdGFja3MuIFRoZSBkaXNrcyBoYXZlIG9uZSBpbXBvcnRhbnQgcHJvcGVydHksIHdoaWNoIGlzIHRoYXQgdGhleSBhcmUgb3JkZXJlZC4gV2UgY2FuIHVzZSBpbnRlZ2VycyB0byByZXByZXNlbnQgdGhlbS4KIiIiCgojIOKVlOKVkOKVoSA2MjBkNjgzNC1hMmJhLTExZWEtMTUwYS0yMTMyYmI1NGU0YjMKbnVtX2Rpc2tzID0gOAoKIyDilZTilZDilaEgMzVhZGEyMTQtYTMyYy0xMWVhLTBkYTMtZDVkNDk0YjI4NDY3Cm1kIiIiKFNpZGUgbm90ZTogdGhlIG51bWJlciBvZiBkaXNrcyBpcyBhcmJpdHJhcnkuIFdoZW4gdGVzdGluZyB5b3VyIGZ1bmN0aW9uLCB5b3UgbWF5IHdhbnQgdG8gc2V0IGl0IHRvIDEgb3IgMiB0byBzdGFydC4pIiIiCgojIOKVlOKVkOKVoSA3MjQzY2M4ZS1hMmJhLTExZWEtM2YyOS05OTM1NmYwY2RjZjQKYWxsX2Rpc2tzID0gMTpudW1fZGlza3MKCiMg4pWU4pWQ4pWhIDdlMWJhMmFjLWEyYmEtMTFlYS0wMTM0LTJmNjFlZDc1YmUxOAptZCIiIgpBIHNpbmdsZSBzdGFjayBjYW4gYmUgcmVwcmVzZW50ZWQgYXMgYW4gYXJyYXkgd2l0aCBhbGwgdGhlIGRpc2tzIGluIGl0LiBXZSB3aWxsIGxpc3QgdGhlbSBmcm9tIHRvcCB0byBib3R0b20uCiIiIgoKIyDilZTilZDilaEgNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgzCmZpcnN0X3N0YWNrID0gY29sbGVjdChhbGxfZGlza3MpCgojIOKVlOKVkOKVoSBiNjQ4YWI3MC1hMmJhLTExZWEtMmRjYy01NWI2MzBlNDQzMjUKbWQiIiIKTm93IHdlIGhhdmUgdG8gbWFrZSB0aHJlZSBvZiB0aG9zZS4gCiIiIgoKIyDilZTilZDilaEgMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNkCnN0YXJ0aW5nX3N0YWNrcyA9IFtmaXJzdF9zdGFjaywgW10sIFtdXQoKIyDilZTilZDilaEgZTM0N2YxZGUtYTJiYi0xMWVhLTA2ZTctODdjY2E2ZjJhMjQwCm1kIiIiCiMjIERlZmluaW5nIHRoZSBydWxlcwoKTm93IHRoYXQgd2UgaGF2ZSBvdXIgImdhbWUgYm9hcmQiLCB3ZSBjYW4gaW1wbGVtZW50IHRoZSBydWxlcy4KClRvIHN0YXJ0LCB3ZSBtYWtlIHR3byBmdW5jdGlvbnMgZm9yIHN0YXRlcy4gQSBzdGF0ZSBvZiB0aGUgZ2FtZSBpcyBqdXN0IGFuIGFycmF5IG9mIHN0YWNrcy4KCldlIHdpbGwgZGVmaW5lIGEgZnVuY3Rpb24gdGhhdCBjaGVja3MgaWYgYSBzdGF0ZSBpcyBva2F5IGFjY29yZGluZyB0byB0aGUgcnVsZXMuIFRvIGJlIGxlZ2FsLCBhbGwgdGhlIHN0YWNrcyBzaG91bGQgYmUgaW4gdGhlIGNvcnJlY3Qgb3JkZXIsIHNvIG5vIGxhcmdlciBkaXNrcyBvbiB0b3Agb2Ygc21hbGxlciBkaXNrcy4gCgpBbm90aGVyIGdvb2QgdGhpbmcgdG8gY2hlY2s6IG5vIGRpc2tzIHNob3VsZCBoYXZlIGFwcGVhcmVkIG9yIGRpc2FwcGVhcmVkIHNpbmNlIHdlIHN0YXJ0ZWQhCiIiIgoKIyDilZTilZDilaEgNTEyZmE2ZDItYTJiZC0xMWVhLTNkYmUtYjkzNWI1MzY5NjdiCmZ1bmN0aW9uIGlzbGVnYWwoc3RhY2tzKQoJb3JkZXJfY29ycmVjdCA9IGFsbChpc3NvcnRlZCwgc3RhY2tzKQoJCgkjY2hlY2sgaWYgd2UgdXNlIHRoZSBzYW1lIGRpc2sgc2V0IHRoYXQgd2Ugc3RhcnRlZCB3aXRoCgkKCWRpc2tzX2luX3N0YXRlID0gc29ydChbZGlzayBmb3Igc3RhY2sgaW4gc3RhY2tzIGZvciBkaXNrIGluIHN0YWNrXSkKCWRpc2tzX2NvbXBsZXRlID0gZGlza3NfaW5fc3RhdGUgPT0gYWxsX2Rpc2tzCgkKCW9yZGVyX2NvcnJlY3QgJiYgZGlza3NfY29tcGxldGUKZW5kCgojIOKVlOKVkOKVoSBjNTZhNTg1OC1hMmJkLTExZWEtMWQ5Ni03N2VhZjVlNzQ5MjUKbWQiIiIKQW5vdGhlciBmdW5jdGlvbiBmb3Igc3RhdGVzOiBjaGVjayBpZiB3ZSBhcmUgZG9uZSEgV2UgY2FuIGFzc3VtZSB0aGF0IHdlIGFscmVhZHkgY2hlY2tlZCBpZiB0aGUgc3RhdGUgd2FzIGxlZ2FsLiBTbyB3ZSBrbm93IHRoYXQgYWxsIHRoZSBkaXNrcyBhcmUgdGhlcmUgYW5kIHRoZXkgYXJlIG9yZGVyZWQgY29ycmVjdGx5LiAgVG8gY2hlY2sgaWYgd2UgYXJlIGZpbmlzaGVkLCB3ZSBqdXN0IG5lZWQgdG8gY2hlY2sgaWYgdGhlIGxhc3Qgc3RhY2sgY29udGFpbnMgYWxsIHRoZSBkaXNrcy4KIiIiCgojIOKVlOKVkOKVoSBkNWNjNDFlOC1hMmJkLTExZWEtMzljNy1iN2RmOGRlNmFlM2UKZnVuY3Rpb24gaXNjb21wbGV0ZShzdGFja3MpCglsYXN0KHN0YWNrcykgPT0gYWxsX2Rpc2tzCmVuZAoKIyDilZTilZDilaEgNTMzNzRmMGUtYTJjMC0xMWVhLTBjOTEtOTc0NzQ3ODA3MjFlCm1kIiIiCk5vdyB0aGUgb25seSBydWxlcyBsZWZ0IHRvIGltcGxlbWVudCBhcmUgdGhlIHJ1bGVzIGZvciBtb3ZpbmcgZGlza3MuIAoKV2UgY291bGQgaW1wbGVtZW50IHRoaXMgYXMgYW5vdGhlciBjaGVjayBvbiBzdGF0ZXMsIGJ1dCBpdCdzIGVhc2llciB0byBqdXN0IHdyaXRlIGEgbGVnYWwgYG1vdmVgIGZ1bmN0aW9uLiBZb3VyIHNvbHV0aW9uIHdpbGwgc3BlY2lmeSBtb3ZlcyBmb3IgdGhlIGBtb3ZlYCBmdW5jdGlvbiwgc28gdGhpcyB3aWxsIGJlIHRoZSBvbmx5IHdheSB0aGF0IHRoZSBzdGFja3MgYXJlIGFjdHVhbGx5IG1hbmlwdWxhdGVkLiBUaGF0IHdheSwgd2UgYXJlIHN1cmUgdGhhdCBub3RoaW5nIGZpc2h5IGlzIGhhcHBlbmluZy4KCldlIHdpbGwgbWFrZSBvdXIgYG1vdmVgIGZ1bmN0aW9uIHNvIHRoYXQgaXRzIGlucHV0IGNvbnNpc3RzIG9mIGEgc3RhdGUgb2YgdGhlIGdhbWUsIGFuZCBpbnN0cnVjdGlvbnMgZm9yIHdoYXQgdG8gZG8uIEl0cyBvdXRwdXQgd2lsbCBiZSB0aGUgbmV3IHN0YXRlIG9mIHRoZSBnYW1lLgoKU28gd2hhdCBzaG91bGQgdGhvc2UgaW5zdHJ1Y3Rpb25zIGxvb2sgbGlrZT8gSXQgbWF5IHNlZW0gaW50dWl0aXZlIHRvIGdpdmUgYSBfZGlza18gdGhhdCBzaG91bGQgYmUgbW92ZWQsIGJ1dCB0aGF0J3MgbW9yZSB0aGFuIHdlIG5lZWQuIEFmdGVyIGFsbCwgd2UgYXJlIG9ubHkgYWxsb3dlZCB0byB0YWtlIHRoZSB0b3AgZGlzayBmcm9tIG9uZSBzdGFjaywgYW5kIG1vdmUgaXQgdG8gdGhlIHRvcCBvZiBhbm90aGVyLiBTbyB3ZSBvbmx5IGhhdmUgdG8gc2F5IHdoaWNoIF9zdGFja3NfIHdlIGFyZSBtb3ZpbmcgYmV0d2Vlbi4KCihOb3RlIHRoYXQgdGhlIGBtb3ZlYCBmdW5jdGlvbiBpcyBva2F5IHdpdGggbW92aW5nIGEgbGFyZ2VyIGRpc2sgb24gdG9wIG9mIGEgc21hbGxlciBkaXNrLiBXZSBhbHJlYWR5IGltcGxlbWVudGVkIHRoYXQgcmVzdHJpY3Rpb24gaW4gYGlzbGVnYWxgLikKIiIiCgojIOKVlOKVkOKVoSBlOTE1Mzk0ZS1hMmMwLTExZWEtMGNkOS0xZGY2ZmQzYzdhZGYKZnVuY3Rpb24gbW92ZShzdGFja3MsIHNvdXJjZTo6SW50LCB0YXJnZXQ6OkludCkKCSNjaGVjayBpZiB0aGUgZnJvbSBzdGFjayBpZiBub3QgZW1wdHkKCWlmIGlzZW1wdHkoc3RhY2tzW3NvdXJjZV0pCgkJZXJyb3IoIkVycm9yOiBhdHRlbXB0ZWQgdG8gbW92ZSBkaXNrIGZyb20gZW1wdHkgc3RhY2siKQoJZW5kCgkKCW5ld19zdGFja3MgPSBkZWVwY29weShzdGFja3MpCgkKCWRpc2sgPSBwb3BmaXJzdCEobmV3X3N0YWNrc1tzb3VyY2VdKSAjdGFrZSBkaXNrCglwdXNoZmlyc3QhKG5ld19zdGFja3NbdGFyZ2V0XSwgZGlzaykgI3B1dCBvbiBuZXcgc3RhY2sKCQoJcmV0dXJuIG5ld19zdGFja3MKZW5kCgojIOKVlOKVkOKVoSA4N2IyZDE2NC1hMmM0LTExZWEtMzA5NS05MTY2Mjg5NDM4NzkKbWQiIiIKIyMgU29sdmluZyB0aGUgcHJvYmxlbQoKV2UgaGF2ZSBpbXBsZW1lbnRlZCB0aGUgZ2FtZSBwaWVjZXMgYW5kIHRoZSBydWxlcywgc28geW91IGNhbiBzdGFydCB3b3JraW5nIG9uIHlvdXIgc29sdXRpb24uCgpUbyBkbyB0aGlzLCB5b3UgY2FuIGZpbGwgaW4gdGhlIGBzb2x2ZShzdGFja3MpYCBmdW5jdGlvbi4gVGhpcyBmdW5jdGlvbiBzaG91bGQgZ2l2ZSBhIHNvbHV0aW9uIGZvciB0aGUgZ2l2ZW4gYHN0YWNrc2AsIGJ5IG1vdmluZyBhbGwgdGhlIGRpc2tzIGZyb20gc3RhY2sgMSB0byBzdGFjayAzLgoKQXMgb3V0cHV0LCBgc29sdmVgIHNob3VsZCBnaXZlIGEgcmVjaXBlLCB0aGF0IHRlbGxzIHVzIHdoYXQgdG8gZG8uIFRoaXMgcmVjaXBlIHNob3VsZCBiZSBhbiBhcnJheSBvZiBtb3Zlcy4gRWFjaCBtb3ZlcyBpcyBhIGAoc291cmNlLCB0YXJnZXQpYCB0dXBsZSwgc3BlY2lmeWluZyBmcm9tIHdoaWNoIHN0YWNrIHRvIHdoaWNoIHN0YWNrIHlvdSBzaG91bGQgbW92ZS4KCkZvciBleGFtcGxlLCBpdCBtaWdodCBsb29rIGxpa2UgdGhpczoKIiIiCgojIOKVlOKVkOKVoSAyOWI0MTBjYy1hMzI5LTExZWEtMjAyYS03OTViMzFjZTVhZDUKZnVuY3Rpb24gd3Jvbmdfc29sdXRpb24oc3RhY2tzKTo6QXJyYXl7VHVwbGV7SW50LCBJbnR9fQoJcmV0dXJuIFsoMSwyKSwgKDIsMyksICgyLDEpLCAoMSwzKV0KZW5kCgojIOKVlOKVkOKVoSBlYTI0ZTc3OC1hMzJlLTExZWEtM2YxMS1kYmU5ZDM2YjEwMTEKbWQiIiIKTm93IHlvdSBjYW4gd29yayBvbiBidWlsZGluZyBhbiBhY3R1YWwgc29sdXRpb24uIFNvbWUgdGlwczoKKiBgc29sdmUoc3RhY2tzKWAgY2FuIGtlZXAgdHJhY2sgb2YgdGhlIGJvYXJkIGlmIHlvdSB3YW50LCBidXQgaXQgZG9lc24ndCBoYXZlIHRvLgoqIFRoZSBzZWN0aW9uIGJlbG93IHdpbGwgYWN0dWFsbHkgcnVuIHlvdXIgbW92ZXMsIHdoaWNoIGlzIHZlcnkgdXNlZnVsIGZvciBjaGVja2luZyB0aGVtLgoqIElmIHlvdSB3YW50LCB5b3UgY2FuIGNoYW5nZSBgbnVtX2Rpc2tzYCB0byAxIG9yIDIuIFRoYXQgY2FuIGJlIGEgZ29vZCBzdGFydGluZyBwb2ludC4KIiIiCgojIOKVlOKVkOKVoSAwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmYKZnVuY3Rpb24gc29sdmUoc3RhcnQgPSBzdGFydGluZ19zdGFja3MpOjpBcnJheXtUdXBsZXtJbnQsIEludH19CgkKCSN3aGF0IHRvIGRvPwoJCglyZXR1cm4gW10KZW5kCgojIOKVlOKVkOKVoSAzZWIzYzRjMC1hMmM1LTExZWEtMGJjYy1jOWI1MjA5NGY2NjAKbWQiIiIKIyMgQ2hlY2tpbmcgc29sdXRpb25zCgpUaGlzIGlzIHdoZXJlIHdlIGNhbiBjaGVjayBhIHNvbHV0aW9uLiBXZSBzdGFydCB3aXRoIGEgZnVuY3Rpb24gdGhhdCB0YWtlcyBvdXIgcmVjaXBlIGFuZCBydW5zIGl0LgoiIiIKCiMg4pWU4pWQ4pWhIDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZQpmdW5jdGlvbiBydW5fc29sdXRpb24oc29sdmVyOjpGdW5jdGlvbiwgc3RhcnQgPSBzdGFydGluZ19zdGFja3MpCgltb3ZlcyA9IHNvbHZlcihkZWVwY29weShzdGFydCkpICNhcHBseSB0aGUgc29sdmVyCgkKCWFsbF9zdGF0ZXMgPSBBcnJheXtBbnksMX0odW5kZWYsIGxlbmd0aChtb3ZlcykgKyAxKQoJYWxsX3N0YXRlc1sxXSA9IHN0YXJ0CgkKCWZvciAoaSwgbSkgaW4gZW51bWVyYXRlKG1vdmVzKQoJCXRyeQoJCQlhbGxfc3RhdGVzW2kgKyAxXSA9IG1vdmUoYWxsX3N0YXRlc1tpXSwgbVsxXSwgbVsyXSkKCQljYXRjaAoJCQlhbGxfc3RhdGVzW2kgKyAxXSA9IG1pc3NpbmcKCQllbmQKCWVuZAoJCglyZXR1cm4gYWxsX3N0YXRlcwplbmQKCiMg4pWU4pWQ4pWhIDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMQptZCIiIgpZb3UgY2FuIHVzZSB0aGlzIGZ1bmN0aW9uIHRvIHNlZSB3aGF0IHlvdXIgc29sdXRpb24gZG9lcy4KCklmIGBydW5fc29sdXRpb25gIHRyaWVzIHRvIG1ha2UgYW4gaW1wb3NzaWJsZSBtb3ZlLCBpdCB3aWxsIGdpdmUgYG1pc3NpbmdgIGZyb20gdGhhdCBwb2ludCBvbndhcmRzLiBMb29rIGF0IHdoYXQgaGFwcGVucyBpbiB0aGUgYHdyb25nX3NvbHV0aW9uYCB2ZXJzaW9uIGFuZCBjb21wYXJlIGl0IHRvIHRoZSBtb3ZlcyBpbiBgd3Jvbmdfc29sdXRpb25gLgoiIiIKCiMg4pWU4pWQ4pWhIGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MApydW5fc29sdXRpb24od3Jvbmdfc29sdXRpb24pCgojIOKVlOKVkOKVoSA5MTczYjE3NC1hMzI3LTExZWEtM2E2OS05Zjc1MjVmMmU3YjQKcnVuX3NvbHV0aW9uKHNvbHZlKQoKIyDilZTilZDilaEgYmI1MDg4ZWMtYTMzMC0xMWVhLTJjNDEtNmI4YjkyNzI0YjNiCm1kIiIiCk5vdyB0aGF0IHdlIGhhdmUgd2F5IHRvIHJ1biBhIHJlY2lwZSwgd2UgY2FuIGNoZWNrIGlmIGl0cyBvdXRwdXQgaXMgY29ycmVjdC4gV2Ugd2lsbCBjaGVjayBpZiBhbGwgdGhlIGludGVybWVkaWF0ZSBzdGF0ZXMgYXJlIGxlZ2FsIGFuZCB0aGUgZmluYWwgc3RhdGUgaXMgdGhlIGZpbmlzaGVkIHB1enpsZS4KIiIiCgojIOKVlOKVkOKVoSAxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMzgKZnVuY3Rpb24gY2hlY2tfc29sdXRpb24oc29sdmVyOjpGdW5jdGlvbiwgc3RhcnQgPSBzdGFydGluZ19zdGFja3MpCgl0cnkKCQkjcnVuIHRoZSBzb2x1dGlvbgoJCWFsbF9zdGF0ZXMgPSBydW5fc29sdXRpb24oc29sdmVyLCBzdGFydCkKCQkKCQkjY2hlY2sgaWYgZWFjaCBzdGF0ZSBpcyBsZWdhbAoJCWFsbF9sZWdhbCA9IGFsbChpc2xlZ2FsLCBhbGxfc3RhdGVzKQoJCQoJCSNjaGVjayBpZiB0aGUgZmluYWwgc3RhdGUgaXMgaXMgdGhlIGNvbXBsZXRlZCBwdXp6bGUKCQljb21wbGV0ZSA9IChpc2NvbXBsZXRlIOKImCBsYXN0KShhbGxfc3RhdGVzKQoJCQoJCWFsbF9sZWdhbCAmJiBjb21wbGV0ZQoJY2F0Y2gKCQkjcmV0dXJuIGZhbHNlIGlmIHdlIGVuY291bnRlcmVkIGFuIGVycm9yCgkJcmV0dXJuIGZhbHNlCgllbmQKZW5kCgojIOKVlOKVkOKVoSA4ZWE3Zjk0NC1hMzI5LTExZWEtMjJjYy00ZGJkMTFlYzA2MTAKY2hlY2tfc29sdXRpb24oc29sdmUpCgojIOKVlOKVkOKVoSBlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMzgKaWYgY2hlY2tfc29sdXRpb24oc29sdmUpCglpZiBudW1fZGlza3MgPj0gOAoJCW1kIiIiCgkJIyMjIyBDb25ncmF0dWxhdGlvbnMsIHlvdXIgc29sdXRpb24gd29ya3MhIPCfmI4KCQkiIiIKCWVsc2UKCQltZCIiIgoJCVlvdXIgc29sdXRpb24gd29ya3MgZm9yICQobnVtX2Rpc2tzKSBkaXNrcy4gQ2hhbmdlIGBudW1fZGlza3NgIHRvIHNlZSBpZiBpdCB3b3JrcyBmb3IgOCBvciBtb3JlLgoJCSIiIgoJZW5kCmVsc2UKCW1kIiIiCglUaGUgYHNvbHZlYCBmdW5jdGlvbiBkb2Vzbid0IHdvcmsgeWV0LiBLZWVwIHdvcmtpbmcgb24gaXQhCgkiIiIKZW5kCgojIOKVlOKVkOKVoSBDZWxsIG9yZGVyOgojIOKVn+KUgDViMmVlNDBlLWEyYjgtMTFlYS0wZmVmLWMzNWZlNjkxODg2MAojIOKVn+KUgDk1ZmJkMGQyLWEyYjktMTFlYS0wNjgyLWZkZjc4MzI1MTc5NwojIOKVoOKVkDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiMwojIOKVn+KUgDM1YWRhMjE0LWEzMmMtMTFlYS0wZGEzLWQ1ZDQ5NGIyODQ2NwojIOKVoOKVkDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNAojIOKVn+KUgDdlMWJhMmFjLWEyYmEtMTFlYS0wMTM0LTJmNjFlZDc1YmUxOAojIOKVoOKVkDQzNzgxYTUyLWEzMzktMTFlYS0zODAzLWU1NmUyZDA4YWE4MwojIOKVn+KUgGI2NDhhYjcwLWEyYmEtMTFlYS0yZGNjLTU1YjYzMGU0NDMyNQojIOKVoOKVkDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZAojIOKVn+KUgGUzNDdmMWRlLWEyYmItMTFlYS0wNmU3LTg3Y2NhNmYyYTI0MAojIOKVoOKVkDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YgojIOKVn+KUgGM1NmE1ODU4LWEyYmQtMTFlYS0xZDk2LTc3ZWFmNWU3NDkyNQojIOKVoOKVkGQ1Y2M0MWU4LWEyYmQtMTFlYS0zOWM3LWI3ZGY4ZGU2YWUzZQojIOKVn+KUgDUzMzc0ZjBlLWEyYzAtMTFlYS0wYzkxLTk3NDc0NzgwNzIxZQojIOKVoOKVkGU5MTUzOTRlLWEyYzAtMTFlYS0wY2Q5LTFkZjZmZDNjN2FkZgojIOKVn+KUgDg3YjJkMTY0LWEyYzQtMTFlYS0zMDk1LTkxNjYyODk0Mzg3OQojIOKVoOKVkDI5YjQxMGNjLWEzMjktMTFlYS0yMDJhLTc5NWIzMWNlNWFkNQojIOKVn+KUgGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMQojIOKVoOKVkDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZgojIOKVn+KUgDNlYjNjNGMwLWEyYzUtMTFlYS0wYmNjLWM5YjUyMDk0ZjY2MAojIOKVoOKVkDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZQojIOKVn+KUgDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMQojIOKVoOKVkGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MAojIOKVoOKVkDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNAojIOKVn+KUgGJiNTA4OGVjLWEzMzAtMTFlYS0yYzQxLTZiOGI5MjcyNGIzYgojIOKVoOKVkDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOAojIOKVoOKVkDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMAojIOKVn+KUgGU1NGFkZDBhLWEzMzAtMTFlYS0yZWViLTFkNDJmNTUyYmEzOAo="
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.15.0"
window.pluto_statefile = "data:;base64,jKVib25kc4CsY2VsbF9yZXN1bHRz3gAc2SQ4N2IyZDE2NC1hMmM0LTExZWEtMzA5NS05MTY2Mjg5NDM4NzmIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedoCjzxkaXYgY2xhc3M9Im1hcmtkb3duIj48aDI+U29sdmluZyB0aGUgcHJvYmxlbTwvaDI+CjxwPldlIGhhdmUgaW1wbGVtZW50ZWQgdGhlIGdhbWUgcGllY2VzIGFuZCB0aGUgcnVsZXMsIHNvIHlvdSBjYW4gc3RhcnQgd29ya2luZyBvbiB5b3VyIHNvbHV0aW9uLjwvcD4KPHA+VG8gZG8gdGhpcywgeW91IGNhbiBmaWxsIGluIHRoZSA8Y29kZT5zb2x2ZSYjNDA7c3RhY2tzJiM0MTs8L2NvZGU+IGZ1bmN0aW9uLiBUaGlzIGZ1bmN0aW9uIHNob3VsZCBnaXZlIGEgc29sdXRpb24gZm9yIHRoZSBnaXZlbiA8Y29kZT5zdGFja3M8L2NvZGU+LCBieSBtb3ZpbmcgYWxsIHRoZSBkaXNrcyBmcm9tIHN0YWNrIDEgdG8gc3RhY2sgMy48L3A+CjxwPkFzIG91dHB1dCwgPGNvZGU+c29sdmU8L2NvZGU+IHNob3VsZCBnaXZlIGEgcmVjaXBlLCB0aGF0IHRlbGxzIHVzIHdoYXQgdG8gZG8uIFRoaXMgcmVjaXBlIHNob3VsZCBiZSBhbiBhcnJheSBvZiBtb3Zlcy4gRWFjaCBtb3ZlcyBpcyBhIDxjb2RlPiYjNDA7c291cmNlLCB0YXJnZXQmIzQxOzwvY29kZT4gdHVwbGUsIHNwZWNpZnlpbmcgZnJvbSB3aGljaCBzdGFjayB0byB3aGljaCBzdGFjayB5b3Ugc2hvdWxkIG1vdmUuPC9wPgo8cD5Gb3IgZXhhbXBsZSwgaXQgbWlnaHQgbG9vayBsaWtlIHRoaXM6PC9wPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad7SztF4rHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkODdiMmQxNjQtYTJjNC0xMWVhLTMwOTUtOTE2NjI4OTQzODc5uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNQVGnZXJyb3JlZMLZJGM1NmE1ODU4LWEyYmQtMTFlYS0xZDk2LTc3ZWFmNWU3NDkyNYimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52gE+PGRpdiBjbGFzcz0ibWFya2Rvd24iPjxwPkFub3RoZXIgZnVuY3Rpb24gZm9yIHN0YXRlczogY2hlY2sgaWYgd2UgYXJlIGRvbmUmIzMzOyBXZSBjYW4gYXNzdW1lIHRoYXQgd2UgYWxyZWFkeSBjaGVja2VkIGlmIHRoZSBzdGF0ZSB3YXMgbGVnYWwuIFNvIHdlIGtub3cgdGhhdCBhbGwgdGhlIGRpc2tzIGFyZSB0aGVyZSBhbmQgdGhleSBhcmUgb3JkZXJlZCBjb3JyZWN0bHkuICBUbyBjaGVjayBpZiB3ZSBhcmUgZmluaXNoZWQsIHdlIGp1c3QgbmVlZCB0byBjaGVjayBpZiB0aGUgbGFzdCBzdGFjayBjb250YWlucyBhbGwgdGhlIGRpc2tzLjwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2Gne0s3avqxyb290YXNzaWduZWXAp2NlbGxfaWTZJGM1NmE1ODU4LWEyYmQtMTFlYS0xZDk2LTc3ZWFmNWU3NDkyNblkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzRi4p2Vycm9yZWTC2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmaIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedknc29sdmUgKGdlbmVyaWMgZnVuY3Rpb24gd2l0aCAyIG1ldGhvZHMpsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3uGoKIWscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNma5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc2AK6dlcnJvcmVkwtkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4iKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHnZMGNoZWNrX3NvbHV0aW9uIChnZW5lcmljIGZ1bmN0aW9uIHdpdGggMiBtZXRob2RzKbBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqnRleHQvcGxhaW6ybGFzdF9ydW5fdGltZXN0YW1wy0HYad7hzlWsrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXN+aOnZXJyb3JlZMLZJGU5MTUzOTRlLWEyYzAtMTFlYS0wY2Q5LTFkZjZmZDNjN2FkZoimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52SVtb3ZlIChnZW5lcmljIGZ1bmN0aW9uIHdpdGggMSBtZXRob2QpsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3uGhXCWscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SRlOTE1Mzk0ZS1hMmMwLTExZWEtMGNkOS0xZGY2ZmQzYzdhZGa5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc2p+6dlcnJvcmVkwtkkN2UxYmEyYWMtYTJiYS0xMWVhLTAxMzQtMmY2MWVkNzViZTE4iKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHnZkTxkaXYgY2xhc3M9Im1hcmtkb3duIj48cD5BIHNpbmdsZSBzdGFjayBjYW4gYmUgcmVwcmVzZW50ZWQgYXMgYW4gYXJyYXkgd2l0aCBhbGwgdGhlIGRpc2tzIGluIGl0LiBXZSB3aWxsIGxpc3QgdGhlbSBmcm9tIHRvcCB0byBib3R0b20uPC9wPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad7SzZfyrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkN2UxYmEyYWMtYTJiYS0xMWVhLTAxMzQtMmY2MWVkNzViZTE4uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNGvKnZXJyb3JlZMLZJGU1NGFkZDBhLWEzMzAtMTFlYS0yZWViLTFkNDJmNTUyYmEzOIimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52XE8ZGl2IGNsYXNzPSJtYXJrZG93biI+PHA+VGhlIDxjb2RlPnNvbHZlPC9jb2RlPiBmdW5jdGlvbiBkb2VzbiYjMzk7dCB3b3JrIHlldC4gS2VlcCB3b3JraW5nIG9uIGl0JiMzMzs8L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3uHwnPWscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SRlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMzi5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AAWuBp2Vycm9yZWTC2SRiYjUwODhlYy1hMzMwLTExZWEtMmM0MS02YjhiOTI3MjRiM2KIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kednTPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxwPk5vdyB0aGF0IHdlIGhhdmUgd2F5IHRvIHJ1biBhIHJlY2lwZSwgd2UgY2FuIGNoZWNrIGlmIGl0cyBvdXRwdXQgaXMgY29ycmVjdC4gV2Ugd2lsbCBjaGVjayBpZiBhbGwgdGhlIGludGVybWVkaWF0ZSBzdGF0ZXMgYXJlIGxlZ2FsIGFuZCB0aGUgZmluYWwgc3RhdGUgaXMgdGhlIGZpbmlzaGVkIHB1enpsZS48L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3tLPLkGscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SRiYjUwODhlYy1hMzMwLTExZWEtMmM0MS02YjhiOTI3MjRiM2K5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc0aCqdlcnJvcmVkwtkkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgziKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHmFpnByZWZpeKVJbnQ2NKhlbGVtZW50c5iSAZKhMap0ZXh0L3BsYWlukgKSoTKqdGV4dC9wbGFpbpIDkqEzqnRleHQvcGxhaW6SBJKhNKp0ZXh0L3BsYWlukgWSoTWqdGV4dC9wbGFpbpIGkqE2qnRleHQvcGxhaW6SB5KhN6p0ZXh0L3BsYWlukgiSoTiqdGV4dC9wbGFpbqR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwZjQyM2Q5Y2M0NjY1YjczMLBwZXJzaXN0X2pzX3N0YXRlwqRtaW1l2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SybGFzdF9ydW5fdGltZXN0YW1wy0HYad7hUcRprHJvb3Rhc3NpZ25lZatmaXJzdF9zdGFja6djZWxsX2lk2SQ0Mzc4MWE1Mi1hMzM5LTExZWEtMzgwMy1lNTZlMmQwOGFhODO5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc0Ki6dlcnJvcmVkwtkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNkiKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHmFpnByZWZpeKtWZWN0b3J7QW55fahlbGVtZW50c5OSAZKFpnByZWZpeKNBbnmoZWxlbWVudHOYkgGSoTGqdGV4dC9wbGFpbpICkqEyqnRleHQvcGxhaW6SA5KhM6p0ZXh0L3BsYWlukgSSoTSqdGV4dC9wbGFpbpIFkqE1qnRleHQvcGxhaW6SBpKhNqp0ZXh0L3BsYWlukgeSoTeqdGV4dC9wbGFpbpIIkqE4qnRleHQvcGxhaW6kdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDM0NWUyNzZhYzZkN2U2NDDZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJICkoWmcHJlZml4o0FueahlbGVtZW50c5CkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksGY0ZmFhNzc3MGI2OTViOWPZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJIDkoWmcHJlZml4o0FueahlbGVtZW50c5CkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksGI1YjdjMjY2OGNlMzk1MjDZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdKR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwNGMwYWE1ZjNiYjIxMGY5NLBwZXJzaXN0X2pzX3N0YXRlwqRtaW1l2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SybGFzdF9ydW5fdGltZXN0YW1wy0HYad7hfnAJrHJvb3Rhc3NpZ25lZa9zdGFydGluZ19zdGFja3OnY2VsbF9pZNkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNkuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNGfunZXJyb3JlZMLZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZYimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52S5ydW5fc29sdXRpb24gKGdlbmVyaWMgZnVuY3Rpb24gd2l0aCAyIG1ldGhvZHMpsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3uGsZWescm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2W5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AARq/p2Vycm9yZWTC2SQ1MzM3NGYwZS1hMmMwLTExZWEtMGM5MS05NzQ3NDc4MDcyMWWIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedoEXjxkaXYgY2xhc3M9Im1hcmtkb3duIj48cD5Ob3cgdGhlIG9ubHkgcnVsZXMgbGVmdCB0byBpbXBsZW1lbnQgYXJlIHRoZSBydWxlcyBmb3IgbW92aW5nIGRpc2tzLiA8L3A+CjxwPldlIGNvdWxkIGltcGxlbWVudCB0aGlzIGFzIGFub3RoZXIgY2hlY2sgb24gc3RhdGVzLCBidXQgaXQmIzM5O3MgZWFzaWVyIHRvIGp1c3Qgd3JpdGUgYSBsZWdhbCA8Y29kZT5tb3ZlPC9jb2RlPiBmdW5jdGlvbi4gWW91ciBzb2x1dGlvbiB3aWxsIHNwZWNpZnkgbW92ZXMgZm9yIHRoZSA8Y29kZT5tb3ZlPC9jb2RlPiBmdW5jdGlvbiwgc28gdGhpcyB3aWxsIGJlIHRoZSBvbmx5IHdheSB0aGF0IHRoZSBzdGFja3MgYXJlIGFjdHVhbGx5IG1hbmlwdWxhdGVkLiBUaGF0IHdheSwgd2UgYXJlIHN1cmUgdGhhdCBub3RoaW5nIGZpc2h5IGlzIGhhcHBlbmluZy48L3A+CjxwPldlIHdpbGwgbWFrZSBvdXIgPGNvZGU+bW92ZTwvY29kZT4gZnVuY3Rpb24gc28gdGhhdCBpdHMgaW5wdXQgY29uc2lzdHMgb2YgYSBzdGF0ZSBvZiB0aGUgZ2FtZSwgYW5kIGluc3RydWN0aW9ucyBmb3Igd2hhdCB0byBkby4gSXRzIG91dHB1dCB3aWxsIGJlIHRoZSBuZXcgc3RhdGUgb2YgdGhlIGdhbWUuPC9wPgo8cD5TbyB3aGF0IHNob3VsZCB0aG9zZSBpbnN0cnVjdGlvbnMgbG9vayBsaWtlPyBJdCBtYXkgc2VlbSBpbnR1aXRpdmUgdG8gZ2l2ZSBhIDxlbT5kaXNrPC9lbT4gdGhhdCBzaG91bGQgYmUgbW92ZWQsIGJ1dCB0aGF0JiMzOTtzIG1vcmUgdGhhbiB3ZSBuZWVkLiBBZnRlciBhbGwsIHdlIGFyZSBvbmx5IGFsbG93ZWQgdG8gdGFrZSB0aGUgdG9wIGRpc2sgZnJvbSBvbmUgc3RhY2ssIGFuZCBtb3ZlIGl0IHRvIHRoZSB0b3Agb2YgYW5vdGhlci4gU28gd2Ugb25seSBoYXZlIHRvIHNheSB3aGljaCA8ZW0+c3RhY2tzPC9lbT4gd2UgYXJlIG1vdmluZyBiZXR3ZWVuLjwvcD4KPHA+JiM0MDtOb3RlIHRoYXQgdGhlIDxjb2RlPm1vdmU8L2NvZGU+IGZ1bmN0aW9uIGlzIG9rYXkgd2l0aCBtb3ZpbmcgYSBsYXJnZXIgZGlzayBvbiB0b3Agb2YgYSBzbWFsbGVyIGRpc2suIFdlIGFscmVhZHkgaW1wbGVtZW50ZWQgdGhhdCByZXN0cmljdGlvbiBpbiA8Y29kZT5pc2xlZ2FsPC9jb2RlPi4mIzQxOzwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2Gne0s6wtKxyb290YXNzaWduZWXAp2NlbGxfaWTZJDUzMzc0ZjBlLWEyYzAtMTFlYS0wYzkxLTk3NDc0NzgwNzIxZblkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzVLvp2Vycm9yZWTC2SRiNjQ4YWI3MC1hMmJhLTExZWEtMmRjYy01NWI2MzBlNDQzMjWIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedlIPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxwPk5vdyB3ZSBoYXZlIHRvIG1ha2UgdGhyZWUgb2YgdGhvc2UuIDwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2Gne0s2rgqxyb290YXNzaWduZWXAp2NlbGxfaWTZJGI2NDhhYjcwLWEyYmEtMTFlYS0yZGNjLTU1YjYzMGU0NDMyNblkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzRdUp2Vycm9yZWTC2SQ5NWZiZDBkMi1hMmI5LTExZWEtMDY4Mi1mZGY3ODMyNTE3OTeIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedoCizxkaXYgY2xhc3M9Im1hcmtkb3duIj48aDI+U2V0dGluZyB1cCB0aGUgZ2FtZSBwaWVjZXM8L2gyPgo8cD5XaGF0IGRvZXMgYSBKdWxpYSBpbXBsZW1lbnRhdGlvbiBsb29rIGxpa2U/IFdlJiMzOTtyZSBub3QgcmVhbGx5IGludGVyZXN0ZWQgaW4gd3JpdGluZyBjb2RlIHRoYXQgd2lsbCBtYW5pcHVsYXRlIHBoeXNpY2FsIGRpc2tzLiBPdXIgZmluYWwgZ29hbCBpcyBhIGZ1bmN0aW9uIHRoYXQgd2lsbCBnaXZlIHVzIGEgPGVtPnJlY2lwZTwvZW0+IHRvIHNvbHZlIHRoZSB0b3dlciBvZiBoYW5vaSwgd2hpY2ggaXMganVzdCBhIGxpc3Qgb2YgbW92ZXMgdG8gbWFrZS4gQmVjYXVzZSBvZiB0aGF0LCB3ZSBjYW4gdXNlIGEgbG90IG9mIGFic3RyYWN0aW9uIGluIG91ciBpbXBsZW1lbnRhdGlvbiwgYW5kIGtlZXAgdGhlIGRhdGEgc3RydWN0dXJlcyBhcyBzaW1wbGUgYXMgcG9zc2libGUuPC9wPgo8cD5UbyBzdGFydCwgd2UgaGF2ZSB0byBkZWZpbmUgc29tZSByZXByZXNlbnRhdGlvbiBvZiB0aGUgZGlza3MgYW5kIHRoZSBzdGFja3MuIFRoZSBkaXNrcyBoYXZlIG9uZSBpbXBvcnRhbnQgcHJvcGVydHksIHdoaWNoIGlzIHRoYXQgdGhleSBhcmUgb3JkZXJlZC4gV2UgY2FuIHVzZSBpbnRlZ2VycyB0byByZXByZXNlbnQgdGhlbS48L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3tLNaG6scm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ5NWZiZDBkMi1hMmI5LTExZWEtMDY4Mi1mZGY3ODMyNTE3OTe5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AIRsgp2Vycm9yZWTC2SQ3MjQzY2M4ZS1hMmJhLTExZWEtM2YyOS05OTM1NmYwY2RjZjSIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9keaMxOjiwcGVyc2lzdF9qc19zdGF0ZcKkbWltZap0ZXh0L3BsYWlusmxhc3RfcnVuX3RpbWVzdGFtcMtB2Gne4RKC9axyb290YXNzaWduZWWpYWxsX2Rpc2tzp2NlbGxfaWTZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzJqnZXJyb3JlZMLZJDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YoimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52Shpc2xlZ2FsIChnZW5lcmljIGZ1bmN0aW9uIHdpdGggMSBtZXRob2QpsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3uGXGiqscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ1MTJmYTZkMi1hMmJkLTExZWEtM2RiZS1iOTM1YjUzNjk2N2K5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AAQppp2Vycm9yZWTC2SQzZWIzYzRjMC1hMmM1LTExZWEtMGJjYy1jOWI1MjA5NGY2NjCIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedmiPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxoMj5DaGVja2luZyBzb2x1dGlvbnM8L2gyPgo8cD5UaGlzIGlzIHdoZXJlIHdlIGNhbiBjaGVjayBhIHNvbHV0aW9uLiBXZSBzdGFydCB3aXRoIGEgZnVuY3Rpb24gdGhhdCB0YWtlcyBvdXIgcmVjaXBlIGFuZCBydW5zIGl0LjwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2Gne0s8EDKxyb290YXNzaWduZWXAp2NlbGxfaWTZJDNlYjNjNGMwLWEyYzUtMTFlYS0wYmNjLWM5YjUyMDk0ZjY2MLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzR9mp2Vycm9yZWTC2SRlMzQ3ZjFkZS1hMmJiLTExZWEtMDZlNy04N2NjYTZmMmEyNDCIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedoCEzxkaXYgY2xhc3M9Im1hcmtkb3duIj48aDI+RGVmaW5pbmcgdGhlIHJ1bGVzPC9oMj4KPHA+Tm93IHRoYXQgd2UgaGF2ZSBvdXIgJnF1b3Q7Z2FtZSBib2FyZCZxdW90Oywgd2UgY2FuIGltcGxlbWVudCB0aGUgcnVsZXMuPC9wPgo8cD5UbyBzdGFydCwgd2UgbWFrZSB0d28gZnVuY3Rpb25zIGZvciBzdGF0ZXMuIEEgc3RhdGUgb2YgdGhlIGdhbWUgaXMganVzdCBhbiBhcnJheSBvZiBzdGFja3MuPC9wPgo8cD5XZSB3aWxsIGRlZmluZSBhIGZ1bmN0aW9uIHRoYXQgY2hlY2tzIGlmIGEgc3RhdGUgaXMgb2theSBhY2NvcmRpbmcgdG8gdGhlIHJ1bGVzLiBUbyBiZSBsZWdhbCwgYWxsIHRoZSBzdGFja3Mgc2hvdWxkIGJlIGluIHRoZSBjb3JyZWN0IG9yZGVyLCBzbyBubyBsYXJnZXIgZGlza3Mgb24gdG9wIG9mIHNtYWxsZXIgZGlza3MuIDwvcD4KPHA+QW5vdGhlciBnb29kIHRoaW5nIHRvIGNoZWNrOiBubyBkaXNrcyBzaG91bGQgaGF2ZSBhcHBlYXJlZCBvciBkaXNhcHBlYXJlZCBzaW5jZSB3ZSBzdGFydGVkJiMzMzs8L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3tLNxUyscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SRlMzQ3ZjFkZS1hMmJiLTExZWEtMDZlNy04N2NjYTZmMmEyNDC5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc0yX6dlcnJvcmVkwtkkNjIwZDY4MzQtYTJiYS0xMWVhLTE1MGEtMjEzMmJiNTRlNGIziKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHmhOLBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqnRleHQvcGxhaW6ybGFzdF9ydW5fdGltZXN0YW1wy0HYad7g+9/wrHJvb3Rhc3NpZ25lZaludW1fZGlza3OnY2VsbF9pZNkkNjIwZDY4MzQtYTJiYS0xMWVhLTE1MGEtMjEzMmJiNTRlNGIzuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWVZp2Vycm9yZWTC2SRkNWNjNDFlOC1hMmJkLTExZWEtMzljNy1iN2RmOGRlNmFlM2WIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedkraXNjb21wbGV0ZSAoZ2VuZXJpYyBmdW5jdGlvbiB3aXRoIDEgbWV0aG9kKbBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqnRleHQvcGxhaW6ybGFzdF9ydW5fdGltZXN0YW1wy0HYad7hnahtrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkZDVjYzQxZTgtYTJiZC0xMWVhLTM5YzctYjdkZjhkZTZhZTNluWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNXEWnZXJyb3JlZMLZJDI5YjQxMGNjLWEzMjktMTFlYS0yMDJhLTc5NWIzMWNlNWFkNYimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52S93cm9uZ19zb2x1dGlvbiAoZ2VuZXJpYyBmdW5jdGlvbiB3aXRoIDEgbWV0aG9kKbBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqnRleHQvcGxhaW6ybGFzdF9ydW5fdGltZXN0YW1wy0HYad7hpNpJrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkMjliNDEwY2MtYTMyOS0xMWVhLTIwMmEtNzk1YjMxY2U1YWQ1uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNalanZXJyb3JlZMLZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMIimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R5pWZhbHNlsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3uHisBiscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ4ZWE3Zjk0NC1hMzI5LTExZWEtMjJjYy00ZGJkMTFlYzA2MTC5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4LFrAXp2Vycm9yZWTC2SQ1YjJlZTQwZS1hMmI4LTExZWEtMGZlZi1jMzVmZTY5MTg4NjCIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedoDsTxkaXYgY2xhc3M9Im1hcmtkb3duIj48aDE+VGhlIHRvd2VyIG9mIEhhbm9pPC9oMT4KPHA+VGhlIHRvd2VyIG9mIGhhbm9pIGlzIGEgZmFtb3VzIHB1enpsZS48L3A+CjxwPjxpbWcgc3JjPSJodHRwczovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25zLzAvMDcvVG93ZXJfb2ZfSGFub2kuanBlZyIgYWx0PSJzZXR1cCBvZiB0aGUgdG93ZXIgb2YgYSBoYW5vaSIgLz48L3A+CjxwPlRoZSBnYW1lIGNvbnNpc3RzIG9mIHRocmVlIHJvZHMgd2l0aCBkaXNrcyBzdGFja2VkIG9uIHRvcCBvZiB0aGVtLiBUaGUgcHV6emxlIHdpbGwgc3RhcnQgd2l0aCBhbGwgZGlza3MgaW4gYSBzdGFjayBvbiBvbmUgb2YgdGhlIHJvZHMgJiM0MDtsaWtlIGluIHRoZSBwaWN0dXJlJiM0MTsuIFRoZSBnb2FsIGlzIHRvIG1vdmUgYWxsIHRoZSBkaXNjcyB0byBhIHNpbmdsZSBzdGFjayBvbiB0aGUgbGFzdCByb2QuPC9wPgo8cD5UbyBtb3ZlIHRoZSBkaXNrcywgeW91IGhhdmUgdG8gZm9sbG93IHRoZSBmb2xsb3dpbmcgcnVsZXM6PC9wPgo8dWw+CjxsaT48cD5Zb3UgY2FuIG1vdmUgb25seSBvbmUgZGlzayBhdCBhIHRpbWUuPC9wPgo8L2xpPgo8bGk+PHA+Rm9yIGVhY2ggbW92ZSwgeW91IGhhdmUgdG8gdGFrZSB0aGUgdXBwZXIgZGlzayBmcm9tIG9uZSBvZiB0aGUgc3RhY2tzLCBhbmQgcGxhY2UgaXQgb24gdG9wIG9mIGFub3RoZXIgc3RhY2sgb3IgZW1wdHkgcm9kLjwvcD4KPC9saT4KPGxpPjxwPllvdSBjYW5ub3QgcGxhY2UgYSBsYXJnZXIgZGlzayBvbiB0b3Agb2YgYSBzbWFsbGVyIGRpc2suPC9wPgo8L2xpPgo8L3VsPgo8cD5UaGlzIG5vdGVib29rIHdpbGwgZGVmaW5lIGEgSnVsaWEgaW1wbGVtZW50YXRpb24gb2YgdGhlIHB1enpsZS4gSXQmIzM5O3MgdXAgdG8geW91IHRvIHdyaXRlIGFuIGFsZ29yaXRobSB0aGF0IHNvbHZlcyBpdC48L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3tLIfDWscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ1YjJlZTQwZS1hMmI4LTExZWEtMGZlZi1jMzVmZTY5MTg4NjC5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4ANaHsp2Vycm9yZWTC2SQzNzI4MjRiNC1hMzMwLTExZWEtMmYyNi03YjlhMWFkMDE4ZjGIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedoBWjxkaXYgY2xhc3M9Im1hcmtkb3duIj48cD5Zb3UgY2FuIHVzZSB0aGlzIGZ1bmN0aW9uIHRvIHNlZSB3aGF0IHlvdXIgc29sdXRpb24gZG9lcy48L3A+CjxwPklmIDxjb2RlPnJ1bl9zb2x1dGlvbjwvY29kZT4gdHJpZXMgdG8gbWFrZSBhbiBpbXBvc3NpYmxlIG1vdmUsIGl0IHdpbGwgZ2l2ZSA8Y29kZT5taXNzaW5nPC9jb2RlPiBmcm9tIHRoYXQgcG9pbnQgb253YXJkcy4gTG9vayBhdCB3aGF0IGhhcHBlbnMgaW4gdGhlIDxjb2RlPndyb25nX3NvbHV0aW9uPC9jb2RlPiB2ZXJzaW9uIGFuZCBjb21wYXJlIGl0IHRvIHRoZSBtb3ZlcyBpbiA8Y29kZT53cm9uZ19zb2x1dGlvbjwvY29kZT4uPC9wPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad7SzxoerHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkMzcyODI0YjQtYTMzMC0xMWVhLTJmMjYtN2I5YTFhZDAxOGYxuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNJ4WnZXJyb3JlZMLZJDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNIimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R5haZwcmVmaXijQW55qGVsZW1lbnRzkZIBkoWmcHJlZml4q1ZlY3RvcntBbnl9qGVsZW1lbnRzk5IBkoWmcHJlZml4o0FueahlbGVtZW50c5eSAZKhMap0ZXh0L3BsYWlukgKSoTKqdGV4dC9wbGFpbpIDkqEzqnRleHQvcGxhaW6SBJKhNKp0ZXh0L3BsYWlukgWSoTWqdGV4dC9wbGFpbqRtb3JlkgiSoTiqdGV4dC9wbGFpbqR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwMzQ1ZTI3NmFjNmQ3ZTY0MNkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0kgKShaZwcmVmaXijQW55qGVsZW1lbnRzkKR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwZjRmYWE3NzcwYjY5NWI5Y9khYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0kgOShaZwcmVmaXijQW55qGVsZW1lbnRzkKR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwYjViN2MyNjY4Y2UzOTUyMNkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0pHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLA0YzBhYTVmM2JiMjEwZjk02SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDRjNmJmYWQzZjY3MzA0MTKwcGVyc2lzdF9qc19zdGF0ZcKkbWltZdkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0smxhc3RfcnVuX3RpbWVzdGFtcMtB2Gne4crwOaxyb290YXNzaWduZWXAp2NlbGxfaWTZJDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgLaOxinZXJyb3JlZMLZJGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMYimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52gG+PGRpdiBjbGFzcz0ibWFya2Rvd24iPjxwPk5vdyB5b3UgY2FuIHdvcmsgb24gYnVpbGRpbmcgYW4gYWN0dWFsIHNvbHV0aW9uLiBTb21lIHRpcHM6PC9wPgo8dWw+CjxsaT48cD48Y29kZT5zb2x2ZSYjNDA7c3RhY2tzJiM0MTs8L2NvZGU+IGNhbiBrZWVwIHRyYWNrIG9mIHRoZSBib2FyZCBpZiB5b3Ugd2FudCwgYnV0IGl0IGRvZXNuJiMzOTt0IGhhdmUgdG8uPC9wPgo8L2xpPgo8bGk+PHA+VGhlIHNlY3Rpb24gYmVsb3cgd2lsbCBhY3R1YWxseSBydW4geW91ciBtb3Zlcywgd2hpY2ggaXMgdmVyeSB1c2VmdWwgZm9yIGNoZWNraW5nIHRoZW0uPC9wPgo8L2xpPgo8bGk+PHA+SWYgeW91IHdhbnQsIHlvdSBjYW4gY2hhbmdlIDxjb2RlPm51bV9kaXNrczwvY29kZT4gdG8gMSBvciAyLiBUaGF0IGNhbiBiZSBhIGdvb2Qgc3RhcnRpbmcgcG9pbnQuPC9wPgo8L2xpPgo8L3VsPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad7Szu54rHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkZWEyNGU3NzgtYTMyZS0xMWVhLTNmMTEtZGJlOWQzNmIxMDExuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNUqanZXJyb3JlZMLZJDM1YWRhMjE0LWEzMmMtMTFlYS0wZGEzLWQ1ZDQ5NGIyODQ2N4imcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52aE8ZGl2IGNsYXNzPSJtYXJrZG93biI+PHA+JiM0MDtTaWRlIG5vdGU6IHRoZSBudW1iZXIgb2YgZGlza3MgaXMgYXJiaXRyYXJ5LiBXaGVuIHRlc3RpbmcgeW91ciBmdW5jdGlvbiwgeW91IG1heSB3YW50IHRvIHNldCBpdCB0byAxIG9yIDIgdG8gc3RhcnQuJiM0MTs8L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3tLNgqGscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQzNWFkYTIxNC1hMzJjLTExZWEtMGRhMy1kNWQ0OTRiMjg0Nje5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc03aadlcnJvcmVkwtkkZDIyMjdiNDAtYTMyOS0xMWVhLTEwNWMtYjU4NWQ1ZmNmOTcwiKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHmFpnByZWZpeKNBbnmoZWxlbWVudHOVkgGShaZwcmVmaXirVmVjdG9ye0FueX2oZWxlbWVudHOTkgGShaZwcmVmaXijQW55qGVsZW1lbnRzl5IBkqExqnRleHQvcGxhaW6SApKhMqp0ZXh0L3BsYWlukgOSoTOqdGV4dC9wbGFpbpIEkqE0qnRleHQvcGxhaW6SBZKhNap0ZXh0L3BsYWlupG1vcmWSCJKhOKp0ZXh0L3BsYWlupHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLAzNDVlMjc2YWM2ZDdlNjQw2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SSApKFpnByZWZpeKNBbnmoZWxlbWVudHOQpHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLBmNGZhYTc3NzBiNjk1Yjlj2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SSA5KFpnByZWZpeKNBbnmoZWxlbWVudHOQpHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLBiNWI3YzI2NjhjZTM5NTIw2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDRjMGFhNWYzYmIyMTBmOTTZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJICkoWmcHJlZml4q1ZlY3RvcntBbnl9qGVsZW1lbnRzk5IBkoWmcHJlZml4o0FueahlbGVtZW50c5eSAZKhMqp0ZXh0L3BsYWlukgKSoTOqdGV4dC9wbGFpbpIDkqE0qnRleHQvcGxhaW6SBJKhNap0ZXh0L3BsYWlukgWSoTaqdGV4dC9wbGFpbpIGkqE3qnRleHQvcGxhaW6SB5KhOKp0ZXh0L3BsYWlupHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLA5NjM4YzQ4ZDRmZGE2MzJl2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SSApKFpnByZWZpeKNBbnmoZWxlbWVudHORkgGSoTGqdGV4dC9wbGFpbqR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSuZTJjNmRhYTdiY2E1ZGbZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJIDkoWmcHJlZml4o0FueahlbGVtZW50c5CkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDIwN2Q5NzhkNjZmMjQ2MmPZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdKR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwNGZhYTJjMjdjNzMxOTlmMNkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0kgOShaZwcmVmaXirVmVjdG9ye0FueX2oZWxlbWVudHOTkgGShaZwcmVmaXijQW55qGVsZW1lbnRzl5IBkqEyqnRleHQvcGxhaW6SApKhM6p0ZXh0L3BsYWlukgOSoTSqdGV4dC9wbGFpbpIEkqE1qnRleHQvcGxhaW6SBZKhNqp0ZXh0L3BsYWlukgaSoTeqdGV4dC9wbGFpbpIHkqE4qnRleHQvcGxhaW6kdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksGE3OTM3ODc2ZjI4ZmM4MjnZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJICkoWmcHJlZml4o0FueahlbGVtZW50c5CkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDE4YjI3YTM5NTcyNTdiNTjZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJIDkoWmcHJlZml4o0FueahlbGVtZW50c5GSAZKhMap0ZXh0L3BsYWlupHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLBjZjQ2MzM5N2M0ODM2OGY22SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDcyYmEyZmI4OGQ1MTk1YWTZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJIEkqdtaXNzaW5nqnRleHQvcGxhaW6SBZKnbWlzc2luZ6p0ZXh0L3BsYWlupHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLA5OWNjYTY0OGQ2NGRlMmZksHBlcnNpc3RfanNfc3RhdGXCpG1pbWXZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3uHEjnqscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SRkMjIyN2I0MC1hMzI5LTExZWEtMTA1Yy1iNTg1ZDVmY2Y5NzC5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4GqSfvp2Vycm9yZWTCsWNlbGxfZGVwZW5kZW5jaWVz3gAc2SQ4N2IyZDE2NC1hMmM0LTExZWEtMzA5NS05MTY2Mjg5NDM4NzmEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SQ4N2IyZDE2NC1hMmM0LTExZWEtMzA5NS05MTY2Mjg5NDM4Nzm0ZG93bnN0cmVhbV9jZWxsc19tYXCAsnVwc3RyZWFtX2NlbGxzX21hcIKnQG1kX3N0cpCoZ2V0aW5kZXiQ2SRjNTZhNTg1OC1hMmJkLTExZWEtMWQ5Ni03N2VhZjVlNzQ5MjWEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SRjNTZhNTg1OC1hMmJkLTExZWEtMWQ5Ni03N2VhZjVlNzQ5MjW0ZG93bnN0cmVhbV9jZWxsc19tYXCAsnVwc3RyZWFtX2NlbGxzX21hcIKnQG1kX3N0cpCoZ2V0aW5kZXiQ2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmaEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNma0ZG93bnN0cmVhbV9jZWxsc19tYXCBpXNvbHZlk9kkOTE3M2IxNzQtYTMyNy0xMWVhLTNhNjktOWY3NTI1ZjJlN2I02SQ4ZWE3Zjk0NC1hMzI5LTExZWEtMjJjYy00ZGJkMTFlYzA2MTDZJGU1NGFkZDBhLWEzMzAtMTFlYS0yZWViLTFkNDJmNTUyYmEzOLJ1cHN0cmVhbV9jZWxsc19tYXCEpVR1cGxlkKNJbnSQpUFycmF5kK9zdGFydGluZ19zdGFja3OR2SQzMmYyNmY4MC1hMmJiLTExZWEtMGYyYS0zZmM2MzFhZGE2M2TZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOIS0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOLRkb3duc3RyZWFtX2NlbGxzX21hcIGuY2hlY2tfc29sdXRpb26S2SQ4ZWE3Zjk0NC1hMzI5LTExZWEtMjJjYy00ZGJkMTFlYzA2MTDZJGU1NGFkZDBhLWEzMzAtMTFlYS0yZWViLTFkNDJmNTUyYmEzOLJ1cHN0cmVhbV9jZWxsc19tYXCIo2FsbJCj4oiYkKdpc2xlZ2FskdkkNTEyZmE2ZDItYTJiZC0xMWVhLTNkYmUtYjkzNWI1MzY5NjdiqmlzY29tcGxldGWR2SRkNWNjNDFlOC1hMmJkLTExZWEtMzljNy1iN2RmOGRlNmFlM2WscnVuX3NvbHV0aW9ukdkkNDcwOWRiMzYtYTMyNy0xMWVhLTEzYTMtYmJmYjE4ZGE4NGNlpGxhc3SQqEZ1bmN0aW9ukK9zdGFydGluZ19zdGFja3OR2SQzMmYyNmY4MC1hMmJiLTExZWEtMGYyYS0zZmM2MzFhZGE2M2TZJGU5MTUzOTRlLWEyYzAtMTFlYS0wY2Q5LTFkZjZmZDNjN2FkZoS0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJGU5MTUzOTRlLWEyYzAtMTFlYS0wY2Q5LTFkZjZmZDNjN2FkZrRkb3duc3RyZWFtX2NlbGxzX21hcIGkbW92ZZHZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZbJ1cHN0cmVhbV9jZWxsc19tYXCGqnB1c2hmaXJzdCGQqGRlZXBjb3B5kKVlcnJvcpCjSW50kKdpc2VtcHR5kKlwb3BmaXJzdCGQ2SQ3ZTFiYTJhYy1hMmJhLTExZWEtMDEzNC0yZjYxZWQ3NWJlMTiEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SQ3ZTFiYTJhYy1hMmJhLTExZWEtMDEzNC0yZjYxZWQ3NWJlMTi0ZG93bnN0cmVhbV9jZWxsc19tYXCAsnVwc3RyZWFtX2NlbGxzX21hcIKnQG1kX3N0cpCoZ2V0aW5kZXiQ2SRlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMziEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SRlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMzi0ZG93bnN0cmVhbV9jZWxsc19tYXCAsnVwc3RyZWFtX2NlbGxzX21hcIanQG1kX3N0cpCpbnVtX2Rpc2tzkdkkNjIwZDY4MzQtYTJiYS0xMWVhLTE1MGEtMjEzMmJiNTRlNGIzoj49kK5jaGVja19zb2x1dGlvbpHZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOKVzb2x2ZZHZJDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZqhnZXRpbmRleJDZJGJiNTA4OGVjLWEzMzAtMTFlYS0yYzQxLTZiOGI5MjcyNGIzYoS0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJGJiNTA4OGVjLWEzMzAtMTFlYS0yYzQxLTZiOGI5MjcyNGIzYrRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgqdAbWRfc3RykKhnZXRpbmRleJDZJDQzNzgxYTUyLWEzMzktMTFlYS0zODAzLWU1NmUyZDA4YWE4M4S0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJDQzNzgxYTUyLWEzMzktMTFlYS0zODAzLWU1NmUyZDA4YWE4M7Rkb3duc3RyZWFtX2NlbGxzX21hcIGrZmlyc3Rfc3RhY2uR2SQzMmYyNmY4MC1hMmJiLTExZWEtMGYyYS0zZmM2MzFhZGE2M2SydXBzdHJlYW1fY2VsbHNfbWFwgqdjb2xsZWN0kKlhbGxfZGlza3OR2SQ3MjQzY2M4ZS1hMmJhLTExZWEtM2YyOS05OTM1NmYwY2RjZjTZJDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZIS0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZLRkb3duc3RyZWFtX2NlbGxzX21hcIGvc3RhcnRpbmdfc3RhY2tzk9kkMDEwZGJkYmMtYTJjNS0xMWVhLTM0YzMtODM3ZWFlMTc0MTZm2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2XZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOLJ1cHN0cmVhbV9jZWxsc19tYXCBq2ZpcnN0X3N0YWNrkdkkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgz2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2WEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2W0ZG93bnN0cmVhbV9jZWxsc19tYXCBrHJ1bl9zb2x1dGlvbpPZJGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MNkkOTE3M2IxNzQtYTMyNy0xMWVhLTNhNjktOWY3NTI1ZjJlN2I02SQxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMziydXBzdHJlYW1fY2VsbHNfbWFwi6dtaXNzaW5nkKNBbnmQqEZ1bmN0aW9ukKZsZW5ndGiQqWVudW1lcmF0ZZCoZGVlcGNvcHmQoSuQpXVuZGVmkKVBcnJheZCkbW92ZZHZJGU5MTUzOTRlLWEyYzAtMTFlYS0wY2Q5LTFkZjZmZDNjN2FkZq9zdGFydGluZ19zdGFja3OR2SQzMmYyNmY4MC1hMmJiLTExZWEtMGYyYS0zZmM2MzFhZGE2M2TZJDUzMzc0ZjBlLWEyYzAtMTFlYS0wYzkxLTk3NDc0NzgwNzIxZYS0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJDUzMzc0ZjBlLWEyYzAtMTFlYS0wYzkxLTk3NDc0NzgwNzIxZbRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgqdAbWRfc3RykKhnZXRpbmRleJDZJGI2NDhhYjcwLWEyYmEtMTFlYS0yZGNjLTU1YjYzMGU0NDMyNYS0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJGI2NDhhYjcwLWEyYmEtMTFlYS0yZGNjLTU1YjYzMGU0NDMyNbRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgqdAbWRfc3RykKhnZXRpbmRleJDZJDk1ZmJkMGQyLWEyYjktMTFlYS0wNjgyLWZkZjc4MzI1MTc5N4S0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJDk1ZmJkMGQyLWEyYjktMTFlYS0wNjgyLWZkZjc4MzI1MTc5N7Rkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgqdAbWRfc3RykKhnZXRpbmRleJDZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNIS0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNLRkb3duc3RyZWFtX2NlbGxzX21hcIGpYWxsX2Rpc2tzk9kkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgz2SQ1MTJmYTZkMi1hMmJkLTExZWEtM2RiZS1iOTM1YjUzNjk2N2LZJGQ1Y2M0MWU4LWEyYmQtMTFlYS0zOWM3LWI3ZGY4ZGU2YWUzZbJ1cHN0cmVhbV9jZWxsc19tYXCCoTqQqW51bV9kaXNrc5HZJDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiM9kkNTEyZmE2ZDItYTJiZC0xMWVhLTNkYmUtYjkzNWI1MzY5NjdihLRwcmVjZWRlbmNlX2hldXJpc3RpYwinY2VsbF9pZNkkNTEyZmE2ZDItYTJiZC0xMWVhLTNkYmUtYjkzNWI1MzY5NjditGRvd25zdHJlYW1fY2VsbHNfbWFwgadpc2xlZ2FskdkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4snVwc3RyZWFtX2NlbGxzX21hcIWpYWxsX2Rpc2tzkdkkNzI0M2NjOGUtYTJiYS0xMWVhLTNmMjktOTkzNTZmMGNkY2Y0pHNvcnSQqGlzc29ydGVkkKI9PZCjYWxskNkkM2ViM2M0YzAtYTJjNS0xMWVhLTBiY2MtYzliNTIwOTRmNjYwhLRwcmVjZWRlbmNlX2hldXJpc3RpYwinY2VsbF9pZNkkM2ViM2M0YzAtYTJjNS0xMWVhLTBiY2MtYzliNTIwOTRmNjYwtGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kNkkZTM0N2YxZGUtYTJiYi0xMWVhLTA2ZTctODdjY2E2ZjJhMjQwhLRwcmVjZWRlbmNlX2hldXJpc3RpYwinY2VsbF9pZNkkZTM0N2YxZGUtYTJiYi0xMWVhLTA2ZTctODdjY2E2ZjJhMjQwtGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kNkkNjIwZDY4MzQtYTJiYS0xMWVhLTE1MGEtMjEzMmJiNTRlNGIzhLRwcmVjZWRlbmNlX2hldXJpc3RpYwinY2VsbF9pZNkkNjIwZDY4MzQtYTJiYS0xMWVhLTE1MGEtMjEzMmJiNTRlNGIztGRvd25zdHJlYW1fY2VsbHNfbWFwgaludW1fZGlza3OS2SQ3MjQzY2M4ZS1hMmJhLTExZWEtM2YyOS05OTM1NmYwY2RjZjTZJGU1NGFkZDBhLWEzMzAtMTFlYS0yZWViLTFkNDJmNTUyYmEzOLJ1cHN0cmVhbV9jZWxsc19tYXCA2SRkNWNjNDFlOC1hMmJkLTExZWEtMzljNy1iN2RmOGRlNmFlM2WEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SRkNWNjNDFlOC1hMmJkLTExZWEtMzljNy1iN2RmOGRlNmFlM2W0ZG93bnN0cmVhbV9jZWxsc19tYXCBqmlzY29tcGxldGWR2SQxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMziydXBzdHJlYW1fY2VsbHNfbWFwg6RsYXN0kKI9PZCpYWxsX2Rpc2tzkdkkNzI0M2NjOGUtYTJiYS0xMWVhLTNmMjktOTkzNTZmMGNkY2Y02SQyOWI0MTBjYy1hMzI5LTExZWEtMjAyYS03OTViMzFjZTVhZDWEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SQyOWI0MTBjYy1hMzI5LTExZWEtMjAyYS03OTViMzFjZTVhZDW0ZG93bnN0cmVhbV9jZWxsc19tYXCBrndyb25nX3NvbHV0aW9ukdkkZDIyMjdiNDAtYTMyOS0xMWVhLTEwNWMtYjU4NWQ1ZmNmOTcwsnVwc3RyZWFtX2NlbGxzX21hcIOlVHVwbGWQo0ludJClQXJyYXmQ2SQ4ZWE3Zjk0NC1hMzI5LTExZWEtMjJjYy00ZGJkMTFlYzA2MTCEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SQ4ZWE3Zjk0NC1hMzI5LTExZWEtMjJjYy00ZGJkMTFlYzA2MTC0ZG93bnN0cmVhbV9jZWxsc19tYXCAsnVwc3RyZWFtX2NlbGxzX21hcIKuY2hlY2tfc29sdXRpb26R2SQxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMzilc29sdmWR2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmbZJDViMmVlNDBlLWEyYjgtMTFlYS0wZmVmLWMzNWZlNjkxODg2MIS0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJDViMmVlNDBlLWEyYjgtMTFlYS0wZmVmLWMzNWZlNjkxODg2MLRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgqdAbWRfc3RykKhnZXRpbmRleJDZJDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMYS0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMbRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgqdAbWRfc3RykKhnZXRpbmRleJDZJDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNIS0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNLRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgqVzb2x2ZZHZJDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZqxydW5fc29sdXRpb26R2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2XZJGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMYS0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMbRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgqdAbWRfc3RykKhnZXRpbmRleJDZJDM1YWRhMjE0LWEzMmMtMTFlYS0wZGEzLWQ1ZDQ5NGIyODQ2N4S0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJDM1YWRhMjE0LWEzMmMtMTFlYS0wZGEzLWQ1ZDQ5NGIyODQ2N7Rkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgqdAbWRfc3RykKhnZXRpbmRleJDZJGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MIS0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MLRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgq53cm9uZ19zb2x1dGlvbpHZJDI5YjQxMGNjLWEzMjktMTFlYS0yMDJhLTc5NWIzMWNlNWFkNaxydW5fc29sdXRpb26R2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2W0Y2VsbF9leGVjdXRpb25fb3JkZXLcABzZJDViMmVlNDBlLWEyYjgtMTFlYS0wZmVmLWMzNWZlNjkxODg2MNkkOTVmYmQwZDItYTJiOS0xMWVhLTA2ODItZmRmNzgzMjUxNzk32SQ2MjBkNjgzNC1hMmJhLTExZWEtMTUwYS0yMTMyYmI1NGU0YjPZJDM1YWRhMjE0LWEzMmMtMTFlYS0wZGEzLWQ1ZDQ5NGIyODQ2N9kkNzI0M2NjOGUtYTJiYS0xMWVhLTNmMjktOTkzNTZmMGNkY2Y02SQ3ZTFiYTJhYy1hMmJhLTExZWEtMDEzNC0yZjYxZWQ3NWJlMTjZJDQzNzgxYTUyLWEzMzktMTFlYS0zODAzLWU1NmUyZDA4YWE4M9kkYjY0OGFiNzAtYTJiYS0xMWVhLTJkY2MtNTViNjMwZTQ0MzI12SQzMmYyNmY4MC1hMmJiLTExZWEtMGYyYS0zZmM2MzFhZGE2M2TZJGUzNDdmMWRlLWEyYmItMTFlYS0wNmU3LTg3Y2NhNmYyYTI0MNkkNTEyZmE2ZDItYTJiZC0xMWVhLTNkYmUtYjkzNWI1MzY5Njdi2SRjNTZhNTg1OC1hMmJkLTExZWEtMWQ5Ni03N2VhZjVlNzQ5MjXZJGQ1Y2M0MWU4LWEyYmQtMTFlYS0zOWM3LWI3ZGY4ZGU2YWUzZdkkNTMzNzRmMGUtYTJjMC0xMWVhLTBjOTEtOTc0NzQ3ODA3MjFl2SRlOTE1Mzk0ZS1hMmMwLTExZWEtMGNkOS0xZGY2ZmQzYzdhZGbZJDg3YjJkMTY0LWEyYzQtMTFlYS0zMDk1LTkxNjYyODk0Mzg3OdkkMjliNDEwY2MtYTMyOS0xMWVhLTIwMmEtNzk1YjMxY2U1YWQ12SRlYTI0ZTc3OC1hMzJlLTExZWEtM2YxMS1kYmU5ZDM2YjEwMTHZJDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZtkkM2ViM2M0YzAtYTJjNS0xMWVhLTBiY2MtYzliNTIwOTRmNjYw2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2XZJDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMdkkZDIyMjdiNDAtYTMyOS0xMWVhLTEwNWMtYjU4NWQ1ZmNmOTcw2SQ5MTczYjE3NC1hMzI3LTExZWEtM2E2OS05Zjc1MjVmMmU3YjTZJGJiNTA4OGVjLWEzMzAtMTFlYS0yYzQxLTZiOGI5MjcyNGIzYtkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM42SQ4ZWE3Zjk0NC1hMzI5LTExZWEtMjJjYy00ZGJkMTFlYzA2MTDZJGU1NGFkZDBhLWEzMzAtMTFlYS0yZWViLTFkNDJmNTUyYmEzOKlzaG9ydHBhdGi4c2FtcGxlIFRvd2VyIG9mIEhhbm9pLmpsrnByb2Nlc3Nfc3RhdHVzpXJlYWR5pHBhdGjZNy9zcnYvanVsaWEvcGtnL3BsdXRvX25vdGVib29rcy9zYW1wbGUgVG93ZXIgb2YgSGFub2kuamyqY2VsbF9vcmRlctwAHNkkNWIyZWU0MGUtYTJiOC0xMWVhLTBmZWYtYzM1ZmU2OTE4ODYw2SQ5NWZiZDBkMi1hMmI5LTExZWEtMDY4Mi1mZGY3ODMyNTE3OTfZJDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiM9kkMzVhZGEyMTQtYTMyYy0xMWVhLTBkYTMtZDVkNDk0YjI4NDY32SQ3MjQzY2M4ZS1hMmJhLTExZWEtM2YyOS05OTM1NmYwY2RjZjTZJDdlMWJhMmFjLWEyYmEtMTFlYS0wMTM0LTJmNjFlZDc1YmUxONkkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgz2SRiNjQ4YWI3MC1hMmJhLTExZWEtMmRjYy01NWI2MzBlNDQzMjXZJDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZNkkZTM0N2YxZGUtYTJiYi0xMWVhLTA2ZTctODdjY2E2ZjJhMjQw2SQ1MTJmYTZkMi1hMmJkLTExZWEtM2RiZS1iOTM1YjUzNjk2N2LZJGM1NmE1ODU4LWEyYmQtMTFlYS0xZDk2LTc3ZWFmNWU3NDkyNdkkZDVjYzQxZTgtYTJiZC0xMWVhLTM5YzctYjdkZjhkZTZhZTNl2SQ1MzM3NGYwZS1hMmMwLTExZWEtMGM5MS05NzQ3NDc4MDcyMWXZJGU5MTUzOTRlLWEyYzAtMTFlYS0wY2Q5LTFkZjZmZDNjN2FkZtkkODdiMmQxNjQtYTJjNC0xMWVhLTMwOTUtOTE2NjI4OTQzODc52SQyOWI0MTBjYy1hMzI5LTExZWEtMjAyYS03OTViMzFjZTVhZDXZJGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMdkkMDEwZGJkYmMtYTJjNS0xMWVhLTM0YzMtODM3ZWFlMTc0MTZm2SQzZWIzYzRjMC1hMmM1LTExZWEtMGJjYy1jOWI1MjA5NGY2NjDZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZdkkMzcyODI0YjQtYTMzMC0xMWVhLTJmMjYtN2I5YTFhZDAxOGYx2SRkMjIyN2I0MC1hMzI5LTExZWEtMTA1Yy1iNTg1ZDVmY2Y5NzDZJDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNNkkYmI1MDg4ZWMtYTMzMC0xMWVhLTJjNDEtNmI4YjkyNzI0YjNi2SQxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMzjZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMNkkZTU0YWRkMGEtYTMzMC0xMWVhLTJlZWItMWQ0MmY1NTJiYTM4pW5icGtnh7JpbnN0YWxsZWRfdmVyc2lvbnOAsHRlcm1pbmFsX291dHB1dHOAp2VuYWJsZWTDt3Jlc3RhcnRfcmVjb21tZW5kZWRfbXNnwLRyZXN0YXJ0X3JlcXVpcmVkX21zZ8CtYnVzeV9wYWNrYWdlc5CsaW5zdGFudGlhdGVkw6tjZWxsX2lucHV0c94AHNkkODdiMmQxNjQtYTJjNC0xMWVhLTMwOTUtOTE2NjI4OTQzODc5hKdjZWxsX2lk2SQ4N2IyZDE2NC1hMmM0LTExZWEtMzA5NS05MTY2Mjg5NDM4NzmwcnVubmluZ19kaXNhYmxlZMKkY29kZdoCIm1kIiIiCiMjIFNvbHZpbmcgdGhlIHByb2JsZW0KCldlIGhhdmUgaW1wbGVtZW50ZWQgdGhlIGdhbWUgcGllY2VzIGFuZCB0aGUgcnVsZXMsIHNvIHlvdSBjYW4gc3RhcnQgd29ya2luZyBvbiB5b3VyIHNvbHV0aW9uLgoKVG8gZG8gdGhpcywgeW91IGNhbiBmaWxsIGluIHRoZSBgc29sdmUoc3RhY2tzKWAgZnVuY3Rpb24uIFRoaXMgZnVuY3Rpb24gc2hvdWxkIGdpdmUgYSBzb2x1dGlvbiBmb3IgdGhlIGdpdmVuIGBzdGFja3NgLCBieSBtb3ZpbmcgYWxsIHRoZSBkaXNrcyBmcm9tIHN0YWNrIDEgdG8gc3RhY2sgMy4KCkFzIG91dHB1dCwgYHNvbHZlYCBzaG91bGQgZ2l2ZSBhIHJlY2lwZSwgdGhhdCB0ZWxscyB1cyB3aGF0IHRvIGRvLiBUaGlzIHJlY2lwZSBzaG91bGQgYmUgYW4gYXJyYXkgb2YgbW92ZXMuIEVhY2ggbW92ZXMgaXMgYSBgKHNvdXJjZSwgdGFyZ2V0KWAgdHVwbGUsIHNwZWNpZnlpbmcgZnJvbSB3aGljaCBzdGFjayB0byB3aGljaCBzdGFjayB5b3Ugc2hvdWxkIG1vdmUuCgpGb3IgZXhhbXBsZSwgaXQgbWlnaHQgbG9vayBsaWtlIHRoaXM6CiIiIqtjb2RlX2ZvbGRlZMPZJGM1NmE1ODU4LWEyYmQtMTFlYS0xZDk2LTc3ZWFmNWU3NDkyNYSnY2VsbF9pZNkkYzU2YTU4NTgtYTJiZC0xMWVhLTFkOTYtNzdlYWY1ZTc0OTI1sHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaASBtZCIiIgpBbm90aGVyIGZ1bmN0aW9uIGZvciBzdGF0ZXM6IGNoZWNrIGlmIHdlIGFyZSBkb25lISBXZSBjYW4gYXNzdW1lIHRoYXQgd2UgYWxyZWFkeSBjaGVja2VkIGlmIHRoZSBzdGF0ZSB3YXMgbGVnYWwuIFNvIHdlIGtub3cgdGhhdCBhbGwgdGhlIGRpc2tzIGFyZSB0aGVyZSBhbmQgdGhleSBhcmUgb3JkZXJlZCBjb3JyZWN0bHkuICBUbyBjaGVjayBpZiB3ZSBhcmUgZmluaXNoZWQsIHdlIGp1c3QgbmVlZCB0byBjaGVjayBpZiB0aGUgbGFzdCBzdGFjayBjb250YWlucyBhbGwgdGhlIGRpc2tzLgoiIiKrY29kZV9mb2xkZWTD2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmaEp2NlbGxfaWTZJDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZrBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2WBmdW5jdGlvbiBzb2x2ZShzdGFydCA9IHN0YXJ0aW5nX3N0YWNrcyk6OkFycmF5e1R1cGxle0ludCwgSW50fX0KCQoJI3doYXQgdG8gZG8/CgkKCXJldHVybiBbXQplbmSrY29kZV9mb2xkZWTC2SQxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMziEp2NlbGxfaWTZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOLBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2gGeZnVuY3Rpb24gY2hlY2tfc29sdXRpb24oc29sdmVyOjpGdW5jdGlvbiwgc3RhcnQgPSBzdGFydGluZ19zdGFja3MpCgl0cnkKCQkjcnVuIHRoZSBzb2x1dGlvbgoJCWFsbF9zdGF0ZXMgPSBydW5fc29sdXRpb24oc29sdmVyLCBzdGFydCkKCQkKCQkjY2hlY2sgaWYgZWFjaCBzdGF0ZSBpcyBsZWdhbAoJCWFsbF9sZWdhbCA9IGFsbChpc2xlZ2FsLCBhbGxfc3RhdGVzKQoJCQoJCSNjaGVjayBpZiB0aGUgZmluYWwgc3RhdGUgaXMgaXMgdGhlIGNvbXBsZXRlZCBwdXp6bGUKCQljb21wbGV0ZSA9IChpc2NvbXBsZXRlIOKImCBsYXN0KShhbGxfc3RhdGVzKQoJCQoJCWFsbF9sZWdhbCAmJiBjb21wbGV0ZQoJY2F0Y2gKCQkjcmV0dXJuIGZhbHNlIGlmIHdlIGVuY291bnRlcmVkIGFuIGVycm9yCgkJcmV0dXJuIGZhbHNlCgllbmQKZW5kq2NvZGVfZm9sZGVkwtkkZTkxNTM5NGUtYTJjMC0xMWVhLTBjZDktMWRmNmZkM2M3YWRmhKdjZWxsX2lk2SRlOTE1Mzk0ZS1hMmMwLTExZWEtMGNkOS0xZGY2ZmQzYzdhZGawcnVubmluZ19kaXNhYmxlZMKkY29kZdoBVmZ1bmN0aW9uIG1vdmUoc3RhY2tzLCBzb3VyY2U6OkludCwgdGFyZ2V0OjpJbnQpCgkjY2hlY2sgaWYgdGhlIGZyb20gc3RhY2sgaWYgbm90IGVtcHR5CglpZiBpc2VtcHR5KHN0YWNrc1tzb3VyY2VdKQoJCWVycm9yKCJFcnJvcjogYXR0ZW1wdGVkIHRvIG1vdmUgZGlzayBmcm9tIGVtcHR5IHN0YWNrIikKCWVuZAoJCgluZXdfc3RhY2tzID0gZGVlcGNvcHkoc3RhY2tzKQoJCglkaXNrID0gcG9wZmlyc3QhKG5ld19zdGFja3Nbc291cmNlXSkgI3Rha2UgZGlzawoJcHVzaGZpcnN0IShuZXdfc3RhY2tzW3RhcmdldF0sIGRpc2spICNwdXQgb24gbmV3IHN0YWNrCgkKCXJldHVybiBuZXdfc3RhY2tzCmVuZKtjb2RlX2ZvbGRlZMLZJDdlMWJhMmFjLWEyYmEtMTFlYS0wMTM0LTJmNjFlZDc1YmUxOISnY2VsbF9pZNkkN2UxYmEyYWMtYTJiYS0xMWVhLTAxMzQtMmY2MWVkNzViZTE4sHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXZd21kIiIiCkEgc2luZ2xlIHN0YWNrIGNhbiBiZSByZXByZXNlbnRlZCBhcyBhbiBhcnJheSB3aXRoIGFsbCB0aGUgZGlza3MgaW4gaXQuIFdlIHdpbGwgbGlzdCB0aGVtIGZyb20gdG9wIHRvIGJvdHRvbS4KIiIiq2NvZGVfZm9sZGVkw9kkZTU0YWRkMGEtYTMzMC0xMWVhLTJlZWItMWQ0MmY1NTJiYTM4hKdjZWxsX2lk2SRlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMziwcnVubmluZ19kaXNhYmxlZMKkY29kZdoBOGlmIGNoZWNrX3NvbHV0aW9uKHNvbHZlKQoJaWYgbnVtX2Rpc2tzID49IDgKCQltZCIiIgoJCSMjIyMgQ29uZ3JhdHVsYXRpb25zLCB5b3VyIHNvbHV0aW9uIHdvcmtzISDwn5iOCgkJIiIiCgllbHNlCgkJbWQiIiIKCQlZb3VyIHNvbHV0aW9uIHdvcmtzIGZvciAkKG51bV9kaXNrcykgZGlza3MuIENoYW5nZSBgbnVtX2Rpc2tzYCB0byBzZWUgaWYgaXQgd29ya3MgZm9yIDggb3IgbW9yZS4KCQkiIiIKCWVuZAplbHNlCgltZCIiIgoJVGhlIGBzb2x2ZWAgZnVuY3Rpb24gZG9lc24ndCB3b3JrIHlldC4gS2VlcCB3b3JraW5nIG9uIGl0IQoJIiIiCmVuZKtjb2RlX2ZvbGRlZMPZJGJiNTA4OGVjLWEzMzAtMTFlYS0yYzQxLTZiOGI5MjcyNGIzYoSnY2VsbF9pZNkkYmI1MDg4ZWMtYTMzMC0xMWVhLTJjNDEtNmI4YjkyNzI0YjNisHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXZuW1kIiIiCk5vdyB0aGF0IHdlIGhhdmUgd2F5IHRvIHJ1biBhIHJlY2lwZSwgd2UgY2FuIGNoZWNrIGlmIGl0cyBvdXRwdXQgaXMgY29ycmVjdC4gV2Ugd2lsbCBjaGVjayBpZiBhbGwgdGhlIGludGVybWVkaWF0ZSBzdGF0ZXMgYXJlIGxlZ2FsIGFuZCB0aGUgZmluYWwgc3RhdGUgaXMgdGhlIGZpbmlzaGVkIHB1enpsZS4KIiIiq2NvZGVfZm9sZGVkw9kkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgzhKdjZWxsX2lk2SQ0Mzc4MWE1Mi1hMzM5LTExZWEtMzgwMy1lNTZlMmQwOGFhODOwcnVubmluZ19kaXNhYmxlZMKkY29kZdkgZmlyc3Rfc3RhY2sgPSBjb2xsZWN0KGFsbF9kaXNrcymrY29kZV9mb2xkZWTC2SQzMmYyNmY4MC1hMmJiLTExZWEtMGYyYS0zZmM2MzFhZGE2M2SEp2NlbGxfaWTZJDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZLBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2SdzdGFydGluZ19zdGFja3MgPSBbZmlyc3Rfc3RhY2ssIFtdLCBbXV2rY29kZV9mb2xkZWTC2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2WEp2NlbGxfaWTZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZbBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2gFrZnVuY3Rpb24gcnVuX3NvbHV0aW9uKHNvbHZlcjo6RnVuY3Rpb24sIHN0YXJ0ID0gc3RhcnRpbmdfc3RhY2tzKQoJbW92ZXMgPSBzb2x2ZXIoZGVlcGNvcHkoc3RhcnQpKSAjYXBwbHkgdGhlIHNvbHZlcgoJCglhbGxfc3RhdGVzID0gQXJyYXl7QW55LDF9KHVuZGVmLCBsZW5ndGgobW92ZXMpICsgMSkKCWFsbF9zdGF0ZXNbMV0gPSBzdGFydAoJCglmb3IgKGksIG0pIGluIGVudW1lcmF0ZShtb3ZlcykKCQl0cnkKCQkJYWxsX3N0YXRlc1tpICsgMV0gPSBtb3ZlKGFsbF9zdGF0ZXNbaV0sIG1bMV0sIG1bMl0pCgkJY2F0Y2gKCQkJYWxsX3N0YXRlc1tpICsgMV0gPSBtaXNzaW5nCgkJZW5kCgllbmQKCQoJcmV0dXJuIGFsbF9zdGF0ZXMKZW5kq2NvZGVfZm9sZGVkwtkkNTMzNzRmMGUtYTJjMC0xMWVhLTBjOTEtOTc0NzQ3ODA3MjFlhKdjZWxsX2lk2SQ1MzM3NGYwZS1hMmMwLTExZWEtMGM5MS05NzQ3NDc4MDcyMWWwcnVubmluZ19kaXNhYmxlZMKkY29kZdoD121kIiIiCk5vdyB0aGUgb25seSBydWxlcyBsZWZ0IHRvIGltcGxlbWVudCBhcmUgdGhlIHJ1bGVzIGZvciBtb3ZpbmcgZGlza3MuIAoKV2UgY291bGQgaW1wbGVtZW50IHRoaXMgYXMgYW5vdGhlciBjaGVjayBvbiBzdGF0ZXMsIGJ1dCBpdCdzIGVhc2llciB0byBqdXN0IHdyaXRlIGEgbGVnYWwgYG1vdmVgIGZ1bmN0aW9uLiBZb3VyIHNvbHV0aW9uIHdpbGwgc3BlY2lmeSBtb3ZlcyBmb3IgdGhlIGBtb3ZlYCBmdW5jdGlvbiwgc28gdGhpcyB3aWxsIGJlIHRoZSBvbmx5IHdheSB0aGF0IHRoZSBzdGFja3MgYXJlIGFjdHVhbGx5IG1hbmlwdWxhdGVkLiBUaGF0IHdheSwgd2UgYXJlIHN1cmUgdGhhdCBub3RoaW5nIGZpc2h5IGlzIGhhcHBlbmluZy4KCldlIHdpbGwgbWFrZSBvdXIgYG1vdmVgIGZ1bmN0aW9uIHNvIHRoYXQgaXRzIGlucHV0IGNvbnNpc3RzIG9mIGEgc3RhdGUgb2YgdGhlIGdhbWUsIGFuZCBpbnN0cnVjdGlvbnMgZm9yIHdoYXQgdG8gZG8uIEl0cyBvdXRwdXQgd2lsbCBiZSB0aGUgbmV3IHN0YXRlIG9mIHRoZSBnYW1lLgoKU28gd2hhdCBzaG91bGQgdGhvc2UgaW5zdHJ1Y3Rpb25zIGxvb2sgbGlrZT8gSXQgbWF5IHNlZW0gaW50dWl0aXZlIHRvIGdpdmUgYSBfZGlza18gdGhhdCBzaG91bGQgYmUgbW92ZWQsIGJ1dCB0aGF0J3MgbW9yZSB0aGFuIHdlIG5lZWQuIEFmdGVyIGFsbCwgd2UgYXJlIG9ubHkgYWxsb3dlZCB0byB0YWtlIHRoZSB0b3AgZGlzayBmcm9tIG9uZSBzdGFjaywgYW5kIG1vdmUgaXQgdG8gdGhlIHRvcCBvZiBhbm90aGVyLiBTbyB3ZSBvbmx5IGhhdmUgdG8gc2F5IHdoaWNoIF9zdGFja3NfIHdlIGFyZSBtb3ZpbmcgYmV0d2Vlbi4KCihOb3RlIHRoYXQgdGhlIGBtb3ZlYCBmdW5jdGlvbiBpcyBva2F5IHdpdGggbW92aW5nIGEgbGFyZ2VyIGRpc2sgb24gdG9wIG9mIGEgc21hbGxlciBkaXNrLiBXZSBhbHJlYWR5IGltcGxlbWVudGVkIHRoYXQgcmVzdHJpY3Rpb24gaW4gYGlzbGVnYWxgLikKIiIiq2NvZGVfZm9sZGVkw9kkYjY0OGFiNzAtYTJiYS0xMWVhLTJkY2MtNTViNjMwZTQ0MzI1hKdjZWxsX2lk2SRiNjQ4YWI3MC1hMmJhLTExZWEtMmRjYy01NWI2MzBlNDQzMjWwcnVubmluZ19kaXNhYmxlZMKkY29kZdkubWQiIiIKTm93IHdlIGhhdmUgdG8gbWFrZSB0aHJlZSBvZiB0aG9zZS4gCiIiIqtjb2RlX2ZvbGRlZMPZJDk1ZmJkMGQyLWEyYjktMTFlYS0wNjgyLWZkZjc4MzI1MTc5N4SnY2VsbF9pZNkkOTVmYmQwZDItYTJiOS0xMWVhLTA2ODItZmRmNzgzMjUxNzk3sHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaAlttZCIiIgojIyBTZXR0aW5nIHVwIHRoZSBnYW1lIHBpZWNlcwoKV2hhdCBkb2VzIGEgSnVsaWEgaW1wbGVtZW50YXRpb24gbG9vayBsaWtlPyBXZSdyZSBub3QgcmVhbGx5IGludGVyZXN0ZWQgaW4gd3JpdGluZyBjb2RlIHRoYXQgd2lsbCBtYW5pcHVsYXRlIHBoeXNpY2FsIGRpc2tzLiBPdXIgZmluYWwgZ29hbCBpcyBhIGZ1bmN0aW9uIHRoYXQgd2lsbCBnaXZlIHVzIGEgX3JlY2lwZV8gdG8gc29sdmUgdGhlIHRvd2VyIG9mIGhhbm9pLCB3aGljaCBpcyBqdXN0IGEgbGlzdCBvZiBtb3ZlcyB0byBtYWtlLiBCZWNhdXNlIG9mIHRoYXQsIHdlIGNhbiB1c2UgYSBsb3Qgb2YgYWJzdHJhY3Rpb24gaW4gb3VyIGltcGxlbWVudGF0aW9uLCBhbmQga2VlcCB0aGUgZGF0YSBzdHJ1Y3R1cmVzIGFzIHNpbXBsZSBhcyBwb3NzaWJsZS4KClRvIHN0YXJ0LCB3ZSBoYXZlIHRvIGRlZmluZSBzb21lIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBkaXNrcyBhbmQgdGhlIHN0YWNrcy4gVGhlIGRpc2tzIGhhdmUgb25lIGltcG9ydGFudCBwcm9wZXJ0eSwgd2hpY2ggaXMgdGhhdCB0aGV5IGFyZSBvcmRlcmVkLiBXZSBjYW4gdXNlIGludGVnZXJzIHRvIHJlcHJlc2VudCB0aGVtLgoiIiKrY29kZV9mb2xkZWTD2SQ3MjQzY2M4ZS1hMmJhLTExZWEtM2YyOS05OTM1NmYwY2RjZjSEp2NlbGxfaWTZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNLBydW5uaW5nX2Rpc2FibGVkwqRjb2Rlt2FsbF9kaXNrcyA9IDE6bnVtX2Rpc2tzq2NvZGVfZm9sZGVkwtkkNTEyZmE2ZDItYTJiZC0xMWVhLTNkYmUtYjkzNWI1MzY5NjdihKdjZWxsX2lk2SQ1MTJmYTZkMi1hMmJkLTExZWEtM2RiZS1iOTM1YjUzNjk2N2KwcnVubmluZ19kaXNhYmxlZMKkY29kZdoBFmZ1bmN0aW9uIGlzbGVnYWwoc3RhY2tzKQoJb3JkZXJfY29ycmVjdCA9IGFsbChpc3NvcnRlZCwgc3RhY2tzKQoJCgkjY2hlY2sgaWYgd2UgdXNlIHRoZSBzYW1lIGRpc2sgc2V0IHRoYXQgd2Ugc3RhcnRlZCB3aXRoCgkKCWRpc2tzX2luX3N0YXRlID0gc29ydChbZGlzayBmb3Igc3RhY2sgaW4gc3RhY2tzIGZvciBkaXNrIGluIHN0YWNrXSkKCWRpc2tzX2NvbXBsZXRlID0gZGlza3NfaW5fc3RhdGUgPT0gYWxsX2Rpc2tzCgkKCW9yZGVyX2NvcnJlY3QgJiYgZGlza3NfY29tcGxldGUKZW5kq2NvZGVfZm9sZGVkwtkkM2ViM2M0YzAtYTJjNS0xMWVhLTBiY2MtYzliNTIwOTRmNjYwhKdjZWxsX2lk2SQzZWIzYzRjMC1hMmM1LTExZWEtMGJjYy1jOWI1MjA5NGY2NjCwcnVubmluZ19kaXNhYmxlZMKkY29kZdmDbWQiIiIKIyMgQ2hlY2tpbmcgc29sdXRpb25zCgpUaGlzIGlzIHdoZXJlIHdlIGNhbiBjaGVjayBhIHNvbHV0aW9uLiBXZSBzdGFydCB3aXRoIGEgZnVuY3Rpb24gdGhhdCB0YWtlcyBvdXIgcmVjaXBlIGFuZCBydW5zIGl0LgoiIiKrY29kZV9mb2xkZWTD2SRlMzQ3ZjFkZS1hMmJiLTExZWEtMDZlNy04N2NjYTZmMmEyNDCEp2NlbGxfaWTZJGUzNDdmMWRlLWEyYmItMTFlYS0wNmU3LTg3Y2NhNmYyYTI0MLBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2gHUbWQiIiIKIyMgRGVmaW5pbmcgdGhlIHJ1bGVzCgpOb3cgdGhhdCB3ZSBoYXZlIG91ciAiZ2FtZSBib2FyZCIsIHdlIGNhbiBpbXBsZW1lbnQgdGhlIHJ1bGVzLgoKVG8gc3RhcnQsIHdlIG1ha2UgdHdvIGZ1bmN0aW9ucyBmb3Igc3RhdGVzLiBBIHN0YXRlIG9mIHRoZSBnYW1lIGlzIGp1c3QgYW4gYXJyYXkgb2Ygc3RhY2tzLgoKV2Ugd2lsbCBkZWZpbmUgYSBmdW5jdGlvbiB0aGF0IGNoZWNrcyBpZiBhIHN0YXRlIGlzIG9rYXkgYWNjb3JkaW5nIHRvIHRoZSBydWxlcy4gVG8gYmUgbGVnYWwsIGFsbCB0aGUgc3RhY2tzIHNob3VsZCBiZSBpbiB0aGUgY29ycmVjdCBvcmRlciwgc28gbm8gbGFyZ2VyIGRpc2tzIG9uIHRvcCBvZiBzbWFsbGVyIGRpc2tzLiAKCkFub3RoZXIgZ29vZCB0aGluZyB0byBjaGVjazogbm8gZGlza3Mgc2hvdWxkIGhhdmUgYXBwZWFyZWQgb3IgZGlzYXBwZWFyZWQgc2luY2Ugd2Ugc3RhcnRlZCEKIiIiq2NvZGVfZm9sZGVkw9kkNjIwZDY4MzQtYTJiYS0xMWVhLTE1MGEtMjEzMmJiNTRlNGIzhKdjZWxsX2lk2SQ2MjBkNjgzNC1hMmJhLTExZWEtMTUwYS0yMTMyYmI1NGU0YjOwcnVubmluZ19kaXNhYmxlZMKkY29kZa1udW1fZGlza3MgPSA4q2NvZGVfZm9sZGVkwtkkZDVjYzQxZTgtYTJiZC0xMWVhLTM5YzctYjdkZjhkZTZhZTNlhKdjZWxsX2lk2SRkNWNjNDFlOC1hMmJkLTExZWEtMzljNy1iN2RmOGRlNmFlM2WwcnVubmluZ19kaXNhYmxlZMKkY29kZdk6ZnVuY3Rpb24gaXNjb21wbGV0ZShzdGFja3MpCglsYXN0KHN0YWNrcykgPT0gYWxsX2Rpc2tzCmVuZKtjb2RlX2ZvbGRlZMLZJDI5YjQxMGNjLWEzMjktMTFlYS0yMDJhLTc5NWIzMWNlNWFkNYSnY2VsbF9pZNkkMjliNDEwY2MtYTMyOS0xMWVhLTIwMmEtNzk1YjMxY2U1YWQ1sHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXZYGZ1bmN0aW9uIHdyb25nX3NvbHV0aW9uKHN0YWNrcyk6OkFycmF5e1R1cGxle0ludCwgSW50fX0KCXJldHVybiBbKDEsMiksICgyLDMpLCAoMiwxKSwgKDEsMyldCmVuZKtjb2RlX2ZvbGRlZMLZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMISnY2VsbF9pZNkkOGVhN2Y5NDQtYTMyOS0xMWVhLTIyY2MtNGRiZDExZWMwNjEwsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGW1Y2hlY2tfc29sdXRpb24oc29sdmUpq2NvZGVfZm9sZGVkwtkkNWIyZWU0MGUtYTJiOC0xMWVhLTBmZWYtYzM1ZmU2OTE4ODYwhKdjZWxsX2lk2SQ1YjJlZTQwZS1hMmI4LTExZWEtMGZlZi1jMzVmZTY5MTg4NjCwcnVubmluZ19kaXNhYmxlZMKkY29kZdoDJm1kIiIiCiMgVGhlIHRvd2VyIG9mIEhhbm9pCgpUaGUgdG93ZXIgb2YgaGFub2kgaXMgYSBmYW1vdXMgcHV6emxlLgoKIVtzZXR1cCBvZiB0aGUgdG93ZXIgb2YgYSBoYW5vaV0oaHR0cHM6Ly91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy8wLzA3L1Rvd2VyX29mX0hhbm9pLmpwZWcpCgpUaGUgZ2FtZSBjb25zaXN0cyBvZiB0aHJlZSByb2RzIHdpdGggZGlza3Mgc3RhY2tlZCBvbiB0b3Agb2YgdGhlbS4gVGhlIHB1enpsZSB3aWxsIHN0YXJ0IHdpdGggYWxsIGRpc2tzIGluIGEgc3RhY2sgb24gb25lIG9mIHRoZSByb2RzIChsaWtlIGluIHRoZSBwaWN0dXJlKS4gVGhlIGdvYWwgaXMgdG8gbW92ZSBhbGwgdGhlIGRpc2NzIHRvIGEgc2luZ2xlIHN0YWNrIG9uIHRoZSBsYXN0IHJvZC4KClRvIG1vdmUgdGhlIGRpc2tzLCB5b3UgaGF2ZSB0byBmb2xsb3cgdGhlIGZvbGxvd2luZyBydWxlczoKCiogWW91IGNhbiBtb3ZlIG9ubHkgb25lIGRpc2sgYXQgYSB0aW1lLgoqIEZvciBlYWNoIG1vdmUsIHlvdSBoYXZlIHRvIHRha2UgdGhlIHVwcGVyIGRpc2sgZnJvbSBvbmUgb2YgdGhlIHN0YWNrcywgYW5kIHBsYWNlIGl0IG9uIHRvcCBvZiBhbm90aGVyIHN0YWNrIG9yIGVtcHR5IHJvZC4KKiBZb3UgY2Fubm90IHBsYWNlIGEgbGFyZ2VyIGRpc2sgb24gdG9wIG9mIGEgc21hbGxlciBkaXNrLgoKVGhpcyBub3RlYm9vayB3aWxsIGRlZmluZSBhIEp1bGlhIGltcGxlbWVudGF0aW9uIG9mIHRoZSBwdXp6bGUuIEl0J3MgdXAgdG8geW91IHRvIHdyaXRlIGFuIGFsZ29yaXRobSB0aGF0IHNvbHZlcyBpdC4KIiIiq2NvZGVfZm9sZGVkw9kkMzcyODI0YjQtYTMzMC0xMWVhLTJmMjYtN2I5YTFhZDAxOGYxhKdjZWxsX2lk2SQzNzI4MjRiNC1hMzMwLTExZWEtMmYyNi03YjlhMWFkMDE4ZjGwcnVubmluZ19kaXNhYmxlZMKkY29kZdoBDm1kIiIiCllvdSBjYW4gdXNlIHRoaXMgZnVuY3Rpb24gdG8gc2VlIHdoYXQgeW91ciBzb2x1dGlvbiBkb2VzLgoKSWYgYHJ1bl9zb2x1dGlvbmAgdHJpZXMgdG8gbWFrZSBhbiBpbXBvc3NpYmxlIG1vdmUsIGl0IHdpbGwgZ2l2ZSBgbWlzc2luZ2AgZnJvbSB0aGF0IHBvaW50IG9ud2FyZHMuIExvb2sgYXQgd2hhdCBoYXBwZW5zIGluIHRoZSBgd3Jvbmdfc29sdXRpb25gIHZlcnNpb24gYW5kIGNvbXBhcmUgaXQgdG8gdGhlIG1vdmVzIGluIGB3cm9uZ19zb2x1dGlvbmAuCiIiIqtjb2RlX2ZvbGRlZMPZJDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNISnY2VsbF9pZNkkOTE3M2IxNzQtYTMyNy0xMWVhLTNhNjktOWY3NTI1ZjJlN2I0sHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGWzcnVuX3NvbHV0aW9uKHNvbHZlKatjb2RlX2ZvbGRlZMLZJGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMYSnY2VsbF9pZNkkZWEyNGU3NzgtYTMyZS0xMWVhLTNmMTEtZGJlOWQzNmIxMDExsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaAUptZCIiIgpOb3cgeW91IGNhbiB3b3JrIG9uIGJ1aWxkaW5nIGFuIGFjdHVhbCBzb2x1dGlvbi4gU29tZSB0aXBzOgoqIGBzb2x2ZShzdGFja3MpYCBjYW4ga2VlcCB0cmFjayBvZiB0aGUgYm9hcmQgaWYgeW91IHdhbnQsIGJ1dCBpdCBkb2Vzbid0IGhhdmUgdG8uCiogVGhlIHNlY3Rpb24gYmVsb3cgd2lsbCBhY3R1YWxseSBydW4geW91ciBtb3Zlcywgd2hpY2ggaXMgdmVyeSB1c2VmdWwgZm9yIGNoZWNraW5nIHRoZW0uCiogSWYgeW91IHdhbnQsIHlvdSBjYW4gY2hhbmdlIGBudW1fZGlza3NgIHRvIDEgb3IgMi4gVGhhdCBjYW4gYmUgYSBnb29kIHN0YXJ0aW5nIHBvaW50LgoiIiKrY29kZV9mb2xkZWTD2SQzNWFkYTIxNC1hMzJjLTExZWEtMGRhMy1kNWQ0OTRiMjg0NjeEp2NlbGxfaWTZJDM1YWRhMjE0LWEzMmMtMTFlYS0wZGEzLWQ1ZDQ5NGIyODQ2N7BydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2X1tZCIiIihTaWRlIG5vdGU6IHRoZSBudW1iZXIgb2YgZGlza3MgaXMgYXJiaXRyYXJ5LiBXaGVuIHRlc3RpbmcgeW91ciBmdW5jdGlvbiwgeW91IG1heSB3YW50IHRvIHNldCBpdCB0byAxIG9yIDIgdG8gc3RhcnQuKSIiIqtjb2RlX2ZvbGRlZMPZJGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MISnY2VsbF9pZNkkZDIyMjdiNDAtYTMyOS0xMWVhLTEwNWMtYjU4NWQ1ZmNmOTcwsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGW8cnVuX3NvbHV0aW9uKHdyb25nX3NvbHV0aW9uKatjb2RlX2ZvbGRlZMKrbm90ZWJvb2tfaWTZJDNhMWNjNGMwLTUyYWMtMTFlYy0wNWI1LTRkODk2MDYyMDdmMqtpbl90ZW1wX2RpcsM="
</script>
<!-- [automatically generated launch parameters can be inserted here] -->
<script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@2a48ae2/frontend/editor.js" type="module" defer></script>
<script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@2a48ae2/frontend/warn_old_browsers.js"></script>
<script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@2a48ae2/frontend/common/SetupMathJax.js"></script>
<script type="text/javascript" id="MathJax-script" src="https://cdn.jsdelivr.net/npm/mathjax@3.1.2/es5/tex-svg-full.js" async></script>
</head>
<body class="loading no-MαθJax"></body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta name="viewport" content="width=device-width" />
<title>⚡ Pluto.jl ⚡</title>
<meta charset="utf-8" />
<script>
console.log("Pluto.jl, by Fons van der Plas (https://github.com/fonsp) and Mikołaj Bochenski (https://github.com/malyvsen) 🌈")
</script>
<meta name="author" content="Fons van der Plas; Mikołaj Bochenski" />
<link rel="license" href="https://github.com/fonsp/Pluto.jl/blob/main/LICENSE" />
<meta name="theme-color" content="#ffffff" />
<link rel="icon" type="image/png" sizes="16x16" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.16.0/frontend/img/favicon-16x16.png" />
<link rel="icon" type="image/png" sizes="32x32" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.16.0/frontend/img/favicon-32x32.png" />
<link rel="icon" type="image/png" sizes="96x96" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.16.0/frontend/img/favicon-96x96.png" />
<meta name="description" content="Pluto.jl notebooks" />
<link rel="pluto-logo-big" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.16.0/frontend/img/logo.svg" />
<link rel="pluto-logo-small" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.16.0/frontend/img/favicon_unsaturated.svg" />
<link rel="pluto-sw" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.16.0/frontend/sw.js" />
<script>
navigator.serviceWorker?.register(document.head.querySelector("link[rel='pluto-sw']").getAttribute("href"), { scope: "./" }).catch(console.warn)
</script>
<script src="https://cdn.jsdelivr.net/npm/lodash@4.17.20/lodash.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/@observablehq/stdlib@3.3.1/dist/stdlib.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/iframe-resizer@4.2.11/js/iframeResizer.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/lib/codemirror.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/mode/julia/julia.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/mode/loadmode.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/mode/meta.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/hint/show-hint.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/display/placeholder.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/edit/matchbrackets.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/runmode/runmode.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/comment/comment.min.js" defer></script>
<!-- <script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/edit/closebrackets.min.js" defer></script> -->
<!-- <script src="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/search/searchcursor.min.js" defer></script> -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/lib/codemirror.min.css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/codemirror@5.60.0/addon/hint/show-hint.min.css" />
<script src="https://cdn.jsdelivr.net/npm/ansi_up@5.0.1/ansi_up.min.js" defer></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.16.0/frontend/editor.css" type="text/css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.16.0/frontend/hide-ui.css" type="text/css" media="all" data-pluto-file="hide-ui">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.16.0/frontend/binder.css" type="text/css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.16.0/frontend/treeview.css" type="text/css" />
<link rel="preload" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.16.0/frontend/juliamono.css" as="style">
<link rel="preload" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.16.0/frontend/vollkorn.css" as="style">
<!-- The instant feedback form at the bottom of the page uses Google Firestore to save feedback. -->
<script src="https://cdn.jsdelivr.net/npm/firebase@7.13.1/firebase-app.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/firebase@7.13.1/firebase-firestore.js" defer></script>
<script data-pluto-file="launch-parameters">
window.pluto_notebookfile = "data:text/julia;charset=utf-8;base64,IyMjIEEgUGx1dG8uamwgbm90ZWJvb2sgIyMjCiMgdjAuMTYuMAoKdXNpbmcgTWFya2Rvd24KdXNpbmcgSW50ZXJhY3RpdmVVdGlscwoKIyDilZTilZDilaEgNWIyZWU0MGUtYTJiOC0xMWVhLTBmZWYtYzM1ZmU2OTE4ODYwCm1kIiIiCiMgVGhlIHRvd2VyIG9mIEhhbm9pCgpUaGUgdG93ZXIgb2YgaGFub2kgaXMgYSBmYW1vdXMgcHV6emxlLgoKIVtzZXR1cCBvZiB0aGUgdG93ZXIgb2YgYSBoYW5vaV0oaHR0cHM6Ly91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy8wLzA3L1Rvd2VyX29mX0hhbm9pLmpwZWcpCgpUaGUgZ2FtZSBjb25zaXN0cyBvZiB0aHJlZSByb2RzIHdpdGggZGlza3Mgc3RhY2tlZCBvbiB0b3Agb2YgdGhlbS4gVGhlIHB1enpsZSB3aWxsIHN0YXJ0IHdpdGggYWxsIGRpc2tzIGluIGEgc3RhY2sgb24gb25lIG9mIHRoZSByb2RzIChsaWtlIGluIHRoZSBwaWN0dXJlKS4gVGhlIGdvYWwgaXMgdG8gbW92ZSBhbGwgdGhlIGRpc2NzIHRvIGEgc2luZ2xlIHN0YWNrIG9uIHRoZSBsYXN0IHJvZC4KClRvIG1vdmUgdGhlIGRpc2tzLCB5b3UgaGF2ZSB0byBmb2xsb3cgdGhlIGZvbGxvd2luZyBydWxlczoKCiogWW91IGNhbiBtb3ZlIG9ubHkgb25lIGRpc2sgYXQgYSB0aW1lLgoqIEZvciBlYWNoIG1vdmUsIHlvdSBoYXZlIHRvIHRha2UgdGhlIHVwcGVyIGRpc2sgZnJvbSBvbmUgb2YgdGhlIHN0YWNrcywgYW5kIHBsYWNlIGl0IG9uIHRvcCBvZiBhbm90aGVyIHN0YWNrIG9yIGVtcHR5IHJvZC4KKiBZb3UgY2Fubm90IHBsYWNlIGEgbGFyZ2VyIGRpc2sgb24gdG9wIG9mIGEgc21hbGxlciBkaXNrLgoKVGhpcyBub3RlYm9vayB3aWxsIGRlZmluZSBhIEp1bGlhIGltcGxlbWVudGF0aW9uIG9mIHRoZSBwdXp6bGUuIEl0J3MgdXAgdG8geW91IHRvIHdyaXRlIGFuIGFsZ29yaXRobSB0aGF0IHNvbHZlcyBpdC4KIiIiCgojIOKVlOKVkOKVoSA5NWZiZDBkMi1hMmI5LTExZWEtMDY4Mi1mZGY3ODMyNTE3OTcKbWQiIiIKIyMgU2V0dGluZyB1cCB0aGUgZ2FtZSBwaWVjZXMKCldoYXQgZG9lcyBhIEp1bGlhIGltcGxlbWVudGF0aW9uIGxvb2sgbGlrZT8gV2UncmUgbm90IHJlYWxseSBpbnRlcmVzdGVkIGluIHdyaXRpbmcgY29kZSB0aGF0IHdpbGwgbWFuaXB1bGF0ZSBwaHlzaWNhbCBkaXNrcy4gT3VyIGZpbmFsIGdvYWwgaXMgYSBmdW5jdGlvbiB0aGF0IHdpbGwgZ2l2ZSB1cyBhIF9yZWNpcGVfIHRvIHNvbHZlIHRoZSB0b3dlciBvZiBoYW5vaSwgd2hpY2ggaXMganVzdCBhIGxpc3Qgb2YgbW92ZXMgdG8gbWFrZS4gQmVjYXVzZSBvZiB0aGF0LCB3ZSBjYW4gdXNlIGEgbG90IG9mIGFic3RyYWN0aW9uIGluIG91ciBpbXBsZW1lbnRhdGlvbiwgYW5kIGtlZXAgdGhlIGRhdGEgc3RydWN0dXJlcyBhcyBzaW1wbGUgYXMgcG9zc2libGUuCgpUbyBzdGFydCwgd2UgaGF2ZSB0byBkZWZpbmUgc29tZSByZXByZXNlbnRhdGlvbiBvZiB0aGUgZGlza3MgYW5kIHRoZSBzdGFja3MuIFRoZSBkaXNrcyBoYXZlIG9uZSBpbXBvcnRhbnQgcHJvcGVydHksIHdoaWNoIGlzIHRoYXQgdGhleSBhcmUgb3JkZXJlZC4gV2UgY2FuIHVzZSBpbnRlZ2VycyB0byByZXByZXNlbnQgdGhlbS4KIiIiCgojIOKVlOKVkOKVoSA2MjBkNjgzNC1hMmJhLTExZWEtMTUwYS0yMTMyYmI1NGU0YjMKbnVtX2Rpc2tzID0gOAoKIyDilZTilZDilaEgMzVhZGEyMTQtYTMyYy0xMWVhLTBkYTMtZDVkNDk0YjI4NDY3Cm1kIiIiKFNpZGUgbm90ZTogdGhlIG51bWJlciBvZiBkaXNrcyBpcyBhcmJpdHJhcnkuIFdoZW4gdGVzdGluZyB5b3VyIGZ1bmN0aW9uLCB5b3UgbWF5IHdhbnQgdG8gc2V0IGl0IHRvIDEgb3IgMiB0byBzdGFydC4pIiIiCgojIOKVlOKVkOKVoSA3MjQzY2M4ZS1hMmJhLTExZWEtM2YyOS05OTM1NmYwY2RjZjQKYWxsX2Rpc2tzID0gMTpudW1fZGlza3MKCiMg4pWU4pWQ4pWhIDdlMWJhMmFjLWEyYmEtMTFlYS0wMTM0LTJmNjFlZDc1YmUxOAptZCIiIgpBIHNpbmdsZSBzdGFjayBjYW4gYmUgcmVwcmVzZW50ZWQgYXMgYW4gYXJyYXkgd2l0aCBhbGwgdGhlIGRpc2tzIGluIGl0LiBXZSB3aWxsIGxpc3QgdGhlbSBmcm9tIHRvcCB0byBib3R0b20uCiIiIgoKIyDilZTilZDilaEgNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgzCmZpcnN0X3N0YWNrID0gY29sbGVjdChhbGxfZGlza3MpCgojIOKVlOKVkOKVoSBiNjQ4YWI3MC1hMmJhLTExZWEtMmRjYy01NWI2MzBlNDQzMjUKbWQiIiIKTm93IHdlIGhhdmUgdG8gbWFrZSB0aHJlZSBvZiB0aG9zZS4gCiIiIgoKIyDilZTilZDilaEgMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNkCnN0YXJ0aW5nX3N0YWNrcyA9IFtmaXJzdF9zdGFjaywgW10sIFtdXQoKIyDilZTilZDilaEgZTM0N2YxZGUtYTJiYi0xMWVhLTA2ZTctODdjY2E2ZjJhMjQwCm1kIiIiCiMjIERlZmluaW5nIHRoZSBydWxlcwoKTm93IHRoYXQgd2UgaGF2ZSBvdXIgImdhbWUgYm9hcmQiLCB3ZSBjYW4gaW1wbGVtZW50IHRoZSBydWxlcy4KClRvIHN0YXJ0LCB3ZSBtYWtlIHR3byBmdW5jdGlvbnMgZm9yIHN0YXRlcy4gQSBzdGF0ZSBvZiB0aGUgZ2FtZSBpcyBqdXN0IGFuIGFycmF5IG9mIHN0YWNrcy4KCldlIHdpbGwgZGVmaW5lIGEgZnVuY3Rpb24gdGhhdCBjaGVja3MgaWYgYSBzdGF0ZSBpcyBva2F5IGFjY29yZGluZyB0byB0aGUgcnVsZXMuIFRvIGJlIGxlZ2FsLCBhbGwgdGhlIHN0YWNrcyBzaG91bGQgYmUgaW4gdGhlIGNvcnJlY3Qgb3JkZXIsIHNvIG5vIGxhcmdlciBkaXNrcyBvbiB0b3Agb2Ygc21hbGxlciBkaXNrcy4gCgpBbm90aGVyIGdvb2QgdGhpbmcgdG8gY2hlY2s6IG5vIGRpc2tzIHNob3VsZCBoYXZlIGFwcGVhcmVkIG9yIGRpc2FwcGVhcmVkIHNpbmNlIHdlIHN0YXJ0ZWQhCiIiIgoKIyDilZTilZDilaEgNTEyZmE2ZDItYTJiZC0xMWVhLTNkYmUtYjkzNWI1MzY5NjdiCmZ1bmN0aW9uIGlzbGVnYWwoc3RhY2tzKQoJb3JkZXJfY29ycmVjdCA9IGFsbChpc3NvcnRlZCwgc3RhY2tzKQoJCgkjY2hlY2sgaWYgd2UgdXNlIHRoZSBzYW1lIGRpc2sgc2V0IHRoYXQgd2Ugc3RhcnRlZCB3aXRoCgkKCWRpc2tzX2luX3N0YXRlID0gc29ydChbZGlzayBmb3Igc3RhY2sgaW4gc3RhY2tzIGZvciBkaXNrIGluIHN0YWNrXSkKCWRpc2tzX2NvbXBsZXRlID0gZGlza3NfaW5fc3RhdGUgPT0gYWxsX2Rpc2tzCgkKCW9yZGVyX2NvcnJlY3QgJiYgZGlza3NfY29tcGxldGUKZW5kCgojIOKVlOKVkOKVoSBjNTZhNTg1OC1hMmJkLTExZWEtMWQ5Ni03N2VhZjVlNzQ5MjUKbWQiIiIKQW5vdGhlciBmdW5jdGlvbiBmb3Igc3RhdGVzOiBjaGVjayBpZiB3ZSBhcmUgZG9uZSEgV2UgY2FuIGFzc3VtZSB0aGF0IHdlIGFscmVhZHkgY2hlY2tlZCBpZiB0aGUgc3RhdGUgd2FzIGxlZ2FsLiBTbyB3ZSBrbm93IHRoYXQgYWxsIHRoZSBkaXNrcyBhcmUgdGhlcmUgYW5kIHRoZXkgYXJlIG9yZGVyZWQgY29ycmVjdGx5LiAgVG8gY2hlY2sgaWYgd2UgYXJlIGZpbmlzaGVkLCB3ZSBqdXN0IG5lZWQgdG8gY2hlY2sgaWYgdGhlIGxhc3Qgc3RhY2sgY29udGFpbnMgYWxsIHRoZSBkaXNrcy4KIiIiCgojIOKVlOKVkOKVoSBkNWNjNDFlOC1hMmJkLTExZWEtMzljNy1iN2RmOGRlNmFlM2UKZnVuY3Rpb24gaXNjb21wbGV0ZShzdGFja3MpCglsYXN0KHN0YWNrcykgPT0gYWxsX2Rpc2tzCmVuZAoKIyDilZTilZDilaEgNTMzNzRmMGUtYTJjMC0xMWVhLTBjOTEtOTc0NzQ3ODA3MjFlCm1kIiIiCk5vdyB0aGUgb25seSBydWxlcyBsZWZ0IHRvIGltcGxlbWVudCBhcmUgdGhlIHJ1bGVzIGZvciBtb3ZpbmcgZGlza3MuIAoKV2UgY291bGQgaW1wbGVtZW50IHRoaXMgYXMgYW5vdGhlciBjaGVjayBvbiBzdGF0ZXMsIGJ1dCBpdCdzIGVhc2llciB0byBqdXN0IHdyaXRlIGEgbGVnYWwgYG1vdmVgIGZ1bmN0aW9uLiBZb3VyIHNvbHV0aW9uIHdpbGwgc3BlY2lmeSBtb3ZlcyBmb3IgdGhlIGBtb3ZlYCBmdW5jdGlvbiwgc28gdGhpcyB3aWxsIGJlIHRoZSBvbmx5IHdheSB0aGF0IHRoZSBzdGFja3MgYXJlIGFjdHVhbGx5IG1hbmlwdWxhdGVkLiBUaGF0IHdheSwgd2UgYXJlIHN1cmUgdGhhdCBub3RoaW5nIGZpc2h5IGlzIGhhcHBlbmluZy4KCldlIHdpbGwgbWFrZSBvdXIgYG1vdmVgIGZ1bmN0aW9uIHNvIHRoYXQgaXRzIGlucHV0IGNvbnNpc3RzIG9mIGEgc3RhdGUgb2YgdGhlIGdhbWUsIGFuZCBpbnN0cnVjdGlvbnMgZm9yIHdoYXQgdG8gZG8uIEl0cyBvdXRwdXQgd2lsbCBiZSB0aGUgbmV3IHN0YXRlIG9mIHRoZSBnYW1lLgoKU28gd2hhdCBzaG91bGQgdGhvc2UgaW5zdHJ1Y3Rpb25zIGxvb2sgbGlrZT8gSXQgbWF5IHNlZW0gaW50dWl0aXZlIHRvIGdpdmUgYSBfZGlza18gdGhhdCBzaG91bGQgYmUgbW92ZWQsIGJ1dCB0aGF0J3MgbW9yZSB0aGFuIHdlIG5lZWQuIEFmdGVyIGFsbCwgd2UgYXJlIG9ubHkgYWxsb3dlZCB0byB0YWtlIHRoZSB0b3AgZGlzayBmcm9tIG9uZSBzdGFjaywgYW5kIG1vdmUgaXQgdG8gdGhlIHRvcCBvZiBhbm90aGVyLiBTbyB3ZSBvbmx5IGhhdmUgdG8gc2F5IHdoaWNoIF9zdGFja3NfIHdlIGFyZSBtb3ZpbmcgYmV0d2Vlbi4KCihOb3RlIHRoYXQgdGhlIGBtb3ZlYCBmdW5jdGlvbiBpcyBva2F5IHdpdGggbW92aW5nIGEgbGFyZ2VyIGRpc2sgb24gdG9wIG9mIGEgc21hbGxlciBkaXNrLiBXZSBhbHJlYWR5IGltcGxlbWVudGVkIHRoYXQgcmVzdHJpY3Rpb24gaW4gYGlzbGVnYWxgLikKIiIiCgojIOKVlOKVkOKVoSBlOTE1Mzk0ZS1hMmMwLTExZWEtMGNkOS0xZGY2ZmQzYzdhZGYKZnVuY3Rpb24gbW92ZShzdGFja3MsIHNvdXJjZTo6SW50LCB0YXJnZXQ6OkludCkKCSNjaGVjayBpZiB0aGUgZnJvbSBzdGFjayBpZiBub3QgZW1wdHkKCWlmIGlzZW1wdHkoc3RhY2tzW3NvdXJjZV0pCgkJZXJyb3IoIkVycm9yOiBhdHRlbXB0ZWQgdG8gbW92ZSBkaXNrIGZyb20gZW1wdHkgc3RhY2siKQoJZW5kCgkKCW5ld19zdGFja3MgPSBkZWVwY29weShzdGFja3MpCgkKCWRpc2sgPSBwb3BmaXJzdCEobmV3X3N0YWNrc1tzb3VyY2VdKSAjdGFrZSBkaXNrCglwdXNoZmlyc3QhKG5ld19zdGFja3NbdGFyZ2V0XSwgZGlzaykgI3B1dCBvbiBuZXcgc3RhY2sKCQoJcmV0dXJuIG5ld19zdGFja3MKZW5kCgojIOKVlOKVkOKVoSA4N2IyZDE2NC1hMmM0LTExZWEtMzA5NS05MTY2Mjg5NDM4NzkKbWQiIiIKIyMgU29sdmluZyB0aGUgcHJvYmxlbQoKV2UgaGF2ZSBpbXBsZW1lbnRlZCB0aGUgZ2FtZSBwaWVjZXMgYW5kIHRoZSBydWxlcywgc28geW91IGNhbiBzdGFydCB3b3JraW5nIG9uIHlvdXIgc29sdXRpb24uCgpUbyBkbyB0aGlzLCB5b3UgY2FuIGZpbGwgaW4gdGhlIGBzb2x2ZShzdGFja3MpYCBmdW5jdGlvbi4gVGhpcyBmdW5jdGlvbiBzaG91bGQgZ2l2ZSBhIHNvbHV0aW9uIGZvciB0aGUgZ2l2ZW4gYHN0YWNrc2AsIGJ5IG1vdmluZyBhbGwgdGhlIGRpc2tzIGZyb20gc3RhY2sgMSB0byBzdGFjayAzLgoKQXMgb3V0cHV0LCBgc29sdmVgIHNob3VsZCBnaXZlIGEgcmVjaXBlLCB0aGF0IHRlbGxzIHVzIHdoYXQgdG8gZG8uIFRoaXMgcmVjaXBlIHNob3VsZCBiZSBhbiBhcnJheSBvZiBtb3Zlcy4gRWFjaCBtb3ZlcyBpcyBhIGAoc291cmNlLCB0YXJnZXQpYCB0dXBsZSwgc3BlY2lmeWluZyBmcm9tIHdoaWNoIHN0YWNrIHRvIHdoaWNoIHN0YWNrIHlvdSBzaG91bGQgbW92ZS4KCkZvciBleGFtcGxlLCBpdCBtaWdodCBsb29rIGxpa2UgdGhpczoKIiIiCgojIOKVlOKVkOKVoSAyOWI0MTBjYy1hMzI5LTExZWEtMjAyYS03OTViMzFjZTVhZDUKZnVuY3Rpb24gd3Jvbmdfc29sdXRpb24oc3RhY2tzKTo6QXJyYXl7VHVwbGV7SW50LCBJbnR9fQoJcmV0dXJuIFsoMSwyKSwgKDIsMyksICgyLDEpLCAoMSwzKV0KZW5kCgojIOKVlOKVkOKVoSBlYTI0ZTc3OC1hMzJlLTExZWEtM2YxMS1kYmU5ZDM2YjEwMTEKbWQiIiIKTm93IHlvdSBjYW4gd29yayBvbiBidWlsZGluZyBhbiBhY3R1YWwgc29sdXRpb24uIFNvbWUgdGlwczoKKiBgc29sdmUoc3RhY2tzKWAgY2FuIGtlZXAgdHJhY2sgb2YgdGhlIGJvYXJkIGlmIHlvdSB3YW50LCBidXQgaXQgZG9lc24ndCBoYXZlIHRvLgoqIFRoZSBzZWN0aW9uIGJlbG93IHdpbGwgYWN0dWFsbHkgcnVuIHlvdXIgbW92ZXMsIHdoaWNoIGlzIHZlcnkgdXNlZnVsIGZvciBjaGVja2luZyB0aGVtLgoqIElmIHlvdSB3YW50LCB5b3UgY2FuIGNoYW5nZSBgbnVtX2Rpc2tzYCB0byAxIG9yIDIuIFRoYXQgY2FuIGJlIGEgZ29vZCBzdGFydGluZyBwb2ludC4KIiIiCgojIOKVlOKVkOKVoSAwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmYKZnVuY3Rpb24gc29sdmUoc3RhcnQgPSBzdGFydGluZ19zdGFja3MpOjpBcnJheXtUdXBsZXtJbnQsIEludH19CgkKCSN3aGF0IHRvIGRvPwoJCglyZXR1cm4gW10KZW5kCgojIOKVlOKVkOKVoSAzZWIzYzRjMC1hMmM1LTExZWEtMGJjYy1jOWI1MjA5NGY2NjAKbWQiIiIKIyMgQ2hlY2tpbmcgc29sdXRpb25zCgpUaGlzIGlzIHdoZXJlIHdlIGNhbiBjaGVjayBhIHNvbHV0aW9uLiBXZSBzdGFydCB3aXRoIGEgZnVuY3Rpb24gdGhhdCB0YWtlcyBvdXIgcmVjaXBlIGFuZCBydW5zIGl0LgoiIiIKCiMg4pWU4pWQ4pWhIDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZQpmdW5jdGlvbiBydW5fc29sdXRpb24oc29sdmVyOjpGdW5jdGlvbiwgc3RhcnQgPSBzdGFydGluZ19zdGFja3MpCgltb3ZlcyA9IHNvbHZlcihkZWVwY29weShzdGFydCkpICNhcHBseSB0aGUgc29sdmVyCgkKCWFsbF9zdGF0ZXMgPSBBcnJheXtBbnksMX0odW5kZWYsIGxlbmd0aChtb3ZlcykgKyAxKQoJYWxsX3N0YXRlc1sxXSA9IHN0YXJ0CgkKCWZvciAoaSwgbSkgaW4gZW51bWVyYXRlKG1vdmVzKQoJCXRyeQoJCQlhbGxfc3RhdGVzW2kgKyAxXSA9IG1vdmUoYWxsX3N0YXRlc1tpXSwgbVsxXSwgbVsyXSkKCQljYXRjaAoJCQlhbGxfc3RhdGVzW2kgKyAxXSA9IG1pc3NpbmcKCQllbmQKCWVuZAoJCglyZXR1cm4gYWxsX3N0YXRlcwplbmQKCiMg4pWU4pWQ4pWhIDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMQptZCIiIgpZb3UgY2FuIHVzZSB0aGlzIGZ1bmN0aW9uIHRvIHNlZSB3aGF0IHlvdXIgc29sdXRpb24gZG9lcy4KCklmIGBydW5fc29sdXRpb25gIHRyaWVzIHRvIG1ha2UgYW4gaW1wb3NzaWJsZSBtb3ZlLCBpdCB3aWxsIGdpdmUgYG1pc3NpbmdgIGZyb20gdGhhdCBwb2ludCBvbndhcmRzLiBMb29rIGF0IHdoYXQgaGFwcGVucyBpbiB0aGUgYHdyb25nX3NvbHV0aW9uYCB2ZXJzaW9uIGFuZCBjb21wYXJlIGl0IHRvIHRoZSBtb3ZlcyBpbiBgd3Jvbmdfc29sdXRpb25gLgoiIiIKCiMg4pWU4pWQ4pWhIGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MApydW5fc29sdXRpb24od3Jvbmdfc29sdXRpb24pCgojIOKVlOKVkOKVoSA5MTczYjE3NC1hMzI3LTExZWEtM2E2OS05Zjc1MjVmMmU3YjQKcnVuX3NvbHV0aW9uKHNvbHZlKQoKIyDilZTilZDilaEgYmI1MDg4ZWMtYTMzMC0xMWVhLTJjNDEtNmI4YjkyNzI0YjNiCm1kIiIiCk5vdyB0aGF0IHdlIGhhdmUgd2F5IHRvIHJ1biBhIHJlY2lwZSwgd2UgY2FuIGNoZWNrIGlmIGl0cyBvdXRwdXQgaXMgY29ycmVjdC4gV2Ugd2lsbCBjaGVjayBpZiBhbGwgdGhlIGludGVybWVkaWF0ZSBzdGF0ZXMgYXJlIGxlZ2FsIGFuZCB0aGUgZmluYWwgc3RhdGUgaXMgdGhlIGZpbmlzaGVkIHB1enpsZS4KIiIiCgojIOKVlOKVkOKVoSAxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMzgKZnVuY3Rpb24gY2hlY2tfc29sdXRpb24oc29sdmVyOjpGdW5jdGlvbiwgc3RhcnQgPSBzdGFydGluZ19zdGFja3MpCgl0cnkKCQkjcnVuIHRoZSBzb2x1dGlvbgoJCWFsbF9zdGF0ZXMgPSBydW5fc29sdXRpb24oc29sdmVyLCBzdGFydCkKCQkKCQkjY2hlY2sgaWYgZWFjaCBzdGF0ZSBpcyBsZWdhbAoJCWFsbF9sZWdhbCA9IGFsbChpc2xlZ2FsLCBhbGxfc3RhdGVzKQoJCQoJCSNjaGVjayBpZiB0aGUgZmluYWwgc3RhdGUgaXMgaXMgdGhlIGNvbXBsZXRlZCBwdXp6bGUKCQljb21wbGV0ZSA9IChpc2NvbXBsZXRlIOKImCBsYXN0KShhbGxfc3RhdGVzKQoJCQoJCWFsbF9sZWdhbCAmJiBjb21wbGV0ZQoJY2F0Y2gKCQkjcmV0dXJuIGZhbHNlIGlmIHdlIGVuY291bnRlcmVkIGFuIGVycm9yCgkJcmV0dXJuIGZhbHNlCgllbmQKZW5kCgojIOKVlOKVkOKVoSA4ZWE3Zjk0NC1hMzI5LTExZWEtMjJjYy00ZGJkMTFlYzA2MTAKY2hlY2tfc29sdXRpb24oc29sdmUpCgojIOKVlOKVkOKVoSBlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMzgKaWYgY2hlY2tfc29sdXRpb24oc29sdmUpCglpZiBudW1fZGlza3MgPj0gOAoJCW1kIiIiCgkJIyMjIyBDb25ncmF0dWxhdGlvbnMsIHlvdXIgc29sdXRpb24gd29ya3MhIPCfmI4KCQkiIiIKCWVsc2UKCQltZCIiIgoJCVlvdXIgc29sdXRpb24gd29ya3MgZm9yICQobnVtX2Rpc2tzKSBkaXNrcy4gQ2hhbmdlIGBudW1fZGlza3NgIHRvIHNlZSBpZiBpdCB3b3JrcyBmb3IgOCBvciBtb3JlLgoJCSIiIgoJZW5kCmVsc2UKCW1kIiIiCglUaGUgYHNvbHZlYCBmdW5jdGlvbiBkb2Vzbid0IHdvcmsgeWV0LiBLZWVwIHdvcmtpbmcgb24gaXQhCgkiIiIKZW5kCgojIOKVlOKVkOKVoSBDZWxsIG9yZGVyOgojIOKVn+KUgDViMmVlNDBlLWEyYjgtMTFlYS0wZmVmLWMzNWZlNjkxODg2MAojIOKVn+KUgDk1ZmJkMGQyLWEyYjktMTFlYS0wNjgyLWZkZjc4MzI1MTc5NwojIOKVoOKVkDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiMwojIOKVn+KUgDM1YWRhMjE0LWEzMmMtMTFlYS0wZGEzLWQ1ZDQ5NGIyODQ2NwojIOKVoOKVkDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNAojIOKVn+KUgDdlMWJhMmFjLWEyYmEtMTFlYS0wMTM0LTJmNjFlZDc1YmUxOAojIOKVoOKVkDQzNzgxYTUyLWEzMzktMTFlYS0zODAzLWU1NmUyZDA4YWE4MwojIOKVn+KUgGI2NDhhYjcwLWEyYmEtMTFlYS0yZGNjLTU1YjYzMGU0NDMyNQojIOKVoOKVkDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZAojIOKVn+KUgGUzNDdmMWRlLWEyYmItMTFlYS0wNmU3LTg3Y2NhNmYyYTI0MAojIOKVoOKVkDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YgojIOKVn+KUgGM1NmE1ODU4LWEyYmQtMTFlYS0xZDk2LTc3ZWFmNWU3NDkyNQojIOKVoOKVkGQ1Y2M0MWU4LWEyYmQtMTFlYS0zOWM3LWI3ZGY4ZGU2YWUzZQojIOKVn+KUgDUzMzc0ZjBlLWEyYzAtMTFlYS0wYzkxLTk3NDc0NzgwNzIxZQojIOKVoOKVkGU5MTUzOTRlLWEyYzAtMTFlYS0wY2Q5LTFkZjZmZDNjN2FkZgojIOKVn+KUgDg3YjJkMTY0LWEyYzQtMTFlYS0zMDk1LTkxNjYyODk0Mzg3OQojIOKVoOKVkDI5YjQxMGNjLWEzMjktMTFlYS0yMDJhLTc5NWIzMWNlNWFkNQojIOKVn+KUgGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMQojIOKVoOKVkDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZgojIOKVn+KUgDNlYjNjNGMwLWEyYzUtMTFlYS0wYmNjLWM5YjUyMDk0ZjY2MAojIOKVoOKVkDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZQojIOKVn+KUgDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMQojIOKVoOKVkGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MAojIOKVoOKVkDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNAojIOKVn+KUgGJiNTA4OGVjLWEzMzAtMTFlYS0yYzQxLTZiOGI5MjcyNGIzYgojIOKVoOKVkDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOAojIOKVoOKVkDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMAojIOKVn+KUgGU1NGFkZDBhLWEzMzAtMTFlYS0yZWViLTFkNDJmNTUyYmEzOAo=";
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.16.0";
window.pluto_statefile = "data:;base64,jKVib25kc4CsY2VsbF9yZXN1bHRz3gAc2SQ4N2IyZDE2NC1hMmM0LTExZWEtMzA5NS05MTY2Mjg5NDM4NzmIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedoCjzxkaXYgY2xhc3M9Im1hcmtkb3duIj48aDI+U29sdmluZyB0aGUgcHJvYmxlbTwvaDI+CjxwPldlIGhhdmUgaW1wbGVtZW50ZWQgdGhlIGdhbWUgcGllY2VzIGFuZCB0aGUgcnVsZXMsIHNvIHlvdSBjYW4gc3RhcnQgd29ya2luZyBvbiB5b3VyIHNvbHV0aW9uLjwvcD4KPHA+VG8gZG8gdGhpcywgeW91IGNhbiBmaWxsIGluIHRoZSA8Y29kZT5zb2x2ZSYjNDA7c3RhY2tzJiM0MTs8L2NvZGU+IGZ1bmN0aW9uLiBUaGlzIGZ1bmN0aW9uIHNob3VsZCBnaXZlIGEgc29sdXRpb24gZm9yIHRoZSBnaXZlbiA8Y29kZT5zdGFja3M8L2NvZGU+LCBieSBtb3ZpbmcgYWxsIHRoZSBkaXNrcyBmcm9tIHN0YWNrIDEgdG8gc3RhY2sgMy48L3A+CjxwPkFzIG91dHB1dCwgPGNvZGU+c29sdmU8L2NvZGU+IHNob3VsZCBnaXZlIGEgcmVjaXBlLCB0aGF0IHRlbGxzIHVzIHdoYXQgdG8gZG8uIFRoaXMgcmVjaXBlIHNob3VsZCBiZSBhbiBhcnJheSBvZiBtb3Zlcy4gRWFjaCBtb3ZlcyBpcyBhIDxjb2RlPiYjNDA7c291cmNlLCB0YXJnZXQmIzQxOzwvY29kZT4gdHVwbGUsIHNwZWNpZnlpbmcgZnJvbSB3aGljaCBzdGFjayB0byB3aGljaCBzdGFjayB5b3Ugc2hvdWxkIG1vdmUuPC9wPgo8cD5Gb3IgZXhhbXBsZSwgaXQgbWlnaHQgbG9vayBsaWtlIHRoaXM6PC9wPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad6wWtwarHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkODdiMmQxNjQtYTJjNC0xMWVhLTMwOTUtOTE2NjI4OTQzODc5uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNO6KnZXJyb3JlZMLZJGM1NmE1ODU4LWEyYmQtMTFlYS0xZDk2LTc3ZWFmNWU3NDkyNYimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52gE+PGRpdiBjbGFzcz0ibWFya2Rvd24iPjxwPkFub3RoZXIgZnVuY3Rpb24gZm9yIHN0YXRlczogY2hlY2sgaWYgd2UgYXJlIGRvbmUmIzMzOyBXZSBjYW4gYXNzdW1lIHRoYXQgd2UgYWxyZWFkeSBjaGVja2VkIGlmIHRoZSBzdGF0ZSB3YXMgbGVnYWwuIFNvIHdlIGtub3cgdGhhdCBhbGwgdGhlIGRpc2tzIGFyZSB0aGVyZSBhbmQgdGhleSBhcmUgb3JkZXJlZCBjb3JyZWN0bHkuICBUbyBjaGVjayBpZiB3ZSBhcmUgZmluaXNoZWQsIHdlIGp1c3QgbmVlZCB0byBjaGVjayBpZiB0aGUgbGFzdCBzdGFjayBjb250YWlucyBhbGwgdGhlIGRpc2tzLjwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnesFoTc6xyb290YXNzaWduZWXAp2NlbGxfaWTZJGM1NmE1ODU4LWEyYmQtMTFlYS0xZDk2LTc3ZWFmNWU3NDkyNblkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzRXTp2Vycm9yZWTC2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmaIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedknc29sdmUgKGdlbmVyaWMgZnVuY3Rpb24gd2l0aCAyIG1ldGhvZHMpsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3rqDwC+scm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNma5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc2eOqdlcnJvcmVkwtkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4iKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHnZMGNoZWNrX3NvbHV0aW9uIChnZW5lcmljIGZ1bmN0aW9uIHdpdGggMiBtZXRob2RzKbBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqnRleHQvcGxhaW6ybGFzdF9ydW5fdGltZXN0YW1wy0HYad66qGWlrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNrNanZXJyb3JlZMLZJGU5MTUzOTRlLWEyYzAtMTFlYS0wY2Q5LTFkZjZmZDNjN2FkZoimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52SVtb3ZlIChnZW5lcmljIGZ1bmN0aW9uIHdpdGggMSBtZXRob2QpsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3rp7jnqscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SRlOTE1Mzk0ZS1hMmMwLTExZWEtMGNkOS0xZGY2ZmQzYzdhZGa5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc2MTKdlcnJvcmVkwtkkN2UxYmEyYWMtYTJiYS0xMWVhLTAxMzQtMmY2MWVkNzViZTE4iKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHnZkTxkaXYgY2xhc3M9Im1hcmtkb3duIj48cD5BIHNpbmdsZSBzdGFjayBjYW4gYmUgcmVwcmVzZW50ZWQgYXMgYW4gYXJyYXkgd2l0aCBhbGwgdGhlIGRpc2tzIGluIGl0LiBXZSB3aWxsIGxpc3QgdGhlbSBmcm9tIHRvcCB0byBib3R0b20uPC9wPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad6wWeEJrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkN2UxYmEyYWMtYTJiYS0xMWVhLTAxMzQtMmY2MWVkNzViZTE4uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNFJanZXJyb3JlZMLZJGU1NGFkZDBhLWEzMzAtMTFlYS0yZWViLTFkNDJmNTUyYmEzOIimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52XE8ZGl2IGNsYXNzPSJtYXJrZG93biI+PHA+VGhlIDxjb2RlPnNvbHZlPC9jb2RlPiBmdW5jdGlvbiBkb2VzbiYjMzk7dCB3b3JrIHlldC4gS2VlcCB3b3JraW5nIG9uIGl0JiMzMzs8L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3rrKTGascm9vdGFzc2lnbmVlwKdjZWxsX2lk2SRlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMzi5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AAXxpp2Vycm9yZWTC2SRiYjUwODhlYy1hMzMwLTExZWEtMmM0MS02YjhiOTI3MjRiM2KIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kednTPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxwPk5vdyB0aGF0IHdlIGhhdmUgd2F5IHRvIHJ1biBhIHJlY2lwZSwgd2UgY2FuIGNoZWNrIGlmIGl0cyBvdXRwdXQgaXMgY29ycmVjdC4gV2Ugd2lsbCBjaGVjayBpZiBhbGwgdGhlIGludGVybWVkaWF0ZSBzdGF0ZXMgYXJlIGxlZ2FsIGFuZCB0aGUgZmluYWwgc3RhdGUgaXMgdGhlIGZpbmlzaGVkIHB1enpsZS48L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3rBbIgOscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SRiYjUwODhlYy1hMzMwLTExZWEtMmM0MS02YjhiOTI3MjRiM2K5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc0TaadlcnJvcmVkwtkkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgziKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHmFpnByZWZpeKVJbnQ2NKhlbGVtZW50c5iSAZKhMap0ZXh0L3BsYWlukgKSoTKqdGV4dC9wbGFpbpIDkqEzqnRleHQvcGxhaW6SBJKhNKp0ZXh0L3BsYWlukgWSoTWqdGV4dC9wbGFpbpIGkqE2qnRleHQvcGxhaW6SB5KhN6p0ZXh0L3BsYWlukgiSoTiqdGV4dC9wbGFpbqR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwN2QzMzBkZTA2OWE3NGNlNLBwZXJzaXN0X2pzX3N0YXRlwqRtaW1l2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SybGFzdF9ydW5fdGltZXN0YW1wy0HYad66L6LXrHJvb3Rhc3NpZ25lZatmaXJzdF9zdGFja6djZWxsX2lk2SQ0Mzc4MWE1Mi1hMzM5LTExZWEtMzgwMy1lNTZlMmQwOGFhODO5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc0SyKdlcnJvcmVkwtkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNkiKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHmFpnByZWZpeKtWZWN0b3J7QW55fahlbGVtZW50c5OSAZKFpnByZWZpeKNBbnmoZWxlbWVudHOYkgGSoTGqdGV4dC9wbGFpbpICkqEyqnRleHQvcGxhaW6SA5KhM6p0ZXh0L3BsYWlukgSSoTSqdGV4dC9wbGFpbpIFkqE1qnRleHQvcGxhaW6SBpKhNqp0ZXh0L3BsYWlukgeSoTeqdGV4dC9wbGFpbpIIkqE4qnRleHQvcGxhaW6kdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDViYjc2YTFiMjVkODM2NGXZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJICkoWmcHJlZml4o0FueahlbGVtZW50c5CkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDgwYzAwZDVkZWY5MjgxYWLZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJIDkoWmcHJlZml4o0FueahlbGVtZW50c5CkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDY1OWUwNmM3Yjk0ZTcyYzfZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdKR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwZDJjZmNkNmI5ODgxN2FhMbBwZXJzaXN0X2pzX3N0YXRlwqRtaW1l2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SybGFzdF9ydW5fdGltZXN0YW1wy0HYad66W2VerHJvb3Rhc3NpZ25lZa9zdGFydGluZ19zdGFja3OnY2VsbF9pZNkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNkuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNG++nZXJyb3JlZMLZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZYimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52S5ydW5fc29sdXRpb24gKGdlbmVyaWMgZnVuY3Rpb24gd2l0aCAyIG1ldGhvZHMpsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3rqIzHGscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2W5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AAQmWp2Vycm9yZWTC2SQ1MzM3NGYwZS1hMmMwLTExZWEtMGM5MS05NzQ3NDc4MDcyMWWIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedoEXjxkaXYgY2xhc3M9Im1hcmtkb3duIj48cD5Ob3cgdGhlIG9ubHkgcnVsZXMgbGVmdCB0byBpbXBsZW1lbnQgYXJlIHRoZSBydWxlcyBmb3IgbW92aW5nIGRpc2tzLiA8L3A+CjxwPldlIGNvdWxkIGltcGxlbWVudCB0aGlzIGFzIGFub3RoZXIgY2hlY2sgb24gc3RhdGVzLCBidXQgaXQmIzM5O3MgZWFzaWVyIHRvIGp1c3Qgd3JpdGUgYSBsZWdhbCA8Y29kZT5tb3ZlPC9jb2RlPiBmdW5jdGlvbi4gWW91ciBzb2x1dGlvbiB3aWxsIHNwZWNpZnkgbW92ZXMgZm9yIHRoZSA8Y29kZT5tb3ZlPC9jb2RlPiBmdW5jdGlvbiwgc28gdGhpcyB3aWxsIGJlIHRoZSBvbmx5IHdheSB0aGF0IHRoZSBzdGFja3MgYXJlIGFjdHVhbGx5IG1hbmlwdWxhdGVkLiBUaGF0IHdheSwgd2UgYXJlIHN1cmUgdGhhdCBub3RoaW5nIGZpc2h5IGlzIGhhcHBlbmluZy48L3A+CjxwPldlIHdpbGwgbWFrZSBvdXIgPGNvZGU+bW92ZTwvY29kZT4gZnVuY3Rpb24gc28gdGhhdCBpdHMgaW5wdXQgY29uc2lzdHMgb2YgYSBzdGF0ZSBvZiB0aGUgZ2FtZSwgYW5kIGluc3RydWN0aW9ucyBmb3Igd2hhdCB0byBkby4gSXRzIG91dHB1dCB3aWxsIGJlIHRoZSBuZXcgc3RhdGUgb2YgdGhlIGdhbWUuPC9wPgo8cD5TbyB3aGF0IHNob3VsZCB0aG9zZSBpbnN0cnVjdGlvbnMgbG9vayBsaWtlPyBJdCBtYXkgc2VlbSBpbnR1aXRpdmUgdG8gZ2l2ZSBhIDxlbT5kaXNrPC9lbT4gdGhhdCBzaG91bGQgYmUgbW92ZWQsIGJ1dCB0aGF0JiMzOTtzIG1vcmUgdGhhbiB3ZSBuZWVkLiBBZnRlciBhbGwsIHdlIGFyZSBvbmx5IGFsbG93ZWQgdG8gdGFrZSB0aGUgdG9wIGRpc2sgZnJvbSBvbmUgc3RhY2ssIGFuZCBtb3ZlIGl0IHRvIHRoZSB0b3Agb2YgYW5vdGhlci4gU28gd2Ugb25seSBoYXZlIHRvIHNheSB3aGljaCA8ZW0+c3RhY2tzPC9lbT4gd2UgYXJlIG1vdmluZyBiZXR3ZWVuLjwvcD4KPHA+JiM0MDtOb3RlIHRoYXQgdGhlIDxjb2RlPm1vdmU8L2NvZGU+IGZ1bmN0aW9uIGlzIG9rYXkgd2l0aCBtb3ZpbmcgYSBsYXJnZXIgZGlzayBvbiB0b3Agb2YgYSBzbWFsbGVyIGRpc2suIFdlIGFscmVhZHkgaW1wbGVtZW50ZWQgdGhhdCByZXN0cmljdGlvbiBpbiA8Y29kZT5pc2xlZ2FsPC9jb2RlPi4mIzQxOzwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnesFrCpKxyb290YXNzaWduZWXAp2NlbGxfaWTZJDUzMzc0ZjBlLWEyYzAtMTFlYS0wYzkxLTk3NDc0NzgwNzIxZblkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzTrFp2Vycm9yZWTC2SRiNjQ4YWI3MC1hMmJhLTExZWEtMmRjYy01NWI2MzBlNDQzMjWIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedlIPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxwPk5vdyB3ZSBoYXZlIHRvIG1ha2UgdGhyZWUgb2YgdGhvc2UuIDwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnesFnwjaxyb290YXNzaWduZWXAp2NlbGxfaWTZJGI2NDhhYjcwLWEyYmEtMTFlYS0yZGNjLTU1YjYzMGU0NDMyNblkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzRkHp2Vycm9yZWTC2SQ5NWZiZDBkMi1hMmI5LTExZWEtMDY4Mi1mZGY3ODMyNTE3OTeIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedoCizxkaXYgY2xhc3M9Im1hcmtkb3duIj48aDI+U2V0dGluZyB1cCB0aGUgZ2FtZSBwaWVjZXM8L2gyPgo8cD5XaGF0IGRvZXMgYSBKdWxpYSBpbXBsZW1lbnRhdGlvbiBsb29rIGxpa2U/IFdlJiMzOTtyZSBub3QgcmVhbGx5IGludGVyZXN0ZWQgaW4gd3JpdGluZyBjb2RlIHRoYXQgd2lsbCBtYW5pcHVsYXRlIHBoeXNpY2FsIGRpc2tzLiBPdXIgZmluYWwgZ29hbCBpcyBhIGZ1bmN0aW9uIHRoYXQgd2lsbCBnaXZlIHVzIGEgPGVtPnJlY2lwZTwvZW0+IHRvIHNvbHZlIHRoZSB0b3dlciBvZiBoYW5vaSwgd2hpY2ggaXMganVzdCBhIGxpc3Qgb2YgbW92ZXMgdG8gbWFrZS4gQmVjYXVzZSBvZiB0aGF0LCB3ZSBjYW4gdXNlIGEgbG90IG9mIGFic3RyYWN0aW9uIGluIG91ciBpbXBsZW1lbnRhdGlvbiwgYW5kIGtlZXAgdGhlIGRhdGEgc3RydWN0dXJlcyBhcyBzaW1wbGUgYXMgcG9zc2libGUuPC9wPgo8cD5UbyBzdGFydCwgd2UgaGF2ZSB0byBkZWZpbmUgc29tZSByZXByZXNlbnRhdGlvbiBvZiB0aGUgZGlza3MgYW5kIHRoZSBzdGFja3MuIFRoZSBkaXNrcyBoYXZlIG9uZSBpbXBvcnRhbnQgcHJvcGVydHksIHdoaWNoIGlzIHRoYXQgdGhleSBhcmUgb3JkZXJlZC4gV2UgY2FuIHVzZSBpbnRlZ2VycyB0byByZXByZXNlbnQgdGhlbS48L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3rBZvAqscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ5NWZiZDBkMi1hMmI5LTExZWEtMDY4Mi1mZGY3ODMyNTE3OTe5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AFe+qp2Vycm9yZWTC2SQ3MjQzY2M4ZS1hMmJhLTExZWEtM2YyOS05OTM1NmYwY2RjZjSIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9keaMxOjiwcGVyc2lzdF9qc19zdGF0ZcKkbWltZap0ZXh0L3BsYWlusmxhc3RfcnVuX3RpbWVzdGFtcMtB2GneufpTtaxyb290YXNzaWduZWWpYWxsX2Rpc2tzp2NlbGxfaWTZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzLWnZXJyb3JlZMLZJDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YoimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52Shpc2xlZ2FsIChnZW5lcmljIGZ1bmN0aW9uIHdpdGggMSBtZXRob2QpsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3rpx6Y6scm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ1MTJmYTZkMi1hMmJkLTExZWEtM2RiZS1iOTM1YjUzNjk2N2K5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc3ctadlcnJvcmVkwtkkM2ViM2M0YzAtYTJjNS0xMWVhLTBiY2MtYzliNTIwOTRmNjYwiKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHnZojxkaXYgY2xhc3M9Im1hcmtkb3duIj48aDI+Q2hlY2tpbmcgc29sdXRpb25zPC9oMj4KPHA+VGhpcyBpcyB3aGVyZSB3ZSBjYW4gY2hlY2sgYSBzb2x1dGlvbi4gV2Ugc3RhcnQgd2l0aCBhIGZ1bmN0aW9uIHRoYXQgdGFrZXMgb3VyIHJlY2lwZSBhbmQgcnVucyBpdC48L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3rBbAbiscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQzZWIzYzRjMC1hMmM1LTExZWEtMGJjYy1jOWI1MjA5NGY2NjC5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc0aDqdlcnJvcmVkwtkkZTM0N2YxZGUtYTJiYi0xMWVhLTA2ZTctODdjY2E2ZjJhMjQwiKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHnaAhM8ZGl2IGNsYXNzPSJtYXJrZG93biI+PGgyPkRlZmluaW5nIHRoZSBydWxlczwvaDI+CjxwPk5vdyB0aGF0IHdlIGhhdmUgb3VyICZxdW90O2dhbWUgYm9hcmQmcXVvdDssIHdlIGNhbiBpbXBsZW1lbnQgdGhlIHJ1bGVzLjwvcD4KPHA+VG8gc3RhcnQsIHdlIG1ha2UgdHdvIGZ1bmN0aW9ucyBmb3Igc3RhdGVzLiBBIHN0YXRlIG9mIHRoZSBnYW1lIGlzIGp1c3QgYW4gYXJyYXkgb2Ygc3RhY2tzLjwvcD4KPHA+V2Ugd2lsbCBkZWZpbmUgYSBmdW5jdGlvbiB0aGF0IGNoZWNrcyBpZiBhIHN0YXRlIGlzIG9rYXkgYWNjb3JkaW5nIHRvIHRoZSBydWxlcy4gVG8gYmUgbGVnYWwsIGFsbCB0aGUgc3RhY2tzIHNob3VsZCBiZSBpbiB0aGUgY29ycmVjdCBvcmRlciwgc28gbm8gbGFyZ2VyIGRpc2tzIG9uIHRvcCBvZiBzbWFsbGVyIGRpc2tzLiA8L3A+CjxwPkFub3RoZXIgZ29vZCB0aGluZyB0byBjaGVjazogbm8gZGlza3Mgc2hvdWxkIGhhdmUgYXBwZWFyZWQgb3IgZGlzYXBwZWFyZWQgc2luY2Ugd2Ugc3RhcnRlZCYjMzM7PC9wPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad6wWgMZrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkZTM0N2YxZGUtYTJiYi0xMWVhLTA2ZTctODdjY2E2ZjJhMjQwuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNIAGnZXJyb3JlZMLZJDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiM4imcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R5oTiwcGVyc2lzdF9qc19zdGF0ZcKkbWltZap0ZXh0L3BsYWlusmxhc3RfcnVuX3RpbWVzdGFtcMtB2GneueViu6xyb290YXNzaWduZWWpbnVtX2Rpc2tzp2NlbGxfaWTZJDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiM7lkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzLunZXJyb3JlZMLZJGQ1Y2M0MWU4LWEyYmQtMTFlYS0zOWM3LWI3ZGY4ZGU2YWUzZYimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52Stpc2NvbXBsZXRlIChnZW5lcmljIGZ1bmN0aW9uIHdpdGggMSBtZXRob2QpsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3rp4OOuscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SRkNWNjNDFlOC1hMmJkLTExZWEtMzljNy1iN2RmOGRlNmFlM2W5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc1kR6dlcnJvcmVkwtkkMjliNDEwY2MtYTMyOS0xMWVhLTIwMmEtNzk1YjMxY2U1YWQ1iKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHnZL3dyb25nX3NvbHV0aW9uIChnZW5lcmljIGZ1bmN0aW9uIHdpdGggMSBtZXRob2QpsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3rp/bVWscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQyOWI0MTBjYy1hMzI5LTExZWEtMjAyYS03OTViMzFjZTVhZDW5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc2EKadlcnJvcmVkwtkkOGVhN2Y5NDQtYTMyOS0xMWVhLTIyY2MtNGRiZDExZWMwNjEwiKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHmlZmFsc2WwcGVyc2lzdF9qc19zdGF0ZcKkbWltZap0ZXh0L3BsYWlusmxhc3RfcnVuX3RpbWVzdGFtcMtB2Gneur2Kh6xyb290YXNzaWduZWXAp2NlbGxfaWTZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgn5MZ6nZXJyb3JlZMLZJDViMmVlNDBlLWEyYjgtMTFlYS0wZmVmLWMzNWZlNjkxODg2MIimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52gOxPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxoMT5UaGUgdG93ZXIgb2YgSGFub2k8L2gxPgo8cD5UaGUgdG93ZXIgb2YgaGFub2kgaXMgYSBmYW1vdXMgcHV6emxlLjwvcD4KPHA+PGltZyBzcmM9Imh0dHBzOi8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvMC8wNy9Ub3dlcl9vZl9IYW5vaS5qcGVnIiBhbHQ9InNldHVwIG9mIHRoZSB0b3dlciBvZiBhIGhhbm9pIiAvPjwvcD4KPHA+VGhlIGdhbWUgY29uc2lzdHMgb2YgdGhyZWUgcm9kcyB3aXRoIGRpc2tzIHN0YWNrZWQgb24gdG9wIG9mIHRoZW0uIFRoZSBwdXp6bGUgd2lsbCBzdGFydCB3aXRoIGFsbCBkaXNrcyBpbiBhIHN0YWNrIG9uIG9uZSBvZiB0aGUgcm9kcyAmIzQwO2xpa2UgaW4gdGhlIHBpY3R1cmUmIzQxOy4gVGhlIGdvYWwgaXMgdG8gbW92ZSBhbGwgdGhlIGRpc2NzIHRvIGEgc2luZ2xlIHN0YWNrIG9uIHRoZSBsYXN0IHJvZC48L3A+CjxwPlRvIG1vdmUgdGhlIGRpc2tzLCB5b3UgaGF2ZSB0byBmb2xsb3cgdGhlIGZvbGxvd2luZyBydWxlczo8L3A+Cjx1bD4KPGxpPjxwPllvdSBjYW4gbW92ZSBvbmx5IG9uZSBkaXNrIGF0IGEgdGltZS48L3A+CjwvbGk+CjxsaT48cD5Gb3IgZWFjaCBtb3ZlLCB5b3UgaGF2ZSB0byB0YWtlIHRoZSB1cHBlciBkaXNrIGZyb20gb25lIG9mIHRoZSBzdGFja3MsIGFuZCBwbGFjZSBpdCBvbiB0b3Agb2YgYW5vdGhlciBzdGFjayBvciBlbXB0eSByb2QuPC9wPgo8L2xpPgo8bGk+PHA+WW91IGNhbm5vdCBwbGFjZSBhIGxhcmdlciBkaXNrIG9uIHRvcCBvZiBhIHNtYWxsZXIgZGlzay48L3A+CjwvbGk+CjwvdWw+CjxwPlRoaXMgbm90ZWJvb2sgd2lsbCBkZWZpbmUgYSBKdWxpYSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgcHV6emxlLiBJdCYjMzk7cyB1cCB0byB5b3UgdG8gd3JpdGUgYW4gYWxnb3JpdGhtIHRoYXQgc29sdmVzIGl0LjwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnesFbjvaxyb290YXNzaWduZWXAp2NlbGxfaWTZJDViMmVlNDBlLWEyYjgtMTFlYS0wZmVmLWMzNWZlNjkxODg2MLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgAqEZSnZXJyb3JlZMLZJDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMYimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52gFaPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxwPllvdSBjYW4gdXNlIHRoaXMgZnVuY3Rpb24gdG8gc2VlIHdoYXQgeW91ciBzb2x1dGlvbiBkb2VzLjwvcD4KPHA+SWYgPGNvZGU+cnVuX3NvbHV0aW9uPC9jb2RlPiB0cmllcyB0byBtYWtlIGFuIGltcG9zc2libGUgbW92ZSwgaXQgd2lsbCBnaXZlIDxjb2RlPm1pc3Npbmc8L2NvZGU+IGZyb20gdGhhdCBwb2ludCBvbndhcmRzLiBMb29rIGF0IHdoYXQgaGFwcGVucyBpbiB0aGUgPGNvZGU+d3Jvbmdfc29sdXRpb248L2NvZGU+IHZlcnNpb24gYW5kIGNvbXBhcmUgaXQgdG8gdGhlIG1vdmVzIGluIDxjb2RlPndyb25nX3NvbHV0aW9uPC9jb2RlPi48L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3rBbEvmscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQzNzI4MjRiNC1hMzMwLTExZWEtMmYyNi03YjlhMWFkMDE4ZjG5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc0rCqdlcnJvcmVkwtkkOTE3M2IxNzQtYTMyNy0xMWVhLTNhNjktOWY3NTI1ZjJlN2I0iKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHmFpnByZWZpeKNBbnmoZWxlbWVudHORkgGShaZwcmVmaXirVmVjdG9ye0FueX2oZWxlbWVudHOTkgGShaZwcmVmaXijQW55qGVsZW1lbnRzl5IBkqExqnRleHQvcGxhaW6SApKhMqp0ZXh0L3BsYWlukgOSoTOqdGV4dC9wbGFpbpIEkqE0qnRleHQvcGxhaW6SBZKhNap0ZXh0L3BsYWlupG1vcmWSCJKhOKp0ZXh0L3BsYWlupHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLA1YmI3NmExYjI1ZDgzNjRl2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SSApKFpnByZWZpeKNBbnmoZWxlbWVudHOQpHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLA4MGMwMGQ1ZGVmOTI4MWFi2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SSA5KFpnByZWZpeKNBbnmoZWxlbWVudHOQpHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLA2NTllMDZjN2I5NGU3MmM32SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksGQyY2ZjZDZiOTg4MTdhYTHZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdKR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwNzYxMWViMmQ4NmMyYTFjMbBwZXJzaXN0X2pzX3N0YXRlwqRtaW1l2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SybGFzdF9ydW5fdGltZXN0YW1wy0HYad66pLTlrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkOTE3M2IxNzQtYTMyNy0xMWVhLTNhNjktOWY3NTI1ZjJlN2I0uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOA7mMhKdlcnJvcmVkwtkkZWEyNGU3NzgtYTMyZS0xMWVhLTNmMTEtZGJlOWQzNmIxMDExiKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHnaAb48ZGl2IGNsYXNzPSJtYXJrZG93biI+PHA+Tm93IHlvdSBjYW4gd29yayBvbiBidWlsZGluZyBhbiBhY3R1YWwgc29sdXRpb24uIFNvbWUgdGlwczo8L3A+Cjx1bD4KPGxpPjxwPjxjb2RlPnNvbHZlJiM0MDtzdGFja3MmIzQxOzwvY29kZT4gY2FuIGtlZXAgdHJhY2sgb2YgdGhlIGJvYXJkIGlmIHlvdSB3YW50LCBidXQgaXQgZG9lc24mIzM5O3QgaGF2ZSB0by48L3A+CjwvbGk+CjxsaT48cD5UaGUgc2VjdGlvbiBiZWxvdyB3aWxsIGFjdHVhbGx5IHJ1biB5b3VyIG1vdmVzLCB3aGljaCBpcyB2ZXJ5IHVzZWZ1bCBmb3IgY2hlY2tpbmcgdGhlbS48L3A+CjwvbGk+CjxsaT48cD5JZiB5b3Ugd2FudCwgeW91IGNhbiBjaGFuZ2UgPGNvZGU+bnVtX2Rpc2tzPC9jb2RlPiB0byAxIG9yIDIuIFRoYXQgY2FuIGJlIGEgZ29vZCBzdGFydGluZyBwb2ludC48L3A+CjwvbGk+CjwvdWw+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3rBa8eWscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SRlYTI0ZTc3OC1hMzJlLTExZWEtM2YxMS1kYmU5ZDM2YjEwMTG5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc06xKdlcnJvcmVkwtkkMzVhZGEyMTQtYTMyYy0xMWVhLTBkYTMtZDVkNDk0YjI4NDY3iKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHnZoTxkaXYgY2xhc3M9Im1hcmtkb3duIj48cD4mIzQwO1NpZGUgbm90ZTogdGhlIG51bWJlciBvZiBkaXNrcyBpcyBhcmJpdHJhcnkuIFdoZW4gdGVzdGluZyB5b3VyIGZ1bmN0aW9uLCB5b3UgbWF5IHdhbnQgdG8gc2V0IGl0IHRvIDEgb3IgMiB0byBzdGFydC4mIzQxOzwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnesFnRkaxyb290YXNzaWduZWXAp2NlbGxfaWTZJDM1YWRhMjE0LWEzMmMtMTFlYS0wZGEzLWQ1ZDQ5NGIyODQ2N7lkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzS63p2Vycm9yZWTC2SRkMjIyN2I0MC1hMzI5LTExZWEtMTA1Yy1iNTg1ZDVmY2Y5NzCIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9keYWmcHJlZml4o0FueahlbGVtZW50c5WSAZKFpnByZWZpeKtWZWN0b3J7QW55fahlbGVtZW50c5OSAZKFpnByZWZpeKNBbnmoZWxlbWVudHOXkgGSoTGqdGV4dC9wbGFpbpICkqEyqnRleHQvcGxhaW6SA5KhM6p0ZXh0L3BsYWlukgSSoTSqdGV4dC9wbGFpbpIFkqE1qnRleHQvcGxhaW6kbW9yZZIIkqE4qnRleHQvcGxhaW6kdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDViYjc2YTFiMjVkODM2NGXZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJICkoWmcHJlZml4o0FueahlbGVtZW50c5CkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDgwYzAwZDVkZWY5MjgxYWLZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJIDkoWmcHJlZml4o0FueahlbGVtZW50c5CkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDY1OWUwNmM3Yjk0ZTcyYzfZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdKR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwZDJjZmNkNmI5ODgxN2FhMdkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0kgKShaZwcmVmaXirVmVjdG9ye0FueX2oZWxlbWVudHOTkgGShaZwcmVmaXijQW55qGVsZW1lbnRzl5IBkqEyqnRleHQvcGxhaW6SApKhM6p0ZXh0L3BsYWlukgOSoTSqdGV4dC9wbGFpbpIEkqE1qnRleHQvcGxhaW6SBZKhNqp0ZXh0L3BsYWlukgaSoTeqdGV4dC9wbGFpbpIHkqE4qnRleHQvcGxhaW6kdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDVlYzE4ODEyMmNhNTQ0YzjZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJICkoWmcHJlZml4o0FueahlbGVtZW50c5GSAZKhMap0ZXh0L3BsYWlupHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLA1OTYzYjgzMDIyNzE1ZmE42SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SSA5KFpnByZWZpeKNBbnmoZWxlbWVudHOQpHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLBkMDA4MWQ4ZTBmYmEyOWYy2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksGI5ZTkyNjcwNjgyNTVhZGLZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJIDkoWmcHJlZml4q1ZlY3RvcntBbnl9qGVsZW1lbnRzk5IBkoWmcHJlZml4o0FueahlbGVtZW50c5eSAZKhMqp0ZXh0L3BsYWlukgKSoTOqdGV4dC9wbGFpbpIDkqE0qnRleHQvcGxhaW6SBJKhNap0ZXh0L3BsYWlukgWSoTaqdGV4dC9wbGFpbpIGkqE3qnRleHQvcGxhaW6SB5KhOKp0ZXh0L3BsYWlupHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLAyZTQzYTc4MGNiYTk3ZmYy2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SSApKFpnByZWZpeKNBbnmoZWxlbWVudHOQpHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLBmY2IzZDZjZjY5OTk2Mzc02SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SSA5KFpnByZWZpeKNBbnmoZWxlbWVudHORkgGSoTGqdGV4dC9wbGFpbqR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwNmQ1MDNhYzhjYTQ5YTMyMdkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0pHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLAxZWM2OGRhMzMxZTJiZDQz2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SSBJKnbWlzc2luZ6p0ZXh0L3BsYWlukgWSp21pc3NpbmeqdGV4dC9wbGFpbqR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwMjkzMjBlOWE0MGIwOWVhMbBwZXJzaXN0X2pzX3N0YXRlwqRtaW1l2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SybGFzdF9ydW5fdGltZXN0YW1wy0HYad66nOSorHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkZDIyMjdiNDAtYTMyOS0xMWVhLTEwNWMtYjU4NWQ1ZmNmOTcwuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOA/xrw6dlcnJvcmVkwrFjZWxsX2RlcGVuZGVuY2llc94AHNkkODdiMmQxNjQtYTJjNC0xMWVhLTMwOTUtOTE2NjI4OTQzODc5hLRwcmVjZWRlbmNlX2hldXJpc3RpYwinY2VsbF9pZNkkODdiMmQxNjQtYTJjNC0xMWVhLTMwOTUtOTE2NjI4OTQzODc5tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kNkkYzU2YTU4NTgtYTJiZC0xMWVhLTFkOTYtNzdlYWY1ZTc0OTI1hLRwcmVjZWRlbmNlX2hldXJpc3RpYwinY2VsbF9pZNkkYzU2YTU4NTgtYTJiZC0xMWVhLTFkOTYtNzdlYWY1ZTc0OTI1tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kNkkMDEwZGJkYmMtYTJjNS0xMWVhLTM0YzMtODM3ZWFlMTc0MTZmhLRwcmVjZWRlbmNlX2hldXJpc3RpYwinY2VsbF9pZNkkMDEwZGJkYmMtYTJjNS0xMWVhLTM0YzMtODM3ZWFlMTc0MTZmtGRvd25zdHJlYW1fY2VsbHNfbWFwgaVzb2x2ZZPZJDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNNkkOGVhN2Y5NDQtYTMyOS0xMWVhLTIyY2MtNGRiZDExZWMwNjEw2SRlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMziydXBzdHJlYW1fY2VsbHNfbWFwhKVUdXBsZZCjSW50kKVBcnJheZCvc3RhcnRpbmdfc3RhY2tzkdkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNk2SQxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMziEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SQxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMzi0ZG93bnN0cmVhbV9jZWxsc19tYXCBrmNoZWNrX3NvbHV0aW9uktkkOGVhN2Y5NDQtYTMyOS0xMWVhLTIyY2MtNGRiZDExZWMwNjEw2SRlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMziydXBzdHJlYW1fY2VsbHNfbWFwiKNhbGyQo+KImJCnaXNsZWdhbJHZJDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3Yqppc2NvbXBsZXRlkdkkZDVjYzQxZTgtYTJiZC0xMWVhLTM5YzctYjdkZjhkZTZhZTNlrHJ1bl9zb2x1dGlvbpHZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZaRsYXN0kKhGdW5jdGlvbpCvc3RhcnRpbmdfc3RhY2tzkdkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNk2SRlOTE1Mzk0ZS1hMmMwLTExZWEtMGNkOS0xZGY2ZmQzYzdhZGaEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SRlOTE1Mzk0ZS1hMmMwLTExZWEtMGNkOS0xZGY2ZmQzYzdhZGa0ZG93bnN0cmVhbV9jZWxsc19tYXCBpG1vdmWR2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2WydXBzdHJlYW1fY2VsbHNfbWFwhqpwdXNoZmlyc3QhkKhkZWVwY29weZClZXJyb3KQo0ludJCnaXNlbXB0eZCpcG9wZmlyc3QhkNkkN2UxYmEyYWMtYTJiYS0xMWVhLTAxMzQtMmY2MWVkNzViZTE4hLRwcmVjZWRlbmNlX2hldXJpc3RpYwinY2VsbF9pZNkkN2UxYmEyYWMtYTJiYS0xMWVhLTAxMzQtMmY2MWVkNzViZTE4tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kNkkZTU0YWRkMGEtYTMzMC0xMWVhLTJlZWItMWQ0MmY1NTJiYTM4hLRwcmVjZWRlbmNlX2hldXJpc3RpYwinY2VsbF9pZNkkZTU0YWRkMGEtYTMzMC0xMWVhLTJlZWItMWQ0MmY1NTJiYTM4tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCGp0BtZF9zdHKQqW51bV9kaXNrc5HZJDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiM6I+PZCuY2hlY2tfc29sdXRpb26R2SQxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMzilc29sdmWR2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmaoZ2V0aW5kZXiQ2SRiYjUwODhlYy1hMzMwLTExZWEtMmM0MS02YjhiOTI3MjRiM2KEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SRiYjUwODhlYy1hMzMwLTExZWEtMmM0MS02YjhiOTI3MjRiM2K0ZG93bnN0cmVhbV9jZWxsc19tYXCAsnVwc3RyZWFtX2NlbGxzX21hcIKnQG1kX3N0cpCoZ2V0aW5kZXiQ2SQ0Mzc4MWE1Mi1hMzM5LTExZWEtMzgwMy1lNTZlMmQwOGFhODOEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SQ0Mzc4MWE1Mi1hMzM5LTExZWEtMzgwMy1lNTZlMmQwOGFhODO0ZG93bnN0cmVhbV9jZWxsc19tYXCBq2ZpcnN0X3N0YWNrkdkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNksnVwc3RyZWFtX2NlbGxzX21hcIKnY29sbGVjdJCpYWxsX2Rpc2tzkdkkNzI0M2NjOGUtYTJiYS0xMWVhLTNmMjktOTkzNTZmMGNkY2Y02SQzMmYyNmY4MC1hMmJiLTExZWEtMGYyYS0zZmM2MzFhZGE2M2SEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SQzMmYyNmY4MC1hMmJiLTExZWEtMGYyYS0zZmM2MzFhZGE2M2S0ZG93bnN0cmVhbV9jZWxsc19tYXCBr3N0YXJ0aW5nX3N0YWNrc5PZJDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZtkkNDcwOWRiMzYtYTMyNy0xMWVhLTEzYTMtYmJmYjE4ZGE4NGNl2SQxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMziydXBzdHJlYW1fY2VsbHNfbWFwgatmaXJzdF9zdGFja5HZJDQzNzgxYTUyLWEzMzktMTFlYS0zODAzLWU1NmUyZDA4YWE4M9kkNDcwOWRiMzYtYTMyNy0xMWVhLTEzYTMtYmJmYjE4ZGE4NGNlhLRwcmVjZWRlbmNlX2hldXJpc3RpYwinY2VsbF9pZNkkNDcwOWRiMzYtYTMyNy0xMWVhLTEzYTMtYmJmYjE4ZGE4NGNltGRvd25zdHJlYW1fY2VsbHNfbWFwgaxydW5fc29sdXRpb26T2SRkMjIyN2I0MC1hMzI5LTExZWEtMTA1Yy1iNTg1ZDVmY2Y5NzDZJDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNNkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4snVwc3RyZWFtX2NlbGxzX21hcIunbWlzc2luZ5CjQW55kKhGdW5jdGlvbpCmbGVuZ3RokKllbnVtZXJhdGWQqGRlZXBjb3B5kKErkKV1bmRlZpClQXJyYXmQpG1vdmWR2SRlOTE1Mzk0ZS1hMmMwLTExZWEtMGNkOS0xZGY2ZmQzYzdhZGavc3RhcnRpbmdfc3RhY2tzkdkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNk2SQ1MzM3NGYwZS1hMmMwLTExZWEtMGM5MS05NzQ3NDc4MDcyMWWEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SQ1MzM3NGYwZS1hMmMwLTExZWEtMGM5MS05NzQ3NDc4MDcyMWW0ZG93bnN0cmVhbV9jZWxsc19tYXCAsnVwc3RyZWFtX2NlbGxzX21hcIKnQG1kX3N0cpCoZ2V0aW5kZXiQ2SRiNjQ4YWI3MC1hMmJhLTExZWEtMmRjYy01NWI2MzBlNDQzMjWEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SRiNjQ4YWI3MC1hMmJhLTExZWEtMmRjYy01NWI2MzBlNDQzMjW0ZG93bnN0cmVhbV9jZWxsc19tYXCAsnVwc3RyZWFtX2NlbGxzX21hcIKnQG1kX3N0cpCoZ2V0aW5kZXiQ2SQ5NWZiZDBkMi1hMmI5LTExZWEtMDY4Mi1mZGY3ODMyNTE3OTeEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SQ5NWZiZDBkMi1hMmI5LTExZWEtMDY4Mi1mZGY3ODMyNTE3OTe0ZG93bnN0cmVhbV9jZWxsc19tYXCAsnVwc3RyZWFtX2NlbGxzX21hcIKnQG1kX3N0cpCoZ2V0aW5kZXiQ2SQ3MjQzY2M4ZS1hMmJhLTExZWEtM2YyOS05OTM1NmYwY2RjZjSEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SQ3MjQzY2M4ZS1hMmJhLTExZWEtM2YyOS05OTM1NmYwY2RjZjS0ZG93bnN0cmVhbV9jZWxsc19tYXCBqWFsbF9kaXNrc5PZJDQzNzgxYTUyLWEzMzktMTFlYS0zODAzLWU1NmUyZDA4YWE4M9kkNTEyZmE2ZDItYTJiZC0xMWVhLTNkYmUtYjkzNWI1MzY5Njdi2SRkNWNjNDFlOC1hMmJkLTExZWEtMzljNy1iN2RmOGRlNmFlM2WydXBzdHJlYW1fY2VsbHNfbWFwgqE6kKludW1fZGlza3OR2SQ2MjBkNjgzNC1hMmJhLTExZWEtMTUwYS0yMTMyYmI1NGU0YjPZJDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YoS0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YrRkb3duc3RyZWFtX2NlbGxzX21hcIGnaXNsZWdhbJHZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOLJ1cHN0cmVhbV9jZWxsc19tYXCFqWFsbF9kaXNrc5HZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNKRzb3J0kKhpc3NvcnRlZJCiPT2Qo2FsbJDZJDNlYjNjNGMwLWEyYzUtMTFlYS0wYmNjLWM5YjUyMDk0ZjY2MIS0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJDNlYjNjNGMwLWEyYzUtMTFlYS0wYmNjLWM5YjUyMDk0ZjY2MLRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgqdAbWRfc3RykKhnZXRpbmRleJDZJGUzNDdmMWRlLWEyYmItMTFlYS0wNmU3LTg3Y2NhNmYyYTI0MIS0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJGUzNDdmMWRlLWEyYmItMTFlYS0wNmU3LTg3Y2NhNmYyYTI0MLRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgqdAbWRfc3RykKhnZXRpbmRleJDZJDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiM4S0cHJlY2VkZW5jZV9oZXVyaXN0aWMIp2NlbGxfaWTZJDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiM7Rkb3duc3RyZWFtX2NlbGxzX21hcIGpbnVtX2Rpc2tzktkkNzI0M2NjOGUtYTJiYS0xMWVhLTNmMjktOTkzNTZmMGNkY2Y02SRlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMziydXBzdHJlYW1fY2VsbHNfbWFwgNkkZDVjYzQxZTgtYTJiZC0xMWVhLTM5YzctYjdkZjhkZTZhZTNlhLRwcmVjZWRlbmNlX2hldXJpc3RpYwinY2VsbF9pZNkkZDVjYzQxZTgtYTJiZC0xMWVhLTM5YzctYjdkZjhkZTZhZTNltGRvd25zdHJlYW1fY2VsbHNfbWFwgappc2NvbXBsZXRlkdkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4snVwc3RyZWFtX2NlbGxzX21hcIOkbGFzdJCiPT2QqWFsbF9kaXNrc5HZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNNkkMjliNDEwY2MtYTMyOS0xMWVhLTIwMmEtNzk1YjMxY2U1YWQ1hLRwcmVjZWRlbmNlX2hldXJpc3RpYwinY2VsbF9pZNkkMjliNDEwY2MtYTMyOS0xMWVhLTIwMmEtNzk1YjMxY2U1YWQ1tGRvd25zdHJlYW1fY2VsbHNfbWFwga53cm9uZ19zb2x1dGlvbpHZJGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MLJ1cHN0cmVhbV9jZWxsc19tYXCDpVR1cGxlkKNJbnSQpUFycmF5kNkkOGVhN2Y5NDQtYTMyOS0xMWVhLTIyY2MtNGRiZDExZWMwNjEwhLRwcmVjZWRlbmNlX2hldXJpc3RpYwinY2VsbF9pZNkkOGVhN2Y5NDQtYTMyOS0xMWVhLTIyY2MtNGRiZDExZWMwNjEwtGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCrmNoZWNrX3NvbHV0aW9ukdkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4pXNvbHZlkdkkMDEwZGJkYmMtYTJjNS0xMWVhLTM0YzMtODM3ZWFlMTc0MTZm2SQ1YjJlZTQwZS1hMmI4LTExZWEtMGZlZi1jMzVmZTY5MTg4NjCEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SQ1YjJlZTQwZS1hMmI4LTExZWEtMGZlZi1jMzVmZTY5MTg4NjC0ZG93bnN0cmVhbV9jZWxsc19tYXCAsnVwc3RyZWFtX2NlbGxzX21hcIKnQG1kX3N0cpCoZ2V0aW5kZXiQ2SQzNzI4MjRiNC1hMzMwLTExZWEtMmYyNi03YjlhMWFkMDE4ZjGEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SQzNzI4MjRiNC1hMzMwLTExZWEtMmYyNi03YjlhMWFkMDE4ZjG0ZG93bnN0cmVhbV9jZWxsc19tYXCAsnVwc3RyZWFtX2NlbGxzX21hcIKnQG1kX3N0cpCoZ2V0aW5kZXiQ2SQ5MTczYjE3NC1hMzI3LTExZWEtM2E2OS05Zjc1MjVmMmU3YjSEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SQ5MTczYjE3NC1hMzI3LTExZWEtM2E2OS05Zjc1MjVmMmU3YjS0ZG93bnN0cmVhbV9jZWxsc19tYXCAsnVwc3RyZWFtX2NlbGxzX21hcIKlc29sdmWR2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmascnVuX3NvbHV0aW9ukdkkNDcwOWRiMzYtYTMyNy0xMWVhLTEzYTMtYmJmYjE4ZGE4NGNl2SRlYTI0ZTc3OC1hMzJlLTExZWEtM2YxMS1kYmU5ZDM2YjEwMTGEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SRlYTI0ZTc3OC1hMzJlLTExZWEtM2YxMS1kYmU5ZDM2YjEwMTG0ZG93bnN0cmVhbV9jZWxsc19tYXCAsnVwc3RyZWFtX2NlbGxzX21hcIKnQG1kX3N0cpCoZ2V0aW5kZXiQ2SQzNWFkYTIxNC1hMzJjLTExZWEtMGRhMy1kNWQ0OTRiMjg0NjeEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SQzNWFkYTIxNC1hMzJjLTExZWEtMGRhMy1kNWQ0OTRiMjg0Nje0ZG93bnN0cmVhbV9jZWxsc19tYXCAsnVwc3RyZWFtX2NlbGxzX21hcIKnQG1kX3N0cpCoZ2V0aW5kZXiQ2SRkMjIyN2I0MC1hMzI5LTExZWEtMTA1Yy1iNTg1ZDVmY2Y5NzCEtHByZWNlZGVuY2VfaGV1cmlzdGljCKdjZWxsX2lk2SRkMjIyN2I0MC1hMzI5LTExZWEtMTA1Yy1iNTg1ZDVmY2Y5NzC0ZG93bnN0cmVhbV9jZWxsc19tYXCAsnVwc3RyZWFtX2NlbGxzX21hcIKud3Jvbmdfc29sdXRpb26R2SQyOWI0MTBjYy1hMzI5LTExZWEtMjAyYS03OTViMzFjZTVhZDWscnVuX3NvbHV0aW9ukdkkNDcwOWRiMzYtYTMyNy0xMWVhLTEzYTMtYmJmYjE4ZGE4NGNltGNlbGxfZXhlY3V0aW9uX29yZGVy3AAc2SQ1YjJlZTQwZS1hMmI4LTExZWEtMGZlZi1jMzVmZTY5MTg4NjDZJDk1ZmJkMGQyLWEyYjktMTFlYS0wNjgyLWZkZjc4MzI1MTc5N9kkNjIwZDY4MzQtYTJiYS0xMWVhLTE1MGEtMjEzMmJiNTRlNGIz2SQzNWFkYTIxNC1hMzJjLTExZWEtMGRhMy1kNWQ0OTRiMjg0NjfZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNNkkN2UxYmEyYWMtYTJiYS0xMWVhLTAxMzQtMmY2MWVkNzViZTE42SQ0Mzc4MWE1Mi1hMzM5LTExZWEtMzgwMy1lNTZlMmQwOGFhODPZJGI2NDhhYjcwLWEyYmEtMTFlYS0yZGNjLTU1YjYzMGU0NDMyNdkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNk2SRlMzQ3ZjFkZS1hMmJiLTExZWEtMDZlNy04N2NjYTZmMmEyNDDZJDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YtkkYzU2YTU4NTgtYTJiZC0xMWVhLTFkOTYtNzdlYWY1ZTc0OTI12SRkNWNjNDFlOC1hMmJkLTExZWEtMzljNy1iN2RmOGRlNmFlM2XZJDUzMzc0ZjBlLWEyYzAtMTFlYS0wYzkxLTk3NDc0NzgwNzIxZdkkZTkxNTM5NGUtYTJjMC0xMWVhLTBjZDktMWRmNmZkM2M3YWRm2SQ4N2IyZDE2NC1hMmM0LTExZWEtMzA5NS05MTY2Mjg5NDM4NznZJDI5YjQxMGNjLWEzMjktMTFlYS0yMDJhLTc5NWIzMWNlNWFkNdkkZWEyNGU3NzgtYTMyZS0xMWVhLTNmMTEtZGJlOWQzNmIxMDEx2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmbZJDNlYjNjNGMwLWEyYzUtMTFlYS0wYmNjLWM5YjUyMDk0ZjY2MNkkNDcwOWRiMzYtYTMyNy0xMWVhLTEzYTMtYmJmYjE4ZGE4NGNl2SQzNzI4MjRiNC1hMzMwLTExZWEtMmYyNi03YjlhMWFkMDE4ZjHZJGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MNkkOTE3M2IxNzQtYTMyNy0xMWVhLTNhNjktOWY3NTI1ZjJlN2I02SRiYjUwODhlYy1hMzMwLTExZWEtMmM0MS02YjhiOTI3MjRiM2LZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzONkkOGVhN2Y5NDQtYTMyOS0xMWVhLTIyY2MtNGRiZDExZWMwNjEw2SRlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMzipc2hvcnRwYXRouHNhbXBsZSBUb3dlciBvZiBIYW5vaS5qbK5wcm9jZXNzX3N0YXR1c6VyZWFkeaRwYXRo2Tcvc3J2L2p1bGlhL3BrZy9wbHV0b19ub3RlYm9va3Mvc2FtcGxlIFRvd2VyIG9mIEhhbm9pLmpsqmNlbGxfb3JkZXLcABzZJDViMmVlNDBlLWEyYjgtMTFlYS0wZmVmLWMzNWZlNjkxODg2MNkkOTVmYmQwZDItYTJiOS0xMWVhLTA2ODItZmRmNzgzMjUxNzk32SQ2MjBkNjgzNC1hMmJhLTExZWEtMTUwYS0yMTMyYmI1NGU0YjPZJDM1YWRhMjE0LWEzMmMtMTFlYS0wZGEzLWQ1ZDQ5NGIyODQ2N9kkNzI0M2NjOGUtYTJiYS0xMWVhLTNmMjktOTkzNTZmMGNkY2Y02SQ3ZTFiYTJhYy1hMmJhLTExZWEtMDEzNC0yZjYxZWQ3NWJlMTjZJDQzNzgxYTUyLWEzMzktMTFlYS0zODAzLWU1NmUyZDA4YWE4M9kkYjY0OGFiNzAtYTJiYS0xMWVhLTJkY2MtNTViNjMwZTQ0MzI12SQzMmYyNmY4MC1hMmJiLTExZWEtMGYyYS0zZmM2MzFhZGE2M2TZJGUzNDdmMWRlLWEyYmItMTFlYS0wNmU3LTg3Y2NhNmYyYTI0MNkkNTEyZmE2ZDItYTJiZC0xMWVhLTNkYmUtYjkzNWI1MzY5Njdi2SRjNTZhNTg1OC1hMmJkLTExZWEtMWQ5Ni03N2VhZjVlNzQ5MjXZJGQ1Y2M0MWU4LWEyYmQtMTFlYS0zOWM3LWI3ZGY4ZGU2YWUzZdkkNTMzNzRmMGUtYTJjMC0xMWVhLTBjOTEtOTc0NzQ3ODA3MjFl2SRlOTE1Mzk0ZS1hMmMwLTExZWEtMGNkOS0xZGY2ZmQzYzdhZGbZJDg3YjJkMTY0LWEyYzQtMTFlYS0zMDk1LTkxNjYyODk0Mzg3OdkkMjliNDEwY2MtYTMyOS0xMWVhLTIwMmEtNzk1YjMxY2U1YWQ12SRlYTI0ZTc3OC1hMzJlLTExZWEtM2YxMS1kYmU5ZDM2YjEwMTHZJDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZtkkM2ViM2M0YzAtYTJjNS0xMWVhLTBiY2MtYzliNTIwOTRmNjYw2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2XZJDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMdkkZDIyMjdiNDAtYTMyOS0xMWVhLTEwNWMtYjU4NWQ1ZmNmOTcw2SQ5MTczYjE3NC1hMzI3LTExZWEtM2E2OS05Zjc1MjVmMmU3YjTZJGJiNTA4OGVjLWEzMzAtMTFlYS0yYzQxLTZiOGI5MjcyNGIzYtkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM42SQ4ZWE3Zjk0NC1hMzI5LTExZWEtMjJjYy00ZGJkMTFlYzA2MTDZJGU1NGFkZDBhLWEzMzAtMTFlYS0yZWViLTFkNDJmNTUyYmEzOKVuYnBrZ4eyaW5zdGFsbGVkX3ZlcnNpb25zgLB0ZXJtaW5hbF9vdXRwdXRzgKdlbmFibGVkw7dyZXN0YXJ0X3JlY29tbWVuZGVkX21zZ8C0cmVzdGFydF9yZXF1aXJlZF9tc2fArWJ1c3lfcGFja2FnZXOQrGluc3RhbnRpYXRlZMOrY2VsbF9pbnB1dHPeABzZJDg3YjJkMTY0LWEyYzQtMTFlYS0zMDk1LTkxNjYyODk0Mzg3OYSnY2VsbF9pZNkkODdiMmQxNjQtYTJjNC0xMWVhLTMwOTUtOTE2NjI4OTQzODc5sHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaAiJtZCIiIgojIyBTb2x2aW5nIHRoZSBwcm9ibGVtCgpXZSBoYXZlIGltcGxlbWVudGVkIHRoZSBnYW1lIHBpZWNlcyBhbmQgdGhlIHJ1bGVzLCBzbyB5b3UgY2FuIHN0YXJ0IHdvcmtpbmcgb24geW91ciBzb2x1dGlvbi4KClRvIGRvIHRoaXMsIHlvdSBjYW4gZmlsbCBpbiB0aGUgYHNvbHZlKHN0YWNrcylgIGZ1bmN0aW9uLiBUaGlzIGZ1bmN0aW9uIHNob3VsZCBnaXZlIGEgc29sdXRpb24gZm9yIHRoZSBnaXZlbiBgc3RhY2tzYCwgYnkgbW92aW5nIGFsbCB0aGUgZGlza3MgZnJvbSBzdGFjayAxIHRvIHN0YWNrIDMuCgpBcyBvdXRwdXQsIGBzb2x2ZWAgc2hvdWxkIGdpdmUgYSByZWNpcGUsIHRoYXQgdGVsbHMgdXMgd2hhdCB0byBkby4gVGhpcyByZWNpcGUgc2hvdWxkIGJlIGFuIGFycmF5IG9mIG1vdmVzLiBFYWNoIG1vdmVzIGlzIGEgYChzb3VyY2UsIHRhcmdldClgIHR1cGxlLCBzcGVjaWZ5aW5nIGZyb20gd2hpY2ggc3RhY2sgdG8gd2hpY2ggc3RhY2sgeW91IHNob3VsZCBtb3ZlLgoKRm9yIGV4YW1wbGUsIGl0IG1pZ2h0IGxvb2sgbGlrZSB0aGlzOgoiIiKrY29kZV9mb2xkZWTD2SRjNTZhNTg1OC1hMmJkLTExZWEtMWQ5Ni03N2VhZjVlNzQ5MjWEp2NlbGxfaWTZJGM1NmE1ODU4LWEyYmQtMTFlYS0xZDk2LTc3ZWFmNWU3NDkyNbBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2gEgbWQiIiIKQW5vdGhlciBmdW5jdGlvbiBmb3Igc3RhdGVzOiBjaGVjayBpZiB3ZSBhcmUgZG9uZSEgV2UgY2FuIGFzc3VtZSB0aGF0IHdlIGFscmVhZHkgY2hlY2tlZCBpZiB0aGUgc3RhdGUgd2FzIGxlZ2FsLiBTbyB3ZSBrbm93IHRoYXQgYWxsIHRoZSBkaXNrcyBhcmUgdGhlcmUgYW5kIHRoZXkgYXJlIG9yZGVyZWQgY29ycmVjdGx5LiAgVG8gY2hlY2sgaWYgd2UgYXJlIGZpbmlzaGVkLCB3ZSBqdXN0IG5lZWQgdG8gY2hlY2sgaWYgdGhlIGxhc3Qgc3RhY2sgY29udGFpbnMgYWxsIHRoZSBkaXNrcy4KIiIiq2NvZGVfZm9sZGVkw9kkMDEwZGJkYmMtYTJjNS0xMWVhLTM0YzMtODM3ZWFlMTc0MTZmhKdjZWxsX2lk2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmawcnVubmluZ19kaXNhYmxlZMKkY29kZdlgZnVuY3Rpb24gc29sdmUoc3RhcnQgPSBzdGFydGluZ19zdGFja3MpOjpBcnJheXtUdXBsZXtJbnQsIEludH19CgkKCSN3aGF0IHRvIGRvPwoJCglyZXR1cm4gW10KZW5kq2NvZGVfZm9sZGVkwtkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4hKdjZWxsX2lk2SQxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMziwcnVubmluZ19kaXNhYmxlZMKkY29kZdoBnmZ1bmN0aW9uIGNoZWNrX3NvbHV0aW9uKHNvbHZlcjo6RnVuY3Rpb24sIHN0YXJ0ID0gc3RhcnRpbmdfc3RhY2tzKQoJdHJ5CgkJI3J1biB0aGUgc29sdXRpb24KCQlhbGxfc3RhdGVzID0gcnVuX3NvbHV0aW9uKHNvbHZlciwgc3RhcnQpCgkJCgkJI2NoZWNrIGlmIGVhY2ggc3RhdGUgaXMgbGVnYWwKCQlhbGxfbGVnYWwgPSBhbGwoaXNsZWdhbCwgYWxsX3N0YXRlcykKCQkKCQkjY2hlY2sgaWYgdGhlIGZpbmFsIHN0YXRlIGlzIGlzIHRoZSBjb21wbGV0ZWQgcHV6emxlCgkJY29tcGxldGUgPSAoaXNjb21wbGV0ZSDiiJggbGFzdCkoYWxsX3N0YXRlcykKCQkKCQlhbGxfbGVnYWwgJiYgY29tcGxldGUKCWNhdGNoCgkJI3JldHVybiBmYWxzZSBpZiB3ZSBlbmNvdW50ZXJlZCBhbiBlcnJvcgoJCXJldHVybiBmYWxzZQoJZW5kCmVuZKtjb2RlX2ZvbGRlZMLZJGU5MTUzOTRlLWEyYzAtMTFlYS0wY2Q5LTFkZjZmZDNjN2FkZoSnY2VsbF9pZNkkZTkxNTM5NGUtYTJjMC0xMWVhLTBjZDktMWRmNmZkM2M3YWRmsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaAVZmdW5jdGlvbiBtb3ZlKHN0YWNrcywgc291cmNlOjpJbnQsIHRhcmdldDo6SW50KQoJI2NoZWNrIGlmIHRoZSBmcm9tIHN0YWNrIGlmIG5vdCBlbXB0eQoJaWYgaXNlbXB0eShzdGFja3Nbc291cmNlXSkKCQllcnJvcigiRXJyb3I6IGF0dGVtcHRlZCB0byBtb3ZlIGRpc2sgZnJvbSBlbXB0eSBzdGFjayIpCgllbmQKCQoJbmV3X3N0YWNrcyA9IGRlZXBjb3B5KHN0YWNrcykKCQoJZGlzayA9IHBvcGZpcnN0IShuZXdfc3RhY2tzW3NvdXJjZV0pICN0YWtlIGRpc2sKCXB1c2hmaXJzdCEobmV3X3N0YWNrc1t0YXJnZXRdLCBkaXNrKSAjcHV0IG9uIG5ldyBzdGFjawoJCglyZXR1cm4gbmV3X3N0YWNrcwplbmSrY29kZV9mb2xkZWTC2SQ3ZTFiYTJhYy1hMmJhLTExZWEtMDEzNC0yZjYxZWQ3NWJlMTiEp2NlbGxfaWTZJDdlMWJhMmFjLWEyYmEtMTFlYS0wMTM0LTJmNjFlZDc1YmUxOLBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2XdtZCIiIgpBIHNpbmdsZSBzdGFjayBjYW4gYmUgcmVwcmVzZW50ZWQgYXMgYW4gYXJyYXkgd2l0aCBhbGwgdGhlIGRpc2tzIGluIGl0LiBXZSB3aWxsIGxpc3QgdGhlbSBmcm9tIHRvcCB0byBib3R0b20uCiIiIqtjb2RlX2ZvbGRlZMPZJGU1NGFkZDBhLWEzMzAtMTFlYS0yZWViLTFkNDJmNTUyYmEzOISnY2VsbF9pZNkkZTU0YWRkMGEtYTMzMC0xMWVhLTJlZWItMWQ0MmY1NTJiYTM4sHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaAThpZiBjaGVja19zb2x1dGlvbihzb2x2ZSkKCWlmIG51bV9kaXNrcyA+PSA4CgkJbWQiIiIKCQkjIyMjIENvbmdyYXR1bGF0aW9ucywgeW91ciBzb2x1dGlvbiB3b3JrcyEg8J+YjgoJCSIiIgoJZWxzZQoJCW1kIiIiCgkJWW91ciBzb2x1dGlvbiB3b3JrcyBmb3IgJChudW1fZGlza3MpIGRpc2tzLiBDaGFuZ2UgYG51bV9kaXNrc2AgdG8gc2VlIGlmIGl0IHdvcmtzIGZvciA4IG9yIG1vcmUuCgkJIiIiCgllbmQKZWxzZQoJbWQiIiIKCVRoZSBgc29sdmVgIGZ1bmN0aW9uIGRvZXNuJ3Qgd29yayB5ZXQuIEtlZXAgd29ya2luZyBvbiBpdCEKCSIiIgplbmSrY29kZV9mb2xkZWTD2SRiYjUwODhlYy1hMzMwLTExZWEtMmM0MS02YjhiOTI3MjRiM2KEp2NlbGxfaWTZJGJiNTA4OGVjLWEzMzAtMTFlYS0yYzQxLTZiOGI5MjcyNGIzYrBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2bltZCIiIgpOb3cgdGhhdCB3ZSBoYXZlIHdheSB0byBydW4gYSByZWNpcGUsIHdlIGNhbiBjaGVjayBpZiBpdHMgb3V0cHV0IGlzIGNvcnJlY3QuIFdlIHdpbGwgY2hlY2sgaWYgYWxsIHRoZSBpbnRlcm1lZGlhdGUgc3RhdGVzIGFyZSBsZWdhbCBhbmQgdGhlIGZpbmFsIHN0YXRlIGlzIHRoZSBmaW5pc2hlZCBwdXp6bGUuCiIiIqtjb2RlX2ZvbGRlZMPZJDQzNzgxYTUyLWEzMzktMTFlYS0zODAzLWU1NmUyZDA4YWE4M4SnY2VsbF9pZNkkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgzsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXZIGZpcnN0X3N0YWNrID0gY29sbGVjdChhbGxfZGlza3Mpq2NvZGVfZm9sZGVkwtkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNkhKdjZWxsX2lk2SQzMmYyNmY4MC1hMmJiLTExZWEtMGYyYS0zZmM2MzFhZGE2M2SwcnVubmluZ19kaXNhYmxlZMKkY29kZdknc3RhcnRpbmdfc3RhY2tzID0gW2ZpcnN0X3N0YWNrLCBbXSwgW11dq2NvZGVfZm9sZGVkwtkkNDcwOWRiMzYtYTMyNy0xMWVhLTEzYTMtYmJmYjE4ZGE4NGNlhKdjZWxsX2lk2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2WwcnVubmluZ19kaXNhYmxlZMKkY29kZdoBa2Z1bmN0aW9uIHJ1bl9zb2x1dGlvbihzb2x2ZXI6OkZ1bmN0aW9uLCBzdGFydCA9IHN0YXJ0aW5nX3N0YWNrcykKCW1vdmVzID0gc29sdmVyKGRlZXBjb3B5KHN0YXJ0KSkgI2FwcGx5IHRoZSBzb2x2ZXIKCQoJYWxsX3N0YXRlcyA9IEFycmF5e0FueSwxfSh1bmRlZiwgbGVuZ3RoKG1vdmVzKSArIDEpCglhbGxfc3RhdGVzWzFdID0gc3RhcnQKCQoJZm9yIChpLCBtKSBpbiBlbnVtZXJhdGUobW92ZXMpCgkJdHJ5CgkJCWFsbF9zdGF0ZXNbaSArIDFdID0gbW92ZShhbGxfc3RhdGVzW2ldLCBtWzFdLCBtWzJdKQoJCWNhdGNoCgkJCWFsbF9zdGF0ZXNbaSArIDFdID0gbWlzc2luZwoJCWVuZAoJZW5kCgkKCXJldHVybiBhbGxfc3RhdGVzCmVuZKtjb2RlX2ZvbGRlZMLZJDUzMzc0ZjBlLWEyYzAtMTFlYS0wYzkxLTk3NDc0NzgwNzIxZYSnY2VsbF9pZNkkNTMzNzRmMGUtYTJjMC0xMWVhLTBjOTEtOTc0NzQ3ODA3MjFlsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaA9dtZCIiIgpOb3cgdGhlIG9ubHkgcnVsZXMgbGVmdCB0byBpbXBsZW1lbnQgYXJlIHRoZSBydWxlcyBmb3IgbW92aW5nIGRpc2tzLiAKCldlIGNvdWxkIGltcGxlbWVudCB0aGlzIGFzIGFub3RoZXIgY2hlY2sgb24gc3RhdGVzLCBidXQgaXQncyBlYXNpZXIgdG8ganVzdCB3cml0ZSBhIGxlZ2FsIGBtb3ZlYCBmdW5jdGlvbi4gWW91ciBzb2x1dGlvbiB3aWxsIHNwZWNpZnkgbW92ZXMgZm9yIHRoZSBgbW92ZWAgZnVuY3Rpb24sIHNvIHRoaXMgd2lsbCBiZSB0aGUgb25seSB3YXkgdGhhdCB0aGUgc3RhY2tzIGFyZSBhY3R1YWxseSBtYW5pcHVsYXRlZC4gVGhhdCB3YXksIHdlIGFyZSBzdXJlIHRoYXQgbm90aGluZyBmaXNoeSBpcyBoYXBwZW5pbmcuCgpXZSB3aWxsIG1ha2Ugb3VyIGBtb3ZlYCBmdW5jdGlvbiBzbyB0aGF0IGl0cyBpbnB1dCBjb25zaXN0cyBvZiBhIHN0YXRlIG9mIHRoZSBnYW1lLCBhbmQgaW5zdHJ1Y3Rpb25zIGZvciB3aGF0IHRvIGRvLiBJdHMgb3V0cHV0IHdpbGwgYmUgdGhlIG5ldyBzdGF0ZSBvZiB0aGUgZ2FtZS4KClNvIHdoYXQgc2hvdWxkIHRob3NlIGluc3RydWN0aW9ucyBsb29rIGxpa2U/IEl0IG1heSBzZWVtIGludHVpdGl2ZSB0byBnaXZlIGEgX2Rpc2tfIHRoYXQgc2hvdWxkIGJlIG1vdmVkLCBidXQgdGhhdCdzIG1vcmUgdGhhbiB3ZSBuZWVkLiBBZnRlciBhbGwsIHdlIGFyZSBvbmx5IGFsbG93ZWQgdG8gdGFrZSB0aGUgdG9wIGRpc2sgZnJvbSBvbmUgc3RhY2ssIGFuZCBtb3ZlIGl0IHRvIHRoZSB0b3Agb2YgYW5vdGhlci4gU28gd2Ugb25seSBoYXZlIHRvIHNheSB3aGljaCBfc3RhY2tzXyB3ZSBhcmUgbW92aW5nIGJldHdlZW4uCgooTm90ZSB0aGF0IHRoZSBgbW92ZWAgZnVuY3Rpb24gaXMgb2theSB3aXRoIG1vdmluZyBhIGxhcmdlciBkaXNrIG9uIHRvcCBvZiBhIHNtYWxsZXIgZGlzay4gV2UgYWxyZWFkeSBpbXBsZW1lbnRlZCB0aGF0IHJlc3RyaWN0aW9uIGluIGBpc2xlZ2FsYC4pCiIiIqtjb2RlX2ZvbGRlZMPZJGI2NDhhYjcwLWEyYmEtMTFlYS0yZGNjLTU1YjYzMGU0NDMyNYSnY2VsbF9pZNkkYjY0OGFiNzAtYTJiYS0xMWVhLTJkY2MtNTViNjMwZTQ0MzI1sHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXZLm1kIiIiCk5vdyB3ZSBoYXZlIHRvIG1ha2UgdGhyZWUgb2YgdGhvc2UuIAoiIiKrY29kZV9mb2xkZWTD2SQ5NWZiZDBkMi1hMmI5LTExZWEtMDY4Mi1mZGY3ODMyNTE3OTeEp2NlbGxfaWTZJDk1ZmJkMGQyLWEyYjktMTFlYS0wNjgyLWZkZjc4MzI1MTc5N7BydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2gJbbWQiIiIKIyMgU2V0dGluZyB1cCB0aGUgZ2FtZSBwaWVjZXMKCldoYXQgZG9lcyBhIEp1bGlhIGltcGxlbWVudGF0aW9uIGxvb2sgbGlrZT8gV2UncmUgbm90IHJlYWxseSBpbnRlcmVzdGVkIGluIHdyaXRpbmcgY29kZSB0aGF0IHdpbGwgbWFuaXB1bGF0ZSBwaHlzaWNhbCBkaXNrcy4gT3VyIGZpbmFsIGdvYWwgaXMgYSBmdW5jdGlvbiB0aGF0IHdpbGwgZ2l2ZSB1cyBhIF9yZWNpcGVfIHRvIHNvbHZlIHRoZSB0b3dlciBvZiBoYW5vaSwgd2hpY2ggaXMganVzdCBhIGxpc3Qgb2YgbW92ZXMgdG8gbWFrZS4gQmVjYXVzZSBvZiB0aGF0LCB3ZSBjYW4gdXNlIGEgbG90IG9mIGFic3RyYWN0aW9uIGluIG91ciBpbXBsZW1lbnRhdGlvbiwgYW5kIGtlZXAgdGhlIGRhdGEgc3RydWN0dXJlcyBhcyBzaW1wbGUgYXMgcG9zc2libGUuCgpUbyBzdGFydCwgd2UgaGF2ZSB0byBkZWZpbmUgc29tZSByZXByZXNlbnRhdGlvbiBvZiB0aGUgZGlza3MgYW5kIHRoZSBzdGFja3MuIFRoZSBkaXNrcyBoYXZlIG9uZSBpbXBvcnRhbnQgcHJvcGVydHksIHdoaWNoIGlzIHRoYXQgdGhleSBhcmUgb3JkZXJlZC4gV2UgY2FuIHVzZSBpbnRlZ2VycyB0byByZXByZXNlbnQgdGhlbS4KIiIiq2NvZGVfZm9sZGVkw9kkNzI0M2NjOGUtYTJiYS0xMWVhLTNmMjktOTkzNTZmMGNkY2Y0hKdjZWxsX2lk2SQ3MjQzY2M4ZS1hMmJhLTExZWEtM2YyOS05OTM1NmYwY2RjZjSwcnVubmluZ19kaXNhYmxlZMKkY29kZbdhbGxfZGlza3MgPSAxOm51bV9kaXNrc6tjb2RlX2ZvbGRlZMLZJDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YoSnY2VsbF9pZNkkNTEyZmE2ZDItYTJiZC0xMWVhLTNkYmUtYjkzNWI1MzY5NjdisHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaARZmdW5jdGlvbiBpc2xlZ2FsKHN0YWNrcykKCW9yZGVyX2NvcnJlY3QgPSBhbGwoaXNzb3J0ZWQsIHN0YWNrcykKCQoJI2NoZWNrIGlmIHdlIHVzZSB0aGUgc2FtZSBkaXNrIHNldCB0aGF0IHdlIHN0YXJ0ZWQgd2l0aAoJCglkaXNrc19pbl9zdGF0ZSA9IHNvcnQoW2Rpc2sgZm9yIHN0YWNrIGluIHN0YWNrcyBmb3IgZGlzayBpbiBzdGFja10pCglkaXNrc19jb21wbGV0ZSA9IGRpc2tzX2luX3N0YXRlID09IGFsbF9kaXNrcwoJCglvcmRlcl9jb3JyZWN0ICYmIGRpc2tzX2NvbXBsZXRlCmVuZKtjb2RlX2ZvbGRlZMLZJDNlYjNjNGMwLWEyYzUtMTFlYS0wYmNjLWM5YjUyMDk0ZjY2MISnY2VsbF9pZNkkM2ViM2M0YzAtYTJjNS0xMWVhLTBiY2MtYzliNTIwOTRmNjYwsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXZg21kIiIiCiMjIENoZWNraW5nIHNvbHV0aW9ucwoKVGhpcyBpcyB3aGVyZSB3ZSBjYW4gY2hlY2sgYSBzb2x1dGlvbi4gV2Ugc3RhcnQgd2l0aCBhIGZ1bmN0aW9uIHRoYXQgdGFrZXMgb3VyIHJlY2lwZSBhbmQgcnVucyBpdC4KIiIiq2NvZGVfZm9sZGVkw9kkZTM0N2YxZGUtYTJiYi0xMWVhLTA2ZTctODdjY2E2ZjJhMjQwhKdjZWxsX2lk2SRlMzQ3ZjFkZS1hMmJiLTExZWEtMDZlNy04N2NjYTZmMmEyNDCwcnVubmluZ19kaXNhYmxlZMKkY29kZdoB1G1kIiIiCiMjIERlZmluaW5nIHRoZSBydWxlcwoKTm93IHRoYXQgd2UgaGF2ZSBvdXIgImdhbWUgYm9hcmQiLCB3ZSBjYW4gaW1wbGVtZW50IHRoZSBydWxlcy4KClRvIHN0YXJ0LCB3ZSBtYWtlIHR3byBmdW5jdGlvbnMgZm9yIHN0YXRlcy4gQSBzdGF0ZSBvZiB0aGUgZ2FtZSBpcyBqdXN0IGFuIGFycmF5IG9mIHN0YWNrcy4KCldlIHdpbGwgZGVmaW5lIGEgZnVuY3Rpb24gdGhhdCBjaGVja3MgaWYgYSBzdGF0ZSBpcyBva2F5IGFjY29yZGluZyB0byB0aGUgcnVsZXMuIFRvIGJlIGxlZ2FsLCBhbGwgdGhlIHN0YWNrcyBzaG91bGQgYmUgaW4gdGhlIGNvcnJlY3Qgb3JkZXIsIHNvIG5vIGxhcmdlciBkaXNrcyBvbiB0b3Agb2Ygc21hbGxlciBkaXNrcy4gCgpBbm90aGVyIGdvb2QgdGhpbmcgdG8gY2hlY2s6IG5vIGRpc2tzIHNob3VsZCBoYXZlIGFwcGVhcmVkIG9yIGRpc2FwcGVhcmVkIHNpbmNlIHdlIHN0YXJ0ZWQhCiIiIqtjb2RlX2ZvbGRlZMPZJDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiM4SnY2VsbF9pZNkkNjIwZDY4MzQtYTJiYS0xMWVhLTE1MGEtMjEzMmJiNTRlNGIzsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGWtbnVtX2Rpc2tzID0gOKtjb2RlX2ZvbGRlZMLZJGQ1Y2M0MWU4LWEyYmQtMTFlYS0zOWM3LWI3ZGY4ZGU2YWUzZYSnY2VsbF9pZNkkZDVjYzQxZTgtYTJiZC0xMWVhLTM5YzctYjdkZjhkZTZhZTNlsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXZOmZ1bmN0aW9uIGlzY29tcGxldGUoc3RhY2tzKQoJbGFzdChzdGFja3MpID09IGFsbF9kaXNrcwplbmSrY29kZV9mb2xkZWTC2SQyOWI0MTBjYy1hMzI5LTExZWEtMjAyYS03OTViMzFjZTVhZDWEp2NlbGxfaWTZJDI5YjQxMGNjLWEzMjktMTFlYS0yMDJhLTc5NWIzMWNlNWFkNbBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2WBmdW5jdGlvbiB3cm9uZ19zb2x1dGlvbihzdGFja3MpOjpBcnJheXtUdXBsZXtJbnQsIEludH19CglyZXR1cm4gWygxLDIpLCAoMiwzKSwgKDIsMSksICgxLDMpXQplbmSrY29kZV9mb2xkZWTC2SQ4ZWE3Zjk0NC1hMzI5LTExZWEtMjJjYy00ZGJkMTFlYzA2MTCEp2NlbGxfaWTZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMLBydW5uaW5nX2Rpc2FibGVkwqRjb2RltWNoZWNrX3NvbHV0aW9uKHNvbHZlKatjb2RlX2ZvbGRlZMLZJDViMmVlNDBlLWEyYjgtMTFlYS0wZmVmLWMzNWZlNjkxODg2MISnY2VsbF9pZNkkNWIyZWU0MGUtYTJiOC0xMWVhLTBmZWYtYzM1ZmU2OTE4ODYwsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaAyZtZCIiIgojIFRoZSB0b3dlciBvZiBIYW5vaQoKVGhlIHRvd2VyIG9mIGhhbm9pIGlzIGEgZmFtb3VzIHB1enpsZS4KCiFbc2V0dXAgb2YgdGhlIHRvd2VyIG9mIGEgaGFub2ldKGh0dHBzOi8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvMC8wNy9Ub3dlcl9vZl9IYW5vaS5qcGVnKQoKVGhlIGdhbWUgY29uc2lzdHMgb2YgdGhyZWUgcm9kcyB3aXRoIGRpc2tzIHN0YWNrZWQgb24gdG9wIG9mIHRoZW0uIFRoZSBwdXp6bGUgd2lsbCBzdGFydCB3aXRoIGFsbCBkaXNrcyBpbiBhIHN0YWNrIG9uIG9uZSBvZiB0aGUgcm9kcyAobGlrZSBpbiB0aGUgcGljdHVyZSkuIFRoZSBnb2FsIGlzIHRvIG1vdmUgYWxsIHRoZSBkaXNjcyB0byBhIHNpbmdsZSBzdGFjayBvbiB0aGUgbGFzdCByb2QuCgpUbyBtb3ZlIHRoZSBkaXNrcywgeW91IGhhdmUgdG8gZm9sbG93IHRoZSBmb2xsb3dpbmcgcnVsZXM6CgoqIFlvdSBjYW4gbW92ZSBvbmx5IG9uZSBkaXNrIGF0IGEgdGltZS4KKiBGb3IgZWFjaCBtb3ZlLCB5b3UgaGF2ZSB0byB0YWtlIHRoZSB1cHBlciBkaXNrIGZyb20gb25lIG9mIHRoZSBzdGFja3MsIGFuZCBwbGFjZSBpdCBvbiB0b3Agb2YgYW5vdGhlciBzdGFjayBvciBlbXB0eSByb2QuCiogWW91IGNhbm5vdCBwbGFjZSBhIGxhcmdlciBkaXNrIG9uIHRvcCBvZiBhIHNtYWxsZXIgZGlzay4KClRoaXMgbm90ZWJvb2sgd2lsbCBkZWZpbmUgYSBKdWxpYSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgcHV6emxlLiBJdCdzIHVwIHRvIHlvdSB0byB3cml0ZSBhbiBhbGdvcml0aG0gdGhhdCBzb2x2ZXMgaXQuCiIiIqtjb2RlX2ZvbGRlZMPZJDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMYSnY2VsbF9pZNkkMzcyODI0YjQtYTMzMC0xMWVhLTJmMjYtN2I5YTFhZDAxOGYxsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaAQ5tZCIiIgpZb3UgY2FuIHVzZSB0aGlzIGZ1bmN0aW9uIHRvIHNlZSB3aGF0IHlvdXIgc29sdXRpb24gZG9lcy4KCklmIGBydW5fc29sdXRpb25gIHRyaWVzIHRvIG1ha2UgYW4gaW1wb3NzaWJsZSBtb3ZlLCBpdCB3aWxsIGdpdmUgYG1pc3NpbmdgIGZyb20gdGhhdCBwb2ludCBvbndhcmRzLiBMb29rIGF0IHdoYXQgaGFwcGVucyBpbiB0aGUgYHdyb25nX3NvbHV0aW9uYCB2ZXJzaW9uIGFuZCBjb21wYXJlIGl0IHRvIHRoZSBtb3ZlcyBpbiBgd3Jvbmdfc29sdXRpb25gLgoiIiKrY29kZV9mb2xkZWTD2SQ5MTczYjE3NC1hMzI3LTExZWEtM2E2OS05Zjc1MjVmMmU3YjSEp2NlbGxfaWTZJDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNLBydW5uaW5nX2Rpc2FibGVkwqRjb2Rls3J1bl9zb2x1dGlvbihzb2x2ZSmrY29kZV9mb2xkZWTC2SRlYTI0ZTc3OC1hMzJlLTExZWEtM2YxMS1kYmU5ZDM2YjEwMTGEp2NlbGxfaWTZJGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMbBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2gFKbWQiIiIKTm93IHlvdSBjYW4gd29yayBvbiBidWlsZGluZyBhbiBhY3R1YWwgc29sdXRpb24uIFNvbWUgdGlwczoKKiBgc29sdmUoc3RhY2tzKWAgY2FuIGtlZXAgdHJhY2sgb2YgdGhlIGJvYXJkIGlmIHlvdSB3YW50LCBidXQgaXQgZG9lc24ndCBoYXZlIHRvLgoqIFRoZSBzZWN0aW9uIGJlbG93IHdpbGwgYWN0dWFsbHkgcnVuIHlvdXIgbW92ZXMsIHdoaWNoIGlzIHZlcnkgdXNlZnVsIGZvciBjaGVja2luZyB0aGVtLgoqIElmIHlvdSB3YW50LCB5b3UgY2FuIGNoYW5nZSBgbnVtX2Rpc2tzYCB0byAxIG9yIDIuIFRoYXQgY2FuIGJlIGEgZ29vZCBzdGFydGluZyBwb2ludC4KIiIiq2NvZGVfZm9sZGVkw9kkMzVhZGEyMTQtYTMyYy0xMWVhLTBkYTMtZDVkNDk0YjI4NDY3hKdjZWxsX2lk2SQzNWFkYTIxNC1hMzJjLTExZWEtMGRhMy1kNWQ0OTRiMjg0NjewcnVubmluZ19kaXNhYmxlZMKkY29kZdl9bWQiIiIoU2lkZSBub3RlOiB0aGUgbnVtYmVyIG9mIGRpc2tzIGlzIGFyYml0cmFyeS4gV2hlbiB0ZXN0aW5nIHlvdXIgZnVuY3Rpb24sIHlvdSBtYXkgd2FudCB0byBzZXQgaXQgdG8gMSBvciAyIHRvIHN0YXJ0LikiIiKrY29kZV9mb2xkZWTD2SRkMjIyN2I0MC1hMzI5LTExZWEtMTA1Yy1iNTg1ZDVmY2Y5NzCEp2NlbGxfaWTZJGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MLBydW5uaW5nX2Rpc2FibGVkwqRjb2RlvHJ1bl9zb2x1dGlvbih3cm9uZ19zb2x1dGlvbimrY29kZV9mb2xkZWTCq25vdGVib29rX2lk2SRlOTE3ODJhZS01MmFiLTExZWMtMWUzZC0zM2IzZTM3N2E0NDOraW5fdGVtcF9kaXLD";
</script>
<!-- [automatically generated launch parameters can be inserted here] -->
<script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.16.0/frontend/editor.js" type="module" defer></script>
<script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.16.0/frontend/warn_old_browsers.js"></script>
<script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.16.0/frontend/common/SetupMathJax.js"></script>
<script type="text/javascript" id="MathJax-script" src="https://cdn.jsdelivr.net/npm/mathjax@3.1.2/es5/tex-svg-full.js" async></script>
</head>
<body class="loading no-MαθJax"></body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta name="viewport" content="width=device-width" />
<title>⚡ Pluto.jl ⚡</title>
<meta charset="utf-8" />
<script>
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>
<meta name="theme-color" content="#ffffff" />
<link rel="icon" type="image/png" sizes="16x16" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.0/frontend/img/favicon-16x16.png" />
<link rel="icon" type="image/png" sizes="32x32" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.0/frontend/img/favicon-32x32.png" />
<link rel="icon" type="image/png" sizes="96x96" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.0/frontend/img/favicon-96x96.png" />
<meta name="description" content="Pluto.jl notebooks" />
<link rel="pluto-logo-big" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.0/frontend/img/logo.svg" />
<link rel="pluto-logo-small" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.0/frontend/img/favicon_unsaturated.svg" />
<link rel="pluto-sw" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.0/frontend/sw.js" />
<script>
navigator.serviceWorker?.register(document.head.querySelector("link[rel='pluto-sw']").getAttribute("href"), { scope: "./" }).catch(console.warn)
</script>
<script src="https://cdn.jsdelivr.net/npm/lodash@4.17.20/lodash.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/@observablehq/stdlib@3.3.1/dist/stdlib.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/iframe-resizer@4.2.11/js/iframeResizer.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/ansi_up@5.0.1/ansi_up.min.js" defer></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.0/frontend/editor.css" type="text/css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.0/frontend/hide-ui.css" type="text/css" media="all" data-pluto-file="hide-ui">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.0/frontend/binder.css" type="text/css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.0/frontend/treeview.css" type="text/css" />
<link rel="preload" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.0/frontend/juliamono.css" as="style">
<link rel="preload" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.0/frontend/vollkorn.css" as="style">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@11.2.0/build/styles/atom-one-light.min.css">
<!-- The instant feedback form at the bottom of the page uses Google Firestore to save feedback. -->
<script src="https://cdn.jsdelivr.net/npm/firebase@7.13.1/firebase-app.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/firebase@7.13.1/firebase-firestore.js" defer></script>
<script data-pluto-file="launch-parameters">
window.pluto_notebook_id = undefined;
window.pluto_notebookfile = "data:text/julia;charset=utf-8;base64,IyMjIEEgUGx1dG8uamwgbm90ZWJvb2sgIyMjCiMgdjAuMTcuMAoKdXNpbmcgTWFya2Rvd24KdXNpbmcgSW50ZXJhY3RpdmVVdGlscwoKIyDilZTilZDilaEgNWIyZWU0MGUtYTJiOC0xMWVhLTBmZWYtYzM1ZmU2OTE4ODYwCm1kIiIiCiMgVGhlIHRvd2VyIG9mIEhhbm9pCgpUaGUgdG93ZXIgb2YgaGFub2kgaXMgYSBmYW1vdXMgcHV6emxlLgoKIVtzZXR1cCBvZiB0aGUgdG93ZXIgb2YgYSBoYW5vaV0oaHR0cHM6Ly91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy8wLzA3L1Rvd2VyX29mX0hhbm9pLmpwZWcpCgpUaGUgZ2FtZSBjb25zaXN0cyBvZiB0aHJlZSByb2RzIHdpdGggZGlza3Mgc3RhY2tlZCBvbiB0b3Agb2YgdGhlbS4gVGhlIHB1enpsZSB3aWxsIHN0YXJ0IHdpdGggYWxsIGRpc2tzIGluIGEgc3RhY2sgb24gb25lIG9mIHRoZSByb2RzIChsaWtlIGluIHRoZSBwaWN0dXJlKS4gVGhlIGdvYWwgaXMgdG8gbW92ZSBhbGwgdGhlIGRpc2NzIHRvIGEgc2luZ2xlIHN0YWNrIG9uIHRoZSBsYXN0IHJvZC4KClRvIG1vdmUgdGhlIGRpc2tzLCB5b3UgaGF2ZSB0byBmb2xsb3cgdGhlIGZvbGxvd2luZyBydWxlczoKCiogWW91IGNhbiBtb3ZlIG9ubHkgb25lIGRpc2sgYXQgYSB0aW1lLgoqIEZvciBlYWNoIG1vdmUsIHlvdSBoYXZlIHRvIHRha2UgdGhlIHVwcGVyIGRpc2sgZnJvbSBvbmUgb2YgdGhlIHN0YWNrcywgYW5kIHBsYWNlIGl0IG9uIHRvcCBvZiBhbm90aGVyIHN0YWNrIG9yIGVtcHR5IHJvZC4KKiBZb3UgY2Fubm90IHBsYWNlIGEgbGFyZ2VyIGRpc2sgb24gdG9wIG9mIGEgc21hbGxlciBkaXNrLgoKVGhpcyBub3RlYm9vayB3aWxsIGRlZmluZSBhIEp1bGlhIGltcGxlbWVudGF0aW9uIG9mIHRoZSBwdXp6bGUuIEl0J3MgdXAgdG8geW91IHRvIHdyaXRlIGFuIGFsZ29yaXRobSB0aGF0IHNvbHZlcyBpdC4KIiIiCgojIOKVlOKVkOKVoSA5NWZiZDBkMi1hMmI5LTExZWEtMDY4Mi1mZGY3ODMyNTE3OTcKbWQiIiIKIyMgU2V0dGluZyB1cCB0aGUgZ2FtZSBwaWVjZXMKCldoYXQgZG9lcyBhIEp1bGlhIGltcGxlbWVudGF0aW9uIGxvb2sgbGlrZT8gV2UncmUgbm90IHJlYWxseSBpbnRlcmVzdGVkIGluIHdyaXRpbmcgY29kZSB0aGF0IHdpbGwgbWFuaXB1bGF0ZSBwaHlzaWNhbCBkaXNrcy4gT3VyIGZpbmFsIGdvYWwgaXMgYSBmdW5jdGlvbiB0aGF0IHdpbGwgZ2l2ZSB1cyBhIF9yZWNpcGVfIHRvIHNvbHZlIHRoZSB0b3dlciBvZiBoYW5vaSwgd2hpY2ggaXMganVzdCBhIGxpc3Qgb2YgbW92ZXMgdG8gbWFrZS4gQmVjYXVzZSBvZiB0aGF0LCB3ZSBjYW4gdXNlIGEgbG90IG9mIGFic3RyYWN0aW9uIGluIG91ciBpbXBsZW1lbnRhdGlvbiwgYW5kIGtlZXAgdGhlIGRhdGEgc3RydWN0dXJlcyBhcyBzaW1wbGUgYXMgcG9zc2libGUuCgpUbyBzdGFydCwgd2UgaGF2ZSB0byBkZWZpbmUgc29tZSByZXByZXNlbnRhdGlvbiBvZiB0aGUgZGlza3MgYW5kIHRoZSBzdGFja3MuIFRoZSBkaXNrcyBoYXZlIG9uZSBpbXBvcnRhbnQgcHJvcGVydHksIHdoaWNoIGlzIHRoYXQgdGhleSBhcmUgb3JkZXJlZC4gV2UgY2FuIHVzZSBpbnRlZ2VycyB0byByZXByZXNlbnQgdGhlbS4KIiIiCgojIOKVlOKVkOKVoSA2MjBkNjgzNC1hMmJhLTExZWEtMTUwYS0yMTMyYmI1NGU0YjMKbnVtX2Rpc2tzID0gOAoKIyDilZTilZDilaEgMzVhZGEyMTQtYTMyYy0xMWVhLTBkYTMtZDVkNDk0YjI4NDY3Cm1kIiIiKFNpZGUgbm90ZTogdGhlIG51bWJlciBvZiBkaXNrcyBpcyBhcmJpdHJhcnkuIFdoZW4gdGVzdGluZyB5b3VyIGZ1bmN0aW9uLCB5b3UgbWF5IHdhbnQgdG8gc2V0IGl0IHRvIDEgb3IgMiB0byBzdGFydC4pIiIiCgojIOKVlOKVkOKVoSA3MjQzY2M4ZS1hMmJhLTExZWEtM2YyOS05OTM1NmYwY2RjZjQKYWxsX2Rpc2tzID0gMTpudW1fZGlza3MKCiMg4pWU4pWQ4pWhIDdlMWJhMmFjLWEyYmEtMTFlYS0wMTM0LTJmNjFlZDc1YmUxOAptZCIiIgpBIHNpbmdsZSBzdGFjayBjYW4gYmUgcmVwcmVzZW50ZWQgYXMgYW4gYXJyYXkgd2l0aCBhbGwgdGhlIGRpc2tzIGluIGl0LiBXZSB3aWxsIGxpc3QgdGhlbSBmcm9tIHRvcCB0byBib3R0b20uCiIiIgoKIyDilZTilZDilaEgNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgzCmZpcnN0X3N0YWNrID0gY29sbGVjdChhbGxfZGlza3MpCgojIOKVlOKVkOKVoSBiNjQ4YWI3MC1hMmJhLTExZWEtMmRjYy01NWI2MzBlNDQzMjUKbWQiIiIKTm93IHdlIGhhdmUgdG8gbWFrZSB0aHJlZSBvZiB0aG9zZS4gCiIiIgoKIyDilZTilZDilaEgMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNkCnN0YXJ0aW5nX3N0YWNrcyA9IFtmaXJzdF9zdGFjaywgW10sIFtdXQoKIyDilZTilZDilaEgZTM0N2YxZGUtYTJiYi0xMWVhLTA2ZTctODdjY2E2ZjJhMjQwCm1kIiIiCiMjIERlZmluaW5nIHRoZSBydWxlcwoKTm93IHRoYXQgd2UgaGF2ZSBvdXIgImdhbWUgYm9hcmQiLCB3ZSBjYW4gaW1wbGVtZW50IHRoZSBydWxlcy4KClRvIHN0YXJ0LCB3ZSBtYWtlIHR3byBmdW5jdGlvbnMgZm9yIHN0YXRlcy4gQSBzdGF0ZSBvZiB0aGUgZ2FtZSBpcyBqdXN0IGFuIGFycmF5IG9mIHN0YWNrcy4KCldlIHdpbGwgZGVmaW5lIGEgZnVuY3Rpb24gdGhhdCBjaGVja3MgaWYgYSBzdGF0ZSBpcyBva2F5IGFjY29yZGluZyB0byB0aGUgcnVsZXMuIFRvIGJlIGxlZ2FsLCBhbGwgdGhlIHN0YWNrcyBzaG91bGQgYmUgaW4gdGhlIGNvcnJlY3Qgb3JkZXIsIHNvIG5vIGxhcmdlciBkaXNrcyBvbiB0b3Agb2Ygc21hbGxlciBkaXNrcy4gCgpBbm90aGVyIGdvb2QgdGhpbmcgdG8gY2hlY2s6IG5vIGRpc2tzIHNob3VsZCBoYXZlIGFwcGVhcmVkIG9yIGRpc2FwcGVhcmVkIHNpbmNlIHdlIHN0YXJ0ZWQhCiIiIgoKIyDilZTilZDilaEgNTEyZmE2ZDItYTJiZC0xMWVhLTNkYmUtYjkzNWI1MzY5NjdiCmZ1bmN0aW9uIGlzbGVnYWwoc3RhY2tzKQoJb3JkZXJfY29ycmVjdCA9IGFsbChpc3NvcnRlZCwgc3RhY2tzKQoJCgkjY2hlY2sgaWYgd2UgdXNlIHRoZSBzYW1lIGRpc2sgc2V0IHRoYXQgd2Ugc3RhcnRlZCB3aXRoCgkKCWRpc2tzX2luX3N0YXRlID0gc29ydChbZGlzayBmb3Igc3RhY2sgaW4gc3RhY2tzIGZvciBkaXNrIGluIHN0YWNrXSkKCWRpc2tzX2NvbXBsZXRlID0gZGlza3NfaW5fc3RhdGUgPT0gYWxsX2Rpc2tzCgkKCW9yZGVyX2NvcnJlY3QgJiYgZGlza3NfY29tcGxldGUKZW5kCgojIOKVlOKVkOKVoSBjNTZhNTg1OC1hMmJkLTExZWEtMWQ5Ni03N2VhZjVlNzQ5MjUKbWQiIiIKQW5vdGhlciBmdW5jdGlvbiBmb3Igc3RhdGVzOiBjaGVjayBpZiB3ZSBhcmUgZG9uZSEgV2UgY2FuIGFzc3VtZSB0aGF0IHdlIGFscmVhZHkgY2hlY2tlZCBpZiB0aGUgc3RhdGUgd2FzIGxlZ2FsLiBTbyB3ZSBrbm93IHRoYXQgYWxsIHRoZSBkaXNrcyBhcmUgdGhlcmUgYW5kIHRoZXkgYXJlIG9yZGVyZWQgY29ycmVjdGx5LiAgVG8gY2hlY2sgaWYgd2UgYXJlIGZpbmlzaGVkLCB3ZSBqdXN0IG5lZWQgdG8gY2hlY2sgaWYgdGhlIGxhc3Qgc3RhY2sgY29udGFpbnMgYWxsIHRoZSBkaXNrcy4KIiIiCgojIOKVlOKVkOKVoSBkNWNjNDFlOC1hMmJkLTExZWEtMzljNy1iN2RmOGRlNmFlM2UKZnVuY3Rpb24gaXNjb21wbGV0ZShzdGFja3MpCglsYXN0KHN0YWNrcykgPT0gYWxsX2Rpc2tzCmVuZAoKIyDilZTilZDilaEgNTMzNzRmMGUtYTJjMC0xMWVhLTBjOTEtOTc0NzQ3ODA3MjFlCm1kIiIiCk5vdyB0aGUgb25seSBydWxlcyBsZWZ0IHRvIGltcGxlbWVudCBhcmUgdGhlIHJ1bGVzIGZvciBtb3ZpbmcgZGlza3MuIAoKV2UgY291bGQgaW1wbGVtZW50IHRoaXMgYXMgYW5vdGhlciBjaGVjayBvbiBzdGF0ZXMsIGJ1dCBpdCdzIGVhc2llciB0byBqdXN0IHdyaXRlIGEgbGVnYWwgYG1vdmVgIGZ1bmN0aW9uLiBZb3VyIHNvbHV0aW9uIHdpbGwgc3BlY2lmeSBtb3ZlcyBmb3IgdGhlIGBtb3ZlYCBmdW5jdGlvbiwgc28gdGhpcyB3aWxsIGJlIHRoZSBvbmx5IHdheSB0aGF0IHRoZSBzdGFja3MgYXJlIGFjdHVhbGx5IG1hbmlwdWxhdGVkLiBUaGF0IHdheSwgd2UgYXJlIHN1cmUgdGhhdCBub3RoaW5nIGZpc2h5IGlzIGhhcHBlbmluZy4KCldlIHdpbGwgbWFrZSBvdXIgYG1vdmVgIGZ1bmN0aW9uIHNvIHRoYXQgaXRzIGlucHV0IGNvbnNpc3RzIG9mIGEgc3RhdGUgb2YgdGhlIGdhbWUsIGFuZCBpbnN0cnVjdGlvbnMgZm9yIHdoYXQgdG8gZG8uIEl0cyBvdXRwdXQgd2lsbCBiZSB0aGUgbmV3IHN0YXRlIG9mIHRoZSBnYW1lLgoKU28gd2hhdCBzaG91bGQgdGhvc2UgaW5zdHJ1Y3Rpb25zIGxvb2sgbGlrZT8gSXQgbWF5IHNlZW0gaW50dWl0aXZlIHRvIGdpdmUgYSBfZGlza18gdGhhdCBzaG91bGQgYmUgbW92ZWQsIGJ1dCB0aGF0J3MgbW9yZSB0aGFuIHdlIG5lZWQuIEFmdGVyIGFsbCwgd2UgYXJlIG9ubHkgYWxsb3dlZCB0byB0YWtlIHRoZSB0b3AgZGlzayBmcm9tIG9uZSBzdGFjaywgYW5kIG1vdmUgaXQgdG8gdGhlIHRvcCBvZiBhbm90aGVyLiBTbyB3ZSBvbmx5IGhhdmUgdG8gc2F5IHdoaWNoIF9zdGFja3NfIHdlIGFyZSBtb3ZpbmcgYmV0d2Vlbi4KCihOb3RlIHRoYXQgdGhlIGBtb3ZlYCBmdW5jdGlvbiBpcyBva2F5IHdpdGggbW92aW5nIGEgbGFyZ2VyIGRpc2sgb24gdG9wIG9mIGEgc21hbGxlciBkaXNrLiBXZSBhbHJlYWR5IGltcGxlbWVudGVkIHRoYXQgcmVzdHJpY3Rpb24gaW4gYGlzbGVnYWxgLikKIiIiCgojIOKVlOKVkOKVoSBlOTE1Mzk0ZS1hMmMwLTExZWEtMGNkOS0xZGY2ZmQzYzdhZGYKZnVuY3Rpb24gbW92ZShzdGFja3MsIHNvdXJjZTo6SW50LCB0YXJnZXQ6OkludCkKCSNjaGVjayBpZiB0aGUgZnJvbSBzdGFjayBpZiBub3QgZW1wdHkKCWlmIGlzZW1wdHkoc3RhY2tzW3NvdXJjZV0pCgkJZXJyb3IoIkVycm9yOiBhdHRlbXB0ZWQgdG8gbW92ZSBkaXNrIGZyb20gZW1wdHkgc3RhY2siKQoJZW5kCgkKCW5ld19zdGFja3MgPSBkZWVwY29weShzdGFja3MpCgkKCWRpc2sgPSBwb3BmaXJzdCEobmV3X3N0YWNrc1tzb3VyY2VdKSAjdGFrZSBkaXNrCglwdXNoZmlyc3QhKG5ld19zdGFja3NbdGFyZ2V0XSwgZGlzaykgI3B1dCBvbiBuZXcgc3RhY2sKCQoJcmV0dXJuIG5ld19zdGFja3MKZW5kCgojIOKVlOKVkOKVoSA4N2IyZDE2NC1hMmM0LTExZWEtMzA5NS05MTY2Mjg5NDM4NzkKbWQiIiIKIyMgU29sdmluZyB0aGUgcHJvYmxlbQoKV2UgaGF2ZSBpbXBsZW1lbnRlZCB0aGUgZ2FtZSBwaWVjZXMgYW5kIHRoZSBydWxlcywgc28geW91IGNhbiBzdGFydCB3b3JraW5nIG9uIHlvdXIgc29sdXRpb24uCgpUbyBkbyB0aGlzLCB5b3UgY2FuIGZpbGwgaW4gdGhlIGBzb2x2ZShzdGFja3MpYCBmdW5jdGlvbi4gVGhpcyBmdW5jdGlvbiBzaG91bGQgZ2l2ZSBhIHNvbHV0aW9uIGZvciB0aGUgZ2l2ZW4gYHN0YWNrc2AsIGJ5IG1vdmluZyBhbGwgdGhlIGRpc2tzIGZyb20gc3RhY2sgMSB0byBzdGFjayAzLgoKQXMgb3V0cHV0LCBgc29sdmVgIHNob3VsZCBnaXZlIGEgcmVjaXBlLCB0aGF0IHRlbGxzIHVzIHdoYXQgdG8gZG8uIFRoaXMgcmVjaXBlIHNob3VsZCBiZSBhbiBhcnJheSBvZiBtb3Zlcy4gRWFjaCBtb3ZlcyBpcyBhIGAoc291cmNlLCB0YXJnZXQpYCB0dXBsZSwgc3BlY2lmeWluZyBmcm9tIHdoaWNoIHN0YWNrIHRvIHdoaWNoIHN0YWNrIHlvdSBzaG91bGQgbW92ZS4KCkZvciBleGFtcGxlLCBpdCBtaWdodCBsb29rIGxpa2UgdGhpczoKIiIiCgojIOKVlOKVkOKVoSAyOWI0MTBjYy1hMzI5LTExZWEtMjAyYS03OTViMzFjZTVhZDUKZnVuY3Rpb24gd3Jvbmdfc29sdXRpb24oc3RhY2tzKTo6QXJyYXl7VHVwbGV7SW50LCBJbnR9fQoJcmV0dXJuIFsoMSwyKSwgKDIsMyksICgyLDEpLCAoMSwzKV0KZW5kCgojIOKVlOKVkOKVoSBlYTI0ZTc3OC1hMzJlLTExZWEtM2YxMS1kYmU5ZDM2YjEwMTEKbWQiIiIKTm93IHlvdSBjYW4gd29yayBvbiBidWlsZGluZyBhbiBhY3R1YWwgc29sdXRpb24uIFNvbWUgdGlwczoKKiBgc29sdmUoc3RhY2tzKWAgY2FuIGtlZXAgdHJhY2sgb2YgdGhlIGJvYXJkIGlmIHlvdSB3YW50LCBidXQgaXQgZG9lc24ndCBoYXZlIHRvLgoqIFRoZSBzZWN0aW9uIGJlbG93IHdpbGwgYWN0dWFsbHkgcnVuIHlvdXIgbW92ZXMsIHdoaWNoIGlzIHZlcnkgdXNlZnVsIGZvciBjaGVja2luZyB0aGVtLgoqIElmIHlvdSB3YW50LCB5b3UgY2FuIGNoYW5nZSBgbnVtX2Rpc2tzYCB0byAxIG9yIDIuIFRoYXQgY2FuIGJlIGEgZ29vZCBzdGFydGluZyBwb2ludC4KIiIiCgojIOKVlOKVkOKVoSAwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmYKZnVuY3Rpb24gc29sdmUoc3RhcnQgPSBzdGFydGluZ19zdGFja3MpOjpBcnJheXtUdXBsZXtJbnQsIEludH19CgkKCSN3aGF0IHRvIGRvPwoJCglyZXR1cm4gW10KZW5kCgojIOKVlOKVkOKVoSAzZWIzYzRjMC1hMmM1LTExZWEtMGJjYy1jOWI1MjA5NGY2NjAKbWQiIiIKIyMgQ2hlY2tpbmcgc29sdXRpb25zCgpUaGlzIGlzIHdoZXJlIHdlIGNhbiBjaGVjayBhIHNvbHV0aW9uLiBXZSBzdGFydCB3aXRoIGEgZnVuY3Rpb24gdGhhdCB0YWtlcyBvdXIgcmVjaXBlIGFuZCBydW5zIGl0LgoiIiIKCiMg4pWU4pWQ4pWhIDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZQpmdW5jdGlvbiBydW5fc29sdXRpb24oc29sdmVyOjpGdW5jdGlvbiwgc3RhcnQgPSBzdGFydGluZ19zdGFja3MpCgltb3ZlcyA9IHNvbHZlcihkZWVwY29weShzdGFydCkpICNhcHBseSB0aGUgc29sdmVyCgkKCWFsbF9zdGF0ZXMgPSBBcnJheXtBbnksMX0odW5kZWYsIGxlbmd0aChtb3ZlcykgKyAxKQoJYWxsX3N0YXRlc1sxXSA9IHN0YXJ0CgkKCWZvciAoaSwgbSkgaW4gZW51bWVyYXRlKG1vdmVzKQoJCXRyeQoJCQlhbGxfc3RhdGVzW2kgKyAxXSA9IG1vdmUoYWxsX3N0YXRlc1tpXSwgbVsxXSwgbVsyXSkKCQljYXRjaAoJCQlhbGxfc3RhdGVzW2kgKyAxXSA9IG1pc3NpbmcKCQllbmQKCWVuZAoJCglyZXR1cm4gYWxsX3N0YXRlcwplbmQKCiMg4pWU4pWQ4pWhIDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMQptZCIiIgpZb3UgY2FuIHVzZSB0aGlzIGZ1bmN0aW9uIHRvIHNlZSB3aGF0IHlvdXIgc29sdXRpb24gZG9lcy4KCklmIGBydW5fc29sdXRpb25gIHRyaWVzIHRvIG1ha2UgYW4gaW1wb3NzaWJsZSBtb3ZlLCBpdCB3aWxsIGdpdmUgYG1pc3NpbmdgIGZyb20gdGhhdCBwb2ludCBvbndhcmRzLiBMb29rIGF0IHdoYXQgaGFwcGVucyBpbiB0aGUgYHdyb25nX3NvbHV0aW9uYCB2ZXJzaW9uIGFuZCBjb21wYXJlIGl0IHRvIHRoZSBtb3ZlcyBpbiBgd3Jvbmdfc29sdXRpb25gLgoiIiIKCiMg4pWU4pWQ4pWhIGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MApydW5fc29sdXRpb24od3Jvbmdfc29sdXRpb24pCgojIOKVlOKVkOKVoSA5MTczYjE3NC1hMzI3LTExZWEtM2E2OS05Zjc1MjVmMmU3YjQKcnVuX3NvbHV0aW9uKHNvbHZlKQoKIyDilZTilZDilaEgYmI1MDg4ZWMtYTMzMC0xMWVhLTJjNDEtNmI4YjkyNzI0YjNiCm1kIiIiCk5vdyB0aGF0IHdlIGhhdmUgd2F5IHRvIHJ1biBhIHJlY2lwZSwgd2UgY2FuIGNoZWNrIGlmIGl0cyBvdXRwdXQgaXMgY29ycmVjdC4gV2Ugd2lsbCBjaGVjayBpZiBhbGwgdGhlIGludGVybWVkaWF0ZSBzdGF0ZXMgYXJlIGxlZ2FsIGFuZCB0aGUgZmluYWwgc3RhdGUgaXMgdGhlIGZpbmlzaGVkIHB1enpsZS4KIiIiCgojIOKVlOKVkOKVoSAxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMzgKZnVuY3Rpb24gY2hlY2tfc29sdXRpb24oc29sdmVyOjpGdW5jdGlvbiwgc3RhcnQgPSBzdGFydGluZ19zdGFja3MpCgl0cnkKCQkjcnVuIHRoZSBzb2x1dGlvbgoJCWFsbF9zdGF0ZXMgPSBydW5fc29sdXRpb24oc29sdmVyLCBzdGFydCkKCQkKCQkjY2hlY2sgaWYgZWFjaCBzdGF0ZSBpcyBsZWdhbAoJCWFsbF9sZWdhbCA9IGFsbChpc2xlZ2FsLCBhbGxfc3RhdGVzKQoJCQoJCSNjaGVjayBpZiB0aGUgZmluYWwgc3RhdGUgaXMgaXMgdGhlIGNvbXBsZXRlZCBwdXp6bGUKCQljb21wbGV0ZSA9IChpc2NvbXBsZXRlIOKImCBsYXN0KShhbGxfc3RhdGVzKQoJCQoJCWFsbF9sZWdhbCAmJiBjb21wbGV0ZQoJY2F0Y2gKCQkjcmV0dXJuIGZhbHNlIGlmIHdlIGVuY291bnRlcmVkIGFuIGVycm9yCgkJcmV0dXJuIGZhbHNlCgllbmQKZW5kCgojIOKVlOKVkOKVoSA4ZWE3Zjk0NC1hMzI5LTExZWEtMjJjYy00ZGJkMTFlYzA2MTAKY2hlY2tfc29sdXRpb24oc29sdmUpCgojIOKVlOKVkOKVoSBlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMzgKaWYgY2hlY2tfc29sdXRpb24oc29sdmUpCglpZiBudW1fZGlza3MgPj0gOAoJCW1kIiIiCgkJIyMjIyBDb25ncmF0dWxhdGlvbnMsIHlvdXIgc29sdXRpb24gd29ya3MhIPCfmI4KCQkiIiIKCWVsc2UKCQltZCIiIgoJCVlvdXIgc29sdXRpb24gd29ya3MgZm9yICQobnVtX2Rpc2tzKSBkaXNrcy4gQ2hhbmdlIGBudW1fZGlza3NgIHRvIHNlZSBpZiBpdCB3b3JrcyBmb3IgOCBvciBtb3JlLgoJCSIiIgoJZW5kCmVsc2UKCW1kIiIiCglUaGUgYHNvbHZlYCBmdW5jdGlvbiBkb2Vzbid0IHdvcmsgeWV0LiBLZWVwIHdvcmtpbmcgb24gaXQhCgkiIiIKZW5kCgojIOKVlOKVkOKVoSBDZWxsIG9yZGVyOgojIOKVn+KUgDViMmVlNDBlLWEyYjgtMTFlYS0wZmVmLWMzNWZlNjkxODg2MAojIOKVn+KUgDk1ZmJkMGQyLWEyYjktMTFlYS0wNjgyLWZkZjc4MzI1MTc5NwojIOKVoOKVkDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiMwojIOKVn+KUgDM1YWRhMjE0LWEzMmMtMTFlYS0wZGEzLWQ1ZDQ5NGIyODQ2NwojIOKVoOKVkDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNAojIOKVn+KUgDdlMWJhMmFjLWEyYmEtMTFlYS0wMTM0LTJmNjFlZDc1YmUxOAojIOKVoOKVkDQzNzgxYTUyLWEzMzktMTFlYS0zODAzLWU1NmUyZDA4YWE4MwojIOKVn+KUgGI2NDhhYjcwLWEyYmEtMTFlYS0yZGNjLTU1YjYzMGU0NDMyNQojIOKVoOKVkDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZAojIOKVn+KUgGUzNDdmMWRlLWEyYmItMTFlYS0wNmU3LTg3Y2NhNmYyYTI0MAojIOKVoOKVkDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YgojIOKVn+KUgGM1NmE1ODU4LWEyYmQtMTFlYS0xZDk2LTc3ZWFmNWU3NDkyNQojIOKVoOKVkGQ1Y2M0MWU4LWEyYmQtMTFlYS0zOWM3LWI3ZGY4ZGU2YWUzZQojIOKVn+KUgDUzMzc0ZjBlLWEyYzAtMTFlYS0wYzkxLTk3NDc0NzgwNzIxZQojIOKVoOKVkGU5MTUzOTRlLWEyYzAtMTFlYS0wY2Q5LTFkZjZmZDNjN2FkZgojIOKVn+KUgDg3YjJkMTY0LWEyYzQtMTFlYS0zMDk1LTkxNjYyODk0Mzg3OQojIOKVoOKVkDI5YjQxMGNjLWEzMjktMTFlYS0yMDJhLTc5NWIzMWNlNWFkNQojIOKVn+KUgGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMQojIOKVoOKVkDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZgojIOKVn+KUgDNlYjNjNGMwLWEyYzUtMTFlYS0wYmNjLWM5YjUyMDk0ZjY2MAojIOKVoOKVkDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZQojIOKVn+KUgDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMQojIOKVoOKVkGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MAojIOKVoOKVkDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNAojIOKVn+KUgGJiNTA4OGVjLWEzMzAtMTFlYS0yYzQxLTZiOGI5MjcyNGIzYgojIOKVoOKVkDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOAojIOKVoOKVkDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMAojIOKVn+KUgGU1NGFkZDBhLWEzMzAtMTFlYS0yZWViLTFkNDJmNTUyYmEzOAo=";
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.17.0";
window.pluto_statefile = "data:;base64,jqVib25kc4CsY2VsbF9yZXN1bHRz3gAc2SQzNzI4MjRiNC1hMzMwLTExZWEtMmYyNi03YjlhMWFkMDE4ZjGIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedoBWjxkaXYgY2xhc3M9Im1hcmtkb3duIj48cD5Zb3UgY2FuIHVzZSB0aGlzIGZ1bmN0aW9uIHRvIHNlZSB3aGF0IHlvdXIgc29sdXRpb24gZG9lcy48L3A+CjxwPklmIDxjb2RlPnJ1bl9zb2x1dGlvbjwvY29kZT4gdHJpZXMgdG8gbWFrZSBhbiBpbXBvc3NpYmxlIG1vdmUsIGl0IHdpbGwgZ2l2ZSA8Y29kZT5taXNzaW5nPC9jb2RlPiBmcm9tIHRoYXQgcG9pbnQgb253YXJkcy4gTG9vayBhdCB3aGF0IGhhcHBlbnMgaW4gdGhlIDxjb2RlPndyb25nX3NvbHV0aW9uPC9jb2RlPiB2ZXJzaW9uIGFuZCBjb21wYXJlIGl0IHRvIHRoZSBtb3ZlcyBpbiA8Y29kZT53cm9uZ19zb2x1dGlvbjwvY29kZT4uPC9wPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad6z7pjQrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkMzcyODI0YjQtYTMzMC0xMWVhLTJmMjYtN2I5YTFhZDAxOGYxuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNHMenZXJyb3JlZMLZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNIimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R5ozE6OLBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqnRleHQvcGxhaW6ybGFzdF9ydW5fdGltZXN0YW1wy0HYad7BLdb1rHJvb3Rhc3NpZ25lZalhbGxfZGlza3OnY2VsbF9pZNkkNzI0M2NjOGUtYTJiYS0xMWVhLTNmMjktOTkzNTZmMGNkY2Y0uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWVcp2Vycm9yZWTC2SQzZWIzYzRjMC1hMmM1LTExZWEtMGJjYy1jOWI1MjA5NGY2NjCIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedmiPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxoMj5DaGVja2luZyBzb2x1dGlvbnM8L2gyPgo8cD5UaGlzIGlzIHdoZXJlIHdlIGNhbiBjaGVjayBhIHNvbHV0aW9uLiBXZSBzdGFydCB3aXRoIGEgZnVuY3Rpb24gdGhhdCB0YWtlcyBvdXIgcmVjaXBlIGFuZCBydW5zIGl0LjwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2Gnes+6H9Kxyb290YXNzaWduZWXAp2NlbGxfaWTZJDNlYjNjNGMwLWEyYzUtMTFlYS0wYmNjLWM5YjUyMDk0ZjY2MLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzRsDp2Vycm9yZWTC2SRiYjUwODhlYy1hMzMwLTExZWEtMmM0MS02YjhiOTI3MjRiM2KIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kednTPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxwPk5vdyB0aGF0IHdlIGhhdmUgd2F5IHRvIHJ1biBhIHJlY2lwZSwgd2UgY2FuIGNoZWNrIGlmIGl0cyBvdXRwdXQgaXMgY29ycmVjdC4gV2Ugd2lsbCBjaGVjayBpZiBhbGwgdGhlIGludGVybWVkaWF0ZSBzdGF0ZXMgYXJlIGxlZ2FsIGFuZCB0aGUgZmluYWwgc3RhdGUgaXMgdGhlIGZpbmlzaGVkIHB1enpsZS48L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3rPup6Sscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SRiYjUwODhlYy1hMzMwLTExZWEtMmM0MS02YjhiOTI3MjRiM2K5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc0ReKdlcnJvcmVkwtkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNkiKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHmFpnByZWZpeKtWZWN0b3J7QW55fahlbGVtZW50c5OSAZKFpnByZWZpeKNBbnmoZWxlbWVudHOYkgGSoTGqdGV4dC9wbGFpbpICkqEyqnRleHQvcGxhaW6SA5KhM6p0ZXh0L3BsYWlukgSSoTSqdGV4dC9wbGFpbpIFkqE1qnRleHQvcGxhaW6SBpKhNqp0ZXh0L3BsYWlukgeSoTeqdGV4dC9wbGFpbpIIkqE4qnRleHQvcGxhaW6kdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksGYxNDA0YmIxMjdhZmM5NjXZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJICkoWmcHJlZml4o0FueahlbGVtZW50c5CkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDQwY2E3NWFlNDRmZjBjYmXZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJIDkoWmcHJlZml4o0FueahlbGVtZW50c5CkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDk2NjY2ZTU2ZjAzNmQ4YTbZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdKR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwMzk5NzM0NDMzYTY5Y2E2Y7BwZXJzaXN0X2pzX3N0YXRlwqRtaW1l2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SybGFzdF9ydW5fdGltZXN0YW1wy0HYad7BqPRBrHJvb3Rhc3NpZ25lZa9zdGFydGluZ19zdGFja3OnY2VsbF9pZNkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNkuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNGQenZXJyb3JlZMLZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZYimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52S5ydW5fc29sdXRpb24gKGdlbmVyaWMgZnVuY3Rpb24gd2l0aCAyIG1ldGhvZHMpsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3sHejT+scm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2W5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AAUnJp2Vycm9yZWTC2SRjNTZhNTg1OC1hMmJkLTExZWEtMWQ5Ni03N2VhZjVlNzQ5MjWIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedoBPjxkaXYgY2xhc3M9Im1hcmtkb3duIj48cD5Bbm90aGVyIGZ1bmN0aW9uIGZvciBzdGF0ZXM6IGNoZWNrIGlmIHdlIGFyZSBkb25lJiMzMzsgV2UgY2FuIGFzc3VtZSB0aGF0IHdlIGFscmVhZHkgY2hlY2tlZCBpZiB0aGUgc3RhdGUgd2FzIGxlZ2FsLiBTbyB3ZSBrbm93IHRoYXQgYWxsIHRoZSBkaXNrcyBhcmUgdGhlcmUgYW5kIHRoZXkgYXJlIG9yZGVyZWQgY29ycmVjdGx5LiAgVG8gY2hlY2sgaWYgd2UgYXJlIGZpbmlzaGVkLCB3ZSBqdXN0IG5lZWQgdG8gY2hlY2sgaWYgdGhlIGxhc3Qgc3RhY2sgY29udGFpbnMgYWxsIHRoZSBkaXNrcy48L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3rPtpjescm9vdGFzc2lnbmVlwKdjZWxsX2lk2SRjNTZhNTg1OC1hMmJkLTExZWEtMWQ5Ni03N2VhZjVlNzQ5MjW5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc0jbKdlcnJvcmVkwtkkOTVmYmQwZDItYTJiOS0xMWVhLTA2ODItZmRmNzgzMjUxNzk3iKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHnaAos8ZGl2IGNsYXNzPSJtYXJrZG93biI+PGgyPlNldHRpbmcgdXAgdGhlIGdhbWUgcGllY2VzPC9oMj4KPHA+V2hhdCBkb2VzIGEgSnVsaWEgaW1wbGVtZW50YXRpb24gbG9vayBsaWtlPyBXZSYjMzk7cmUgbm90IHJlYWxseSBpbnRlcmVzdGVkIGluIHdyaXRpbmcgY29kZSB0aGF0IHdpbGwgbWFuaXB1bGF0ZSBwaHlzaWNhbCBkaXNrcy4gT3VyIGZpbmFsIGdvYWwgaXMgYSBmdW5jdGlvbiB0aGF0IHdpbGwgZ2l2ZSB1cyBhIDxlbT5yZWNpcGU8L2VtPiB0byBzb2x2ZSB0aGUgdG93ZXIgb2YgaGFub2ksIHdoaWNoIGlzIGp1c3QgYSBsaXN0IG9mIG1vdmVzIHRvIG1ha2UuIEJlY2F1c2Ugb2YgdGhhdCwgd2UgY2FuIHVzZSBhIGxvdCBvZiBhYnN0cmFjdGlvbiBpbiBvdXIgaW1wbGVtZW50YXRpb24sIGFuZCBrZWVwIHRoZSBkYXRhIHN0cnVjdHVyZXMgYXMgc2ltcGxlIGFzIHBvc3NpYmxlLjwvcD4KPHA+VG8gc3RhcnQsIHdlIGhhdmUgdG8gZGVmaW5lIHNvbWUgcmVwcmVzZW50YXRpb24gb2YgdGhlIGRpc2tzIGFuZCB0aGUgc3RhY2tzLiBUaGUgZGlza3MgaGF2ZSBvbmUgaW1wb3J0YW50IHByb3BlcnR5LCB3aGljaCBpcyB0aGF0IHRoZXkgYXJlIG9yZGVyZWQuIFdlIGNhbiB1c2UgaW50ZWdlcnMgdG8gcmVwcmVzZW50IHRoZW0uPC9wPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad6z7TQWrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkOTVmYmQwZDItYTJiOS0xMWVhLTA2ODItZmRmNzgzMjUxNzk3uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOABeaM6dlcnJvcmVkwtkkNTEyZmE2ZDItYTJiZC0xMWVhLTNkYmUtYjkzNWI1MzY5NjdiiKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHnZKGlzbGVnYWwgKGdlbmVyaWMgZnVuY3Rpb24gd2l0aCAxIG1ldGhvZCmwcGVyc2lzdF9qc19zdGF0ZcKkbWltZap0ZXh0L3BsYWlusmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnewcOqdqxyb290YXNzaWduZWXAp2NlbGxfaWTZJDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YrlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzfvqp2Vycm9yZWTC2SQ4N2IyZDE2NC1hMmM0LTExZWEtMzA5NS05MTY2Mjg5NDM4NzmIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedoCjzxkaXYgY2xhc3M9Im1hcmtkb3duIj48aDI+U29sdmluZyB0aGUgcHJvYmxlbTwvaDI+CjxwPldlIGhhdmUgaW1wbGVtZW50ZWQgdGhlIGdhbWUgcGllY2VzIGFuZCB0aGUgcnVsZXMsIHNvIHlvdSBjYW4gc3RhcnQgd29ya2luZyBvbiB5b3VyIHNvbHV0aW9uLjwvcD4KPHA+VG8gZG8gdGhpcywgeW91IGNhbiBmaWxsIGluIHRoZSA8Y29kZT5zb2x2ZSYjNDA7c3RhY2tzJiM0MTs8L2NvZGU+IGZ1bmN0aW9uLiBUaGlzIGZ1bmN0aW9uIHNob3VsZCBnaXZlIGEgc29sdXRpb24gZm9yIHRoZSBnaXZlbiA8Y29kZT5zdGFja3M8L2NvZGU+LCBieSBtb3ZpbmcgYWxsIHRoZSBkaXNrcyBmcm9tIHN0YWNrIDEgdG8gc3RhY2sgMy48L3A+CjxwPkFzIG91dHB1dCwgPGNvZGU+c29sdmU8L2NvZGU+IHNob3VsZCBnaXZlIGEgcmVjaXBlLCB0aGF0IHRlbGxzIHVzIHdoYXQgdG8gZG8uIFRoaXMgcmVjaXBlIHNob3VsZCBiZSBhbiBhcnJheSBvZiBtb3Zlcy4gRWFjaCBtb3ZlcyBpcyBhIDxjb2RlPiYjNDA7c291cmNlLCB0YXJnZXQmIzQxOzwvY29kZT4gdHVwbGUsIHNwZWNpZnlpbmcgZnJvbSB3aGljaCBzdGFjayB0byB3aGljaCBzdGFjayB5b3Ugc2hvdWxkIG1vdmUuPC9wPgo8cD5Gb3IgZXhhbXBsZSwgaXQgbWlnaHQgbG9vayBsaWtlIHRoaXM6PC9wPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad6z7mKNrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkODdiMmQxNjQtYTJjNC0xMWVhLTMwOTUtOTE2NjI4OTQzODc5uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNNkSnZXJyb3JlZMLZJDUzMzc0ZjBlLWEyYzAtMTFlYS0wYzkxLTk3NDc0NzgwNzIxZYimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52gRePGRpdiBjbGFzcz0ibWFya2Rvd24iPjxwPk5vdyB0aGUgb25seSBydWxlcyBsZWZ0IHRvIGltcGxlbWVudCBhcmUgdGhlIHJ1bGVzIGZvciBtb3ZpbmcgZGlza3MuIDwvcD4KPHA+V2UgY291bGQgaW1wbGVtZW50IHRoaXMgYXMgYW5vdGhlciBjaGVjayBvbiBzdGF0ZXMsIGJ1dCBpdCYjMzk7cyBlYXNpZXIgdG8ganVzdCB3cml0ZSBhIGxlZ2FsIDxjb2RlPm1vdmU8L2NvZGU+IGZ1bmN0aW9uLiBZb3VyIHNvbHV0aW9uIHdpbGwgc3BlY2lmeSBtb3ZlcyBmb3IgdGhlIDxjb2RlPm1vdmU8L2NvZGU+IGZ1bmN0aW9uLCBzbyB0aGlzIHdpbGwgYmUgdGhlIG9ubHkgd2F5IHRoYXQgdGhlIHN0YWNrcyBhcmUgYWN0dWFsbHkgbWFuaXB1bGF0ZWQuIFRoYXQgd2F5LCB3ZSBhcmUgc3VyZSB0aGF0IG5vdGhpbmcgZmlzaHkgaXMgaGFwcGVuaW5nLjwvcD4KPHA+V2Ugd2lsbCBtYWtlIG91ciA8Y29kZT5tb3ZlPC9jb2RlPiBmdW5jdGlvbiBzbyB0aGF0IGl0cyBpbnB1dCBjb25zaXN0cyBvZiBhIHN0YXRlIG9mIHRoZSBnYW1lLCBhbmQgaW5zdHJ1Y3Rpb25zIGZvciB3aGF0IHRvIGRvLiBJdHMgb3V0cHV0IHdpbGwgYmUgdGhlIG5ldyBzdGF0ZSBvZiB0aGUgZ2FtZS48L3A+CjxwPlNvIHdoYXQgc2hvdWxkIHRob3NlIGluc3RydWN0aW9ucyBsb29rIGxpa2U/IEl0IG1heSBzZWVtIGludHVpdGl2ZSB0byBnaXZlIGEgPGVtPmRpc2s8L2VtPiB0aGF0IHNob3VsZCBiZSBtb3ZlZCwgYnV0IHRoYXQmIzM5O3MgbW9yZSB0aGFuIHdlIG5lZWQuIEFmdGVyIGFsbCwgd2UgYXJlIG9ubHkgYWxsb3dlZCB0byB0YWtlIHRoZSB0b3AgZGlzayBmcm9tIG9uZSBzdGFjaywgYW5kIG1vdmUgaXQgdG8gdGhlIHRvcCBvZiBhbm90aGVyLiBTbyB3ZSBvbmx5IGhhdmUgdG8gc2F5IHdoaWNoIDxlbT5zdGFja3M8L2VtPiB3ZSBhcmUgbW92aW5nIGJldHdlZW4uPC9wPgo8cD4mIzQwO05vdGUgdGhhdCB0aGUgPGNvZGU+bW92ZTwvY29kZT4gZnVuY3Rpb24gaXMgb2theSB3aXRoIG1vdmluZyBhIGxhcmdlciBkaXNrIG9uIHRvcCBvZiBhIHNtYWxsZXIgZGlzay4gV2UgYWxyZWFkeSBpbXBsZW1lbnRlZCB0aGF0IHJlc3RyaWN0aW9uIGluIDxjb2RlPmlzbGVnYWw8L2NvZGU+LiYjNDE7PC9wPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad6z7ksOrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkNTMzNzRmMGUtYTJjMC0xMWVhLTBjOTEtOTc0NzQ3ODA3MjFluWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNPR6nZXJyb3JlZMLZJDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNIimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R5haZwcmVmaXijQW55qGVsZW1lbnRzkZIBkoWmcHJlZml4q1ZlY3RvcntBbnl9qGVsZW1lbnRzk5IBkoWmcHJlZml4o0FueahlbGVtZW50c5eSAZKhMap0ZXh0L3BsYWlukgKSoTKqdGV4dC9wbGFpbpIDkqEzqnRleHQvcGxhaW6SBJKhNKp0ZXh0L3BsYWlukgWSoTWqdGV4dC9wbGFpbqRtb3JlkgiSoTiqdGV4dC9wbGFpbqR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwZjE0MDRiYjEyN2FmYzk2NdkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0kgKShaZwcmVmaXijQW55qGVsZW1lbnRzkKR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwNDBjYTc1YWU0NGZmMGNiZdkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0kgOShaZwcmVmaXijQW55qGVsZW1lbnRzkKR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwOTY2NjZlNTZmMDM2ZDhhNtkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0pHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLAzOTk3MzQ0MzNhNjljYTZj2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDk4YjY1Yzg0ZWNhZjUwODawcGVyc2lzdF9qc19zdGF0ZcKkbWltZdkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0smxhc3RfcnVuX3RpbWVzdGFtcMtB2GnewgR0VKxyb290YXNzaWduZWXAp2NlbGxfaWTZJDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgQU0a2nZXJyb3JlZMLZJGI2NDhhYjcwLWEyYmEtMTFlYS0yZGNjLTU1YjYzMGU0NDMyNYimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52Ug8ZGl2IGNsYXNzPSJtYXJrZG93biI+PHA+Tm93IHdlIGhhdmUgdG8gbWFrZSB0aHJlZSBvZiB0aG9zZS4gPC9wPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad6z7XMErHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkYjY0OGFiNzAtYTJiYS0xMWVhLTJkY2MtNTViNjMwZTQ0MzI1uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNHTKnZXJyb3JlZMLZJDI5YjQxMGNjLWEzMjktMTFlYS0yMDJhLTc5NWIzMWNlNWFkNYimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52S93cm9uZ19zb2x1dGlvbiAoZ2VuZXJpYyBmdW5jdGlvbiB3aXRoIDEgbWV0aG9kKbBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqnRleHQvcGxhaW6ybGFzdF9ydW5fdGltZXN0YW1wy0HYad7B1ZaJrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkMjliNDEwY2MtYTMyOS0xMWVhLTIwMmEtNzk1YjMxY2U1YWQ1uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNv2+nZXJyb3JlZMLZJGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMYimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52gG+PGRpdiBjbGFzcz0ibWFya2Rvd24iPjxwPk5vdyB5b3UgY2FuIHdvcmsgb24gYnVpbGRpbmcgYW4gYWN0dWFsIHNvbHV0aW9uLiBTb21lIHRpcHM6PC9wPgo8dWw+CjxsaT48cD48Y29kZT5zb2x2ZSYjNDA7c3RhY2tzJiM0MTs8L2NvZGU+IGNhbiBrZWVwIHRyYWNrIG9mIHRoZSBib2FyZCBpZiB5b3Ugd2FudCwgYnV0IGl0IGRvZXNuJiMzOTt0IGhhdmUgdG8uPC9wPgo8L2xpPgo8bGk+PHA+VGhlIHNlY3Rpb24gYmVsb3cgd2lsbCBhY3R1YWxseSBydW4geW91ciBtb3Zlcywgd2hpY2ggaXMgdmVyeSB1c2VmdWwgZm9yIGNoZWNraW5nIHRoZW0uPC9wPgo8L2xpPgo8bGk+PHA+SWYgeW91IHdhbnQsIHlvdSBjYW4gY2hhbmdlIDxjb2RlPm51bV9kaXNrczwvY29kZT4gdG8gMSBvciAyLiBUaGF0IGNhbiBiZSBhIGdvb2Qgc3RhcnRpbmcgcG9pbnQuPC9wPgo8L2xpPgo8L3VsPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad6z7nfqrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkZWEyNGU3NzgtYTMyZS0xMWVhLTNmMTEtZGJlOWQzNmIxMDExuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNOUGnZXJyb3JlZMLZJGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MIimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R5haZwcmVmaXijQW55qGVsZW1lbnRzlZIBkoWmcHJlZml4q1ZlY3RvcntBbnl9qGVsZW1lbnRzk5IBkoWmcHJlZml4o0FueahlbGVtZW50c5eSAZKhMap0ZXh0L3BsYWlukgKSoTKqdGV4dC9wbGFpbpIDkqEzqnRleHQvcGxhaW6SBJKhNKp0ZXh0L3BsYWlukgWSoTWqdGV4dC9wbGFpbqRtb3JlkgiSoTiqdGV4dC9wbGFpbqR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwZjE0MDRiYjEyN2FmYzk2NdkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0kgKShaZwcmVmaXijQW55qGVsZW1lbnRzkKR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwNDBjYTc1YWU0NGZmMGNiZdkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0kgOShaZwcmVmaXijQW55qGVsZW1lbnRzkKR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwOTY2NjZlNTZmMDM2ZDhhNtkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0pHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLAzOTk3MzQ0MzNhNjljYTZj2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SSApKFpnByZWZpeKtWZWN0b3J7QW55fahlbGVtZW50c5OSAZKFpnByZWZpeKNBbnmoZWxlbWVudHOXkgGSoTKqdGV4dC9wbGFpbpICkqEzqnRleHQvcGxhaW6SA5KhNKp0ZXh0L3BsYWlukgSSoTWqdGV4dC9wbGFpbpIFkqE2qnRleHQvcGxhaW6SBpKhN6p0ZXh0L3BsYWlukgeSoTiqdGV4dC9wbGFpbqR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwMTMyMDM5ZmJmNTgwNThiNtkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0kgKShaZwcmVmaXijQW55qGVsZW1lbnRzkZIBkqExqnRleHQvcGxhaW6kdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDYwMzg0YTRlMTI4MTZjODXZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJIDkoWmcHJlZml4o0FueahlbGVtZW50c5CkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDNhM2U5OTUyNDY4ZTEzMGHZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdKR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwOTFkMmI1MDZlZmQxMzkzZdkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0kgOShaZwcmVmaXirVmVjdG9ye0FueX2oZWxlbWVudHOTkgGShaZwcmVmaXijQW55qGVsZW1lbnRzl5IBkqEyqnRleHQvcGxhaW6SApKhM6p0ZXh0L3BsYWlukgOSoTSqdGV4dC9wbGFpbpIEkqE1qnRleHQvcGxhaW6SBZKhNqp0ZXh0L3BsYWlukgaSoTeqdGV4dC9wbGFpbpIHkqE4qnRleHQvcGxhaW6kdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDIyNTIwYWI1OTNlNDEzNjHZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJICkoWmcHJlZml4o0FueahlbGVtZW50c5CkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDlkYjIyZGMzOTM0NjJlMjPZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJIDkoWmcHJlZml4o0FueahlbGVtZW50c5GSAZKhMap0ZXh0L3BsYWlupHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZK9jMjgyMjBlZWE2MTI2NDTZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdKR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwNGJjOGU1NzA2M2JkOWI0YdkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0kgSSp21pc3NpbmeqdGV4dC9wbGFpbpIFkqdtaXNzaW5nqnRleHQvcGxhaW6kdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksGI2ZjMxZjg5M2FiZmQzNWWwcGVyc2lzdF9qc19zdGF0ZcKkbWltZdkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0smxhc3RfcnVuX3RpbWVzdGFtcMtB2GnewfrBJ6xyb290YXNzaWduZWXAp2NlbGxfaWTZJGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgU1gdqnZXJyb3JlZMLZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOIimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52TBjaGVja19zb2x1dGlvbiAoZ2VuZXJpYyBmdW5jdGlvbiB3aXRoIDIgbWV0aG9kcymwcGVyc2lzdF9qc19zdGF0ZcKkbWltZap0ZXh0L3BsYWlusmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnewgkKMaxyb290YXNzaWduZWXAp2NlbGxfaWTZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzahhp2Vycm9yZWTC2SQ1YjJlZTQwZS1hMmI4LTExZWEtMGZlZi1jMzVmZTY5MTg4NjCIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedoDsTxkaXYgY2xhc3M9Im1hcmtkb3duIj48aDE+VGhlIHRvd2VyIG9mIEhhbm9pPC9oMT4KPHA+VGhlIHRvd2VyIG9mIGhhbm9pIGlzIGEgZmFtb3VzIHB1enpsZS48L3A+CjxwPjxpbWcgc3JjPSJodHRwczovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25zLzAvMDcvVG93ZXJfb2ZfSGFub2kuanBlZyIgYWx0PSJzZXR1cCBvZiB0aGUgdG93ZXIgb2YgYSBoYW5vaSIgLz48L3A+CjxwPlRoZSBnYW1lIGNvbnNpc3RzIG9mIHRocmVlIHJvZHMgd2l0aCBkaXNrcyBzdGFja2VkIG9uIHRvcCBvZiB0aGVtLiBUaGUgcHV6emxlIHdpbGwgc3RhcnQgd2l0aCBhbGwgZGlza3MgaW4gYSBzdGFjayBvbiBvbmUgb2YgdGhlIHJvZHMgJiM0MDtsaWtlIGluIHRoZSBwaWN0dXJlJiM0MTsuIFRoZSBnb2FsIGlzIHRvIG1vdmUgYWxsIHRoZSBkaXNjcyB0byBhIHNpbmdsZSBzdGFjayBvbiB0aGUgbGFzdCByb2QuPC9wPgo8cD5UbyBtb3ZlIHRoZSBkaXNrcywgeW91IGhhdmUgdG8gZm9sbG93IHRoZSBmb2xsb3dpbmcgcnVsZXM6PC9wPgo8dWw+CjxsaT48cD5Zb3UgY2FuIG1vdmUgb25seSBvbmUgZGlzayBhdCBhIHRpbWUuPC9wPgo8L2xpPgo8bGk+PHA+Rm9yIGVhY2ggbW92ZSwgeW91IGhhdmUgdG8gdGFrZSB0aGUgdXBwZXIgZGlzayBmcm9tIG9uZSBvZiB0aGUgc3RhY2tzLCBhbmQgcGxhY2UgaXQgb24gdG9wIG9mIGFub3RoZXIgc3RhY2sgb3IgZW1wdHkgcm9kLjwvcD4KPC9saT4KPGxpPjxwPllvdSBjYW5ub3QgcGxhY2UgYSBsYXJnZXIgZGlzayBvbiB0b3Agb2YgYSBzbWFsbGVyIGRpc2suPC9wPgo8L2xpPgo8L3VsPgo8cD5UaGlzIG5vdGVib29rIHdpbGwgZGVmaW5lIGEgSnVsaWEgaW1wbGVtZW50YXRpb24gb2YgdGhlIHB1enpsZS4gSXQmIzM5O3MgdXAgdG8geW91IHRvIHdyaXRlIGFuIGFsZ29yaXRobSB0aGF0IHNvbHZlcyBpdC48L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3rPqLcescm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ1YjJlZTQwZS1hMmI4LTExZWEtMGZlZi1jMzVmZTY5MTg4NjC5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AK728p2Vycm9yZWTC2SQ3ZTFiYTJhYy1hMmJhLTExZWEtMDEzNC0yZjYxZWQ3NWJlMTiIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedmRPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxwPkEgc2luZ2xlIHN0YWNrIGNhbiBiZSByZXByZXNlbnRlZCBhcyBhbiBhcnJheSB3aXRoIGFsbCB0aGUgZGlza3MgaW4gaXQuIFdlIHdpbGwgbGlzdCB0aGVtIGZyb20gdG9wIHRvIGJvdHRvbS48L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3rPtXj6scm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ3ZTFiYTJhYy1hMmJhLTExZWEtMDEzNC0yZjYxZWQ3NWJlMTi5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc0mb6dlcnJvcmVkwtkkNjIwZDY4MzQtYTJiYS0xMWVhLTE1MGEtMjEzMmJiNTRlNGIziKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHmhOLBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqnRleHQvcGxhaW6ybGFzdF9ydW5fdGltZXN0YW1wy0HYad7BFYRFrHJvb3Rhc3NpZ25lZaludW1fZGlza3OnY2VsbF9pZNkkNjIwZDY4MzQtYTJiYS0xMWVhLTE1MGEtMjEzMmJiNTRlNGIzuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXMhadlcnJvcmVkwtkkZTU0YWRkMGEtYTMzMC0xMWVhLTJlZWItMWQ0MmY1NTJiYTM4iKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHnZcTxkaXYgY2xhc3M9Im1hcmtkb3duIj48cD5UaGUgPGNvZGU+c29sdmU8L2NvZGU+IGZ1bmN0aW9uIGRvZXNuJiMzOTt0IHdvcmsgeWV0LiBLZWVwIHdvcmtpbmcgb24gaXQmIzMzOzwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnewjdbPqxyb290YXNzaWduZWXAp2NlbGxfaWTZJGU1NGFkZDBhLWEzMzAtMTFlYS0yZWViLTFkNDJmNTUyYmEzOLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgABtL6nZXJyb3JlZMLZJDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZoimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R52Sdzb2x2ZSAoZ2VuZXJpYyBmdW5jdGlvbiB3aXRoIDIgbWV0aG9kcymwcGVyc2lzdF9qc19zdGF0ZcKkbWltZap0ZXh0L3BsYWlusmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnewdoYL6xyb290YXNzaWduZWXAp2NlbGxfaWTZJDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZrlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzcZRp2Vycm9yZWTC2SRlMzQ3ZjFkZS1hMmJiLTExZWEtMDZlNy04N2NjYTZmMmEyNDCIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedoCEzxkaXYgY2xhc3M9Im1hcmtkb3duIj48aDI+RGVmaW5pbmcgdGhlIHJ1bGVzPC9oMj4KPHA+Tm93IHRoYXQgd2UgaGF2ZSBvdXIgJnF1b3Q7Z2FtZSBib2FyZCZxdW90Oywgd2UgY2FuIGltcGxlbWVudCB0aGUgcnVsZXMuPC9wPgo8cD5UbyBzdGFydCwgd2UgbWFrZSB0d28gZnVuY3Rpb25zIGZvciBzdGF0ZXMuIEEgc3RhdGUgb2YgdGhlIGdhbWUgaXMganVzdCBhbiBhcnJheSBvZiBzdGFja3MuPC9wPgo8cD5XZSB3aWxsIGRlZmluZSBhIGZ1bmN0aW9uIHRoYXQgY2hlY2tzIGlmIGEgc3RhdGUgaXMgb2theSBhY2NvcmRpbmcgdG8gdGhlIHJ1bGVzLiBUbyBiZSBsZWdhbCwgYWxsIHRoZSBzdGFja3Mgc2hvdWxkIGJlIGluIHRoZSBjb3JyZWN0IG9yZGVyLCBzbyBubyBsYXJnZXIgZGlza3Mgb24gdG9wIG9mIHNtYWxsZXIgZGlza3MuIDwvcD4KPHA+QW5vdGhlciBnb29kIHRoaW5nIHRvIGNoZWNrOiBubyBkaXNrcyBzaG91bGQgaGF2ZSBhcHBlYXJlZCBvciBkaXNhcHBlYXJlZCBzaW5jZSB3ZSBzdGFydGVkJiMzMzs8L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3rPtjg2scm9vdGFzc2lnbmVlwKdjZWxsX2lk2SRlMzQ3ZjFkZS1hMmJiLTExZWEtMDZlNy04N2NjYTZmMmEyNDC5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc03xKdlcnJvcmVkwtkkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgziKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHmFpnByZWZpeKVJbnQ2NKhlbGVtZW50c5iSAZKhMap0ZXh0L3BsYWlukgKSoTKqdGV4dC9wbGFpbpIDkqEzqnRleHQvcGxhaW6SBJKhNKp0ZXh0L3BsYWlukgWSoTWqdGV4dC9wbGFpbpIGkqE2qnRleHQvcGxhaW6SB5KhN6p0ZXh0L3BsYWlukgiSoTiqdGV4dC9wbGFpbqR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwZjRjMWYwZDZiMTRjNmM4MLBwZXJzaXN0X2pzX3N0YXRlwqRtaW1l2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SybGFzdF9ydW5fdGltZXN0YW1wy0HYad7BbZ6ZrHJvb3Rhc3NpZ25lZatmaXJzdF9zdGFja6djZWxsX2lk2SQ0Mzc4MWE1Mi1hMzM5LTExZWEtMzgwMy1lNTZlMmQwOGFhODO5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc0NX6dlcnJvcmVkwtkkZTkxNTM5NGUtYTJjMC0xMWVhLTBjZDktMWRmNmZkM2M3YWRmiKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSFpGJvZHnZJW1vdmUgKGdlbmVyaWMgZnVuY3Rpb24gd2l0aCAxIG1ldGhvZCmwcGVyc2lzdF9qc19zdGF0ZcKkbWltZap0ZXh0L3BsYWlusmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnewdFmmaxyb290YXNzaWduZWXAp2NlbGxfaWTZJGU5MTUzOTRlLWEyYzAtMTFlYS0wY2Q5LTFkZjZmZDNjN2FkZrlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzcAFp2Vycm9yZWTC2SQzNWFkYTIxNC1hMzJjLTExZWEtMGRhMy1kNWQ0OTRiMjg0NjeIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedmhPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxwPiYjNDA7U2lkZSBub3RlOiB0aGUgbnVtYmVyIG9mIGRpc2tzIGlzIGFyYml0cmFyeS4gV2hlbiB0ZXN0aW5nIHlvdXIgZnVuY3Rpb24sIHlvdSBtYXkgd2FudCB0byBzZXQgaXQgdG8gMSBvciAyIHRvIHN0YXJ0LiYjNDE7PC9wPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad6z7Ui/rHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkMzVhZGEyMTQtYTMyYy0xMWVhLTBkYTMtZDVkNDk0YjI4NDY3uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNLzWnZXJyb3JlZMLZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMIimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0haRib2R5pWZhbHNlsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3sIk55Kscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ4ZWE3Zjk0NC1hMzI5LTExZWEtMjJjYy00ZGJkMTFlYzA2MTC5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4Pfawtp2Vycm9yZWTC2SRkNWNjNDFlOC1hMmJkLTExZWEtMzljNy1iN2RmOGRlNmFlM2WIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIWkYm9kedkraXNjb21wbGV0ZSAoZ2VuZXJpYyBmdW5jdGlvbiB3aXRoIDEgbWV0aG9kKbBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqnRleHQvcGxhaW6ybGFzdF9ydW5fdGltZXN0YW1wy0HYad7BzSSirHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkZDVjYzQxZTgtYTJiZC0xMWVhLTM5YzctYjdkZjhkZTZhZTNluWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNh5KnZXJyb3JlZMKxY2VsbF9kZXBlbmRlbmNpZXPeABzZJDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMYS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMbRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgqdAbWRfc3RykKhnZXRpbmRleJDZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNIS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNLRkb3duc3RyZWFtX2NlbGxzX21hcIGpYWxsX2Rpc2tzk9kkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgz2SQ1MTJmYTZkMi1hMmJkLTExZWEtM2RiZS1iOTM1YjUzNjk2N2LZJGQ1Y2M0MWU4LWEyYmQtMTFlYS0zOWM3LWI3ZGY4ZGU2YWUzZbJ1cHN0cmVhbV9jZWxsc19tYXCCoTqQqW51bV9kaXNrc5HZJDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiM9kkM2ViM2M0YzAtYTJjNS0xMWVhLTBiY2MtYzliNTIwOTRmNjYwhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkM2ViM2M0YzAtYTJjNS0xMWVhLTBiY2MtYzliNTIwOTRmNjYwtGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kNkkYmI1MDg4ZWMtYTMzMC0xMWVhLTJjNDEtNmI4YjkyNzI0YjNihLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkYmI1MDg4ZWMtYTMzMC0xMWVhLTJjNDEtNmI4YjkyNzI0YjNitGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kNkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNkhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNktGRvd25zdHJlYW1fY2VsbHNfbWFwga9zdGFydGluZ19zdGFja3OT2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmbZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZdkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4snVwc3RyZWFtX2NlbGxzX21hcIGrZmlyc3Rfc3RhY2uR2SQ0Mzc4MWE1Mi1hMzM5LTExZWEtMzgwMy1lNTZlMmQwOGFhODPZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZYS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZbRkb3duc3RyZWFtX2NlbGxzX21hcIGscnVuX3NvbHV0aW9uk9kkZDIyMjdiNDAtYTMyOS0xMWVhLTEwNWMtYjU4NWQ1ZmNmOTcw2SQ5MTczYjE3NC1hMzI3LTExZWEtM2E2OS05Zjc1MjVmMmU3YjTZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOLJ1cHN0cmVhbV9jZWxsc19tYXCLp21pc3NpbmeQo0FueZCoRnVuY3Rpb26Qpmxlbmd0aJCpZW51bWVyYXRlkKhkZWVwY29weZChK5CldW5kZWaQpUFycmF5kKRtb3ZlkdkkZTkxNTM5NGUtYTJjMC0xMWVhLTBjZDktMWRmNmZkM2M3YWRmr3N0YXJ0aW5nX3N0YWNrc5HZJDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZNkkYzU2YTU4NTgtYTJiZC0xMWVhLTFkOTYtNzdlYWY1ZTc0OTI1hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkYzU2YTU4NTgtYTJiZC0xMWVhLTFkOTYtNzdlYWY1ZTc0OTI1tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kNkkOTVmYmQwZDItYTJiOS0xMWVhLTA2ODItZmRmNzgzMjUxNzk3hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkOTVmYmQwZDItYTJiOS0xMWVhLTA2ODItZmRmNzgzMjUxNzk3tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kNkkNTEyZmE2ZDItYTJiZC0xMWVhLTNkYmUtYjkzNWI1MzY5NjdihLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkNTEyZmE2ZDItYTJiZC0xMWVhLTNkYmUtYjkzNWI1MzY5NjditGRvd25zdHJlYW1fY2VsbHNfbWFwgadpc2xlZ2FskdkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4snVwc3RyZWFtX2NlbGxzX21hcIWpYWxsX2Rpc2tzkdkkNzI0M2NjOGUtYTJiYS0xMWVhLTNmMjktOTkzNTZmMGNkY2Y0pHNvcnSQqGlzc29ydGVkkKI9PZCjYWxskNkkODdiMmQxNjQtYTJjNC0xMWVhLTMwOTUtOTE2NjI4OTQzODc5hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkODdiMmQxNjQtYTJjNC0xMWVhLTMwOTUtOTE2NjI4OTQzODc5tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kNkkNTMzNzRmMGUtYTJjMC0xMWVhLTBjOTEtOTc0NzQ3ODA3MjFlhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkNTMzNzRmMGUtYTJjMC0xMWVhLTBjOTEtOTc0NzQ3ODA3MjFltGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kNkkOTE3M2IxNzQtYTMyNy0xMWVhLTNhNjktOWY3NTI1ZjJlN2I0hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkOTE3M2IxNzQtYTMyNy0xMWVhLTNhNjktOWY3NTI1ZjJlN2I0tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCpXNvbHZlkdkkMDEwZGJkYmMtYTJjNS0xMWVhLTM0YzMtODM3ZWFlMTc0MTZmrHJ1bl9zb2x1dGlvbpHZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZdkkYjY0OGFiNzAtYTJiYS0xMWVhLTJkY2MtNTViNjMwZTQ0MzI1hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkYjY0OGFiNzAtYTJiYS0xMWVhLTJkY2MtNTViNjMwZTQ0MzI1tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kNkkMjliNDEwY2MtYTMyOS0xMWVhLTIwMmEtNzk1YjMxY2U1YWQ1hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkMjliNDEwY2MtYTMyOS0xMWVhLTIwMmEtNzk1YjMxY2U1YWQ1tGRvd25zdHJlYW1fY2VsbHNfbWFwga53cm9uZ19zb2x1dGlvbpHZJGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MLJ1cHN0cmVhbV9jZWxsc19tYXCDpVR1cGxlkKNJbnSQpUFycmF5kNkkZWEyNGU3NzgtYTMyZS0xMWVhLTNmMTEtZGJlOWQzNmIxMDExhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkZWEyNGU3NzgtYTMyZS0xMWVhLTNmMTEtZGJlOWQzNmIxMDExtGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kNkkZDIyMjdiNDAtYTMyOS0xMWVhLTEwNWMtYjU4NWQ1ZmNmOTcwhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkZDIyMjdiNDAtYTMyOS0xMWVhLTEwNWMtYjU4NWQ1ZmNmOTcwtGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCrndyb25nX3NvbHV0aW9ukdkkMjliNDEwY2MtYTMyOS0xMWVhLTIwMmEtNzk1YjMxY2U1YWQ1rHJ1bl9zb2x1dGlvbpHZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZdkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4tGRvd25zdHJlYW1fY2VsbHNfbWFwga5jaGVja19zb2x1dGlvbpLZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMNkkZTU0YWRkMGEtYTMzMC0xMWVhLTJlZWItMWQ0MmY1NTJiYTM4snVwc3RyZWFtX2NlbGxzX21hcIijYWxskKPiiJiQp2lzbGVnYWyR2SQ1MTJmYTZkMi1hMmJkLTExZWEtM2RiZS1iOTM1YjUzNjk2N2KqaXNjb21wbGV0ZZHZJGQ1Y2M0MWU4LWEyYmQtMTFlYS0zOWM3LWI3ZGY4ZGU2YWUzZaxydW5fc29sdXRpb26R2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2WkbGFzdJCoRnVuY3Rpb26Qr3N0YXJ0aW5nX3N0YWNrc5HZJDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZNkkNWIyZWU0MGUtYTJiOC0xMWVhLTBmZWYtYzM1ZmU2OTE4ODYwhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkNWIyZWU0MGUtYTJiOC0xMWVhLTBmZWYtYzM1ZmU2OTE4ODYwtGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kNkkN2UxYmEyYWMtYTJiYS0xMWVhLTAxMzQtMmY2MWVkNzViZTE4hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkN2UxYmEyYWMtYTJiYS0xMWVhLTAxMzQtMmY2MWVkNzViZTE4tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kNkkNjIwZDY4MzQtYTJiYS0xMWVhLTE1MGEtMjEzMmJiNTRlNGIzhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkNjIwZDY4MzQtYTJiYS0xMWVhLTE1MGEtMjEzMmJiNTRlNGIztGRvd25zdHJlYW1fY2VsbHNfbWFwgaludW1fZGlza3OS2SQ3MjQzY2M4ZS1hMmJhLTExZWEtM2YyOS05OTM1NmYwY2RjZjTZJGU1NGFkZDBhLWEzMzAtMTFlYS0yZWViLTFkNDJmNTUyYmEzOLJ1cHN0cmVhbV9jZWxsc19tYXCA2SRlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMziEtHByZWNlZGVuY2VfaGV1cmlzdGljCadjZWxsX2lk2SRlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMzi0ZG93bnN0cmVhbV9jZWxsc19tYXCAsnVwc3RyZWFtX2NlbGxzX21hcIanQG1kX3N0cpCpbnVtX2Rpc2tzkdkkNjIwZDY4MzQtYTJiYS0xMWVhLTE1MGEtMjEzMmJiNTRlNGIzoj49kK5jaGVja19zb2x1dGlvbpHZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOKVzb2x2ZZHZJDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZqhnZXRpbmRleJDZJDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZoS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZrRkb3duc3RyZWFtX2NlbGxzX21hcIGlc29sdmWT2SQ5MTczYjE3NC1hMzI3LTExZWEtM2E2OS05Zjc1MjVmMmU3YjTZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMNkkZTU0YWRkMGEtYTMzMC0xMWVhLTJlZWItMWQ0MmY1NTJiYTM4snVwc3RyZWFtX2NlbGxzX21hcISlVHVwbGWQo0ludJClQXJyYXmQr3N0YXJ0aW5nX3N0YWNrc5HZJDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZNkkZTM0N2YxZGUtYTJiYi0xMWVhLTA2ZTctODdjY2E2ZjJhMjQwhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkZTM0N2YxZGUtYTJiYi0xMWVhLTA2ZTctODdjY2E2ZjJhMjQwtGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kNkkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgzhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgztGRvd25zdHJlYW1fY2VsbHNfbWFwgatmaXJzdF9zdGFja5HZJDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZLJ1cHN0cmVhbV9jZWxsc19tYXCCp2NvbGxlY3SQqWFsbF9kaXNrc5HZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNNkkZTkxNTM5NGUtYTJjMC0xMWVhLTBjZDktMWRmNmZkM2M3YWRmhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkZTkxNTM5NGUtYTJjMC0xMWVhLTBjZDktMWRmNmZkM2M3YWRmtGRvd25zdHJlYW1fY2VsbHNfbWFwgaRtb3ZlkdkkNDcwOWRiMzYtYTMyNy0xMWVhLTEzYTMtYmJmYjE4ZGE4NGNlsnVwc3RyZWFtX2NlbGxzX21hcIaqcHVzaGZpcnN0IZCoZGVlcGNvcHmQpWVycm9ykKNJbnSQp2lzZW1wdHmQqXBvcGZpcnN0IZDZJDM1YWRhMjE0LWEzMmMtMTFlYS0wZGEzLWQ1ZDQ5NGIyODQ2N4S0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDM1YWRhMjE0LWEzMmMtMTFlYS0wZGEzLWQ1ZDQ5NGIyODQ2N7Rkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgqdAbWRfc3RykKhnZXRpbmRleJDZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMIS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMLRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgq5jaGVja19zb2x1dGlvbpHZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOKVzb2x2ZZHZJDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZtkkZDVjYzQxZTgtYTJiZC0xMWVhLTM5YzctYjdkZjhkZTZhZTNlhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkZDVjYzQxZTgtYTJiZC0xMWVhLTM5YzctYjdkZjhkZTZhZTNltGRvd25zdHJlYW1fY2VsbHNfbWFwgappc2NvbXBsZXRlkdkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4snVwc3RyZWFtX2NlbGxzX21hcIOkbGFzdJCiPT2QqWFsbF9kaXNrc5HZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNLRjZWxsX2V4ZWN1dGlvbl9vcmRlctwAHNkkNWIyZWU0MGUtYTJiOC0xMWVhLTBmZWYtYzM1ZmU2OTE4ODYw2SQ5NWZiZDBkMi1hMmI5LTExZWEtMDY4Mi1mZGY3ODMyNTE3OTfZJDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiM9kkMzVhZGEyMTQtYTMyYy0xMWVhLTBkYTMtZDVkNDk0YjI4NDY32SQ3MjQzY2M4ZS1hMmJhLTExZWEtM2YyOS05OTM1NmYwY2RjZjTZJDdlMWJhMmFjLWEyYmEtMTFlYS0wMTM0LTJmNjFlZDc1YmUxONkkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgz2SRiNjQ4YWI3MC1hMmJhLTExZWEtMmRjYy01NWI2MzBlNDQzMjXZJDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZNkkZTM0N2YxZGUtYTJiYi0xMWVhLTA2ZTctODdjY2E2ZjJhMjQw2SQ1MTJmYTZkMi1hMmJkLTExZWEtM2RiZS1iOTM1YjUzNjk2N2LZJGM1NmE1ODU4LWEyYmQtMTFlYS0xZDk2LTc3ZWFmNWU3NDkyNdkkZDVjYzQxZTgtYTJiZC0xMWVhLTM5YzctYjdkZjhkZTZhZTNl2SQ1MzM3NGYwZS1hMmMwLTExZWEtMGM5MS05NzQ3NDc4MDcyMWXZJGU5MTUzOTRlLWEyYzAtMTFlYS0wY2Q5LTFkZjZmZDNjN2FkZtkkODdiMmQxNjQtYTJjNC0xMWVhLTMwOTUtOTE2NjI4OTQzODc52SQyOWI0MTBjYy1hMzI5LTExZWEtMjAyYS03OTViMzFjZTVhZDXZJGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMdkkMDEwZGJkYmMtYTJjNS0xMWVhLTM0YzMtODM3ZWFlMTc0MTZm2SQzZWIzYzRjMC1hMmM1LTExZWEtMGJjYy1jOWI1MjA5NGY2NjDZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZdkkMzcyODI0YjQtYTMzMC0xMWVhLTJmMjYtN2I5YTFhZDAxOGYx2SRkMjIyN2I0MC1hMzI5LTExZWEtMTA1Yy1iNTg1ZDVmY2Y5NzDZJDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNNkkYmI1MDg4ZWMtYTMzMC0xMWVhLTJjNDEtNmI4YjkyNzI0YjNi2SQxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMzjZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMNkkZTU0YWRkMGEtYTMzMC0xMWVhLTJlZWItMWQ0MmY1NTJiYTM4tGxhc3RfaG90X3JlbG9hZF90aW1lywAAAAAAAAAAqXNob3J0cGF0aLhzYW1wbGUgVG93ZXIgb2YgSGFub2kuamyucHJvY2Vzc19zdGF0dXOlcmVhZHmkcGF0aNk3L3Nydi9qdWxpYS9wa2cvcGx1dG9fbm90ZWJvb2tzL3NhbXBsZSBUb3dlciBvZiBIYW5vaS5qbK5sYXN0X3NhdmVfdGltZctB2GnewA3SZ6pjZWxsX29yZGVy3AAc2SQ1YjJlZTQwZS1hMmI4LTExZWEtMGZlZi1jMzVmZTY5MTg4NjDZJDk1ZmJkMGQyLWEyYjktMTFlYS0wNjgyLWZkZjc4MzI1MTc5N9kkNjIwZDY4MzQtYTJiYS0xMWVhLTE1MGEtMjEzMmJiNTRlNGIz2SQzNWFkYTIxNC1hMzJjLTExZWEtMGRhMy1kNWQ0OTRiMjg0NjfZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNNkkN2UxYmEyYWMtYTJiYS0xMWVhLTAxMzQtMmY2MWVkNzViZTE42SQ0Mzc4MWE1Mi1hMzM5LTExZWEtMzgwMy1lNTZlMmQwOGFhODPZJGI2NDhhYjcwLWEyYmEtMTFlYS0yZGNjLTU1YjYzMGU0NDMyNdkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNk2SRlMzQ3ZjFkZS1hMmJiLTExZWEtMDZlNy04N2NjYTZmMmEyNDDZJDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YtkkYzU2YTU4NTgtYTJiZC0xMWVhLTFkOTYtNzdlYWY1ZTc0OTI12SRkNWNjNDFlOC1hMmJkLTExZWEtMzljNy1iN2RmOGRlNmFlM2XZJDUzMzc0ZjBlLWEyYzAtMTFlYS0wYzkxLTk3NDc0NzgwNzIxZdkkZTkxNTM5NGUtYTJjMC0xMWVhLTBjZDktMWRmNmZkM2M3YWRm2SQ4N2IyZDE2NC1hMmM0LTExZWEtMzA5NS05MTY2Mjg5NDM4NznZJDI5YjQxMGNjLWEzMjktMTFlYS0yMDJhLTc5NWIzMWNlNWFkNdkkZWEyNGU3NzgtYTMyZS0xMWVhLTNmMTEtZGJlOWQzNmIxMDEx2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmbZJDNlYjNjNGMwLWEyYzUtMTFlYS0wYmNjLWM5YjUyMDk0ZjY2MNkkNDcwOWRiMzYtYTMyNy0xMWVhLTEzYTMtYmJmYjE4ZGE4NGNl2SQzNzI4MjRiNC1hMzMwLTExZWEtMmYyNi03YjlhMWFkMDE4ZjHZJGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MNkkOTE3M2IxNzQtYTMyNy0xMWVhLTNhNjktOWY3NTI1ZjJlN2I02SRiYjUwODhlYy1hMzMwLTExZWEtMmM0MS02YjhiOTI3MjRiM2LZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzONkkOGVhN2Y5NDQtYTMyOS0xMWVhLTIyY2MtNGRiZDExZWMwNjEw2SRlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMzilbmJwa2eHsmluc3RhbGxlZF92ZXJzaW9uc4CwdGVybWluYWxfb3V0cHV0c4CnZW5hYmxlZMO3cmVzdGFydF9yZWNvbW1lbmRlZF9tc2fAtHJlc3RhcnRfcmVxdWlyZWRfbXNnwK1idXN5X3BhY2thZ2VzkKxpbnN0YW50aWF0ZWTDq2NlbGxfaW5wdXRz3gAc2SQzNzI4MjRiNC1hMzMwLTExZWEtMmYyNi03YjlhMWFkMDE4ZjGEp2NlbGxfaWTZJDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMbBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2gEObWQiIiIKWW91IGNhbiB1c2UgdGhpcyBmdW5jdGlvbiB0byBzZWUgd2hhdCB5b3VyIHNvbHV0aW9uIGRvZXMuCgpJZiBgcnVuX3NvbHV0aW9uYCB0cmllcyB0byBtYWtlIGFuIGltcG9zc2libGUgbW92ZSwgaXQgd2lsbCBnaXZlIGBtaXNzaW5nYCBmcm9tIHRoYXQgcG9pbnQgb253YXJkcy4gTG9vayBhdCB3aGF0IGhhcHBlbnMgaW4gdGhlIGB3cm9uZ19zb2x1dGlvbmAgdmVyc2lvbiBhbmQgY29tcGFyZSBpdCB0byB0aGUgbW92ZXMgaW4gYHdyb25nX3NvbHV0aW9uYC4KIiIiq2NvZGVfZm9sZGVkw9kkNzI0M2NjOGUtYTJiYS0xMWVhLTNmMjktOTkzNTZmMGNkY2Y0hKdjZWxsX2lk2SQ3MjQzY2M4ZS1hMmJhLTExZWEtM2YyOS05OTM1NmYwY2RjZjSwcnVubmluZ19kaXNhYmxlZMKkY29kZbdhbGxfZGlza3MgPSAxOm51bV9kaXNrc6tjb2RlX2ZvbGRlZMLZJDNlYjNjNGMwLWEyYzUtMTFlYS0wYmNjLWM5YjUyMDk0ZjY2MISnY2VsbF9pZNkkM2ViM2M0YzAtYTJjNS0xMWVhLTBiY2MtYzliNTIwOTRmNjYwsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXZg21kIiIiCiMjIENoZWNraW5nIHNvbHV0aW9ucwoKVGhpcyBpcyB3aGVyZSB3ZSBjYW4gY2hlY2sgYSBzb2x1dGlvbi4gV2Ugc3RhcnQgd2l0aCBhIGZ1bmN0aW9uIHRoYXQgdGFrZXMgb3VyIHJlY2lwZSBhbmQgcnVucyBpdC4KIiIiq2NvZGVfZm9sZGVkw9kkYmI1MDg4ZWMtYTMzMC0xMWVhLTJjNDEtNmI4YjkyNzI0YjNihKdjZWxsX2lk2SRiYjUwODhlYy1hMzMwLTExZWEtMmM0MS02YjhiOTI3MjRiM2KwcnVubmluZ19kaXNhYmxlZMKkY29kZdm5bWQiIiIKTm93IHRoYXQgd2UgaGF2ZSB3YXkgdG8gcnVuIGEgcmVjaXBlLCB3ZSBjYW4gY2hlY2sgaWYgaXRzIG91dHB1dCBpcyBjb3JyZWN0LiBXZSB3aWxsIGNoZWNrIGlmIGFsbCB0aGUgaW50ZXJtZWRpYXRlIHN0YXRlcyBhcmUgbGVnYWwgYW5kIHRoZSBmaW5hbCBzdGF0ZSBpcyB0aGUgZmluaXNoZWQgcHV6emxlLgoiIiKrY29kZV9mb2xkZWTD2SQzMmYyNmY4MC1hMmJiLTExZWEtMGYyYS0zZmM2MzFhZGE2M2SEp2NlbGxfaWTZJDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZLBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2SdzdGFydGluZ19zdGFja3MgPSBbZmlyc3Rfc3RhY2ssIFtdLCBbXV2rY29kZV9mb2xkZWTC2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2WEp2NlbGxfaWTZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZbBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2gFrZnVuY3Rpb24gcnVuX3NvbHV0aW9uKHNvbHZlcjo6RnVuY3Rpb24sIHN0YXJ0ID0gc3RhcnRpbmdfc3RhY2tzKQoJbW92ZXMgPSBzb2x2ZXIoZGVlcGNvcHkoc3RhcnQpKSAjYXBwbHkgdGhlIHNvbHZlcgoJCglhbGxfc3RhdGVzID0gQXJyYXl7QW55LDF9KHVuZGVmLCBsZW5ndGgobW92ZXMpICsgMSkKCWFsbF9zdGF0ZXNbMV0gPSBzdGFydAoJCglmb3IgKGksIG0pIGluIGVudW1lcmF0ZShtb3ZlcykKCQl0cnkKCQkJYWxsX3N0YXRlc1tpICsgMV0gPSBtb3ZlKGFsbF9zdGF0ZXNbaV0sIG1bMV0sIG1bMl0pCgkJY2F0Y2gKCQkJYWxsX3N0YXRlc1tpICsgMV0gPSBtaXNzaW5nCgkJZW5kCgllbmQKCQoJcmV0dXJuIGFsbF9zdGF0ZXMKZW5kq2NvZGVfZm9sZGVkwtkkYzU2YTU4NTgtYTJiZC0xMWVhLTFkOTYtNzdlYWY1ZTc0OTI1hKdjZWxsX2lk2SRjNTZhNTg1OC1hMmJkLTExZWEtMWQ5Ni03N2VhZjVlNzQ5MjWwcnVubmluZ19kaXNhYmxlZMKkY29kZdoBIG1kIiIiCkFub3RoZXIgZnVuY3Rpb24gZm9yIHN0YXRlczogY2hlY2sgaWYgd2UgYXJlIGRvbmUhIFdlIGNhbiBhc3N1bWUgdGhhdCB3ZSBhbHJlYWR5IGNoZWNrZWQgaWYgdGhlIHN0YXRlIHdhcyBsZWdhbC4gU28gd2Uga25vdyB0aGF0IGFsbCB0aGUgZGlza3MgYXJlIHRoZXJlIGFuZCB0aGV5IGFyZSBvcmRlcmVkIGNvcnJlY3RseS4gIFRvIGNoZWNrIGlmIHdlIGFyZSBmaW5pc2hlZCwgd2UganVzdCBuZWVkIHRvIGNoZWNrIGlmIHRoZSBsYXN0IHN0YWNrIGNvbnRhaW5zIGFsbCB0aGUgZGlza3MuCiIiIqtjb2RlX2ZvbGRlZMPZJDk1ZmJkMGQyLWEyYjktMTFlYS0wNjgyLWZkZjc4MzI1MTc5N4SnY2VsbF9pZNkkOTVmYmQwZDItYTJiOS0xMWVhLTA2ODItZmRmNzgzMjUxNzk3sHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaAlttZCIiIgojIyBTZXR0aW5nIHVwIHRoZSBnYW1lIHBpZWNlcwoKV2hhdCBkb2VzIGEgSnVsaWEgaW1wbGVtZW50YXRpb24gbG9vayBsaWtlPyBXZSdyZSBub3QgcmVhbGx5IGludGVyZXN0ZWQgaW4gd3JpdGluZyBjb2RlIHRoYXQgd2lsbCBtYW5pcHVsYXRlIHBoeXNpY2FsIGRpc2tzLiBPdXIgZmluYWwgZ29hbCBpcyBhIGZ1bmN0aW9uIHRoYXQgd2lsbCBnaXZlIHVzIGEgX3JlY2lwZV8gdG8gc29sdmUgdGhlIHRvd2VyIG9mIGhhbm9pLCB3aGljaCBpcyBqdXN0IGEgbGlzdCBvZiBtb3ZlcyB0byBtYWtlLiBCZWNhdXNlIG9mIHRoYXQsIHdlIGNhbiB1c2UgYSBsb3Qgb2YgYWJzdHJhY3Rpb24gaW4gb3VyIGltcGxlbWVudGF0aW9uLCBhbmQga2VlcCB0aGUgZGF0YSBzdHJ1Y3R1cmVzIGFzIHNpbXBsZSBhcyBwb3NzaWJsZS4KClRvIHN0YXJ0LCB3ZSBoYXZlIHRvIGRlZmluZSBzb21lIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBkaXNrcyBhbmQgdGhlIHN0YWNrcy4gVGhlIGRpc2tzIGhhdmUgb25lIGltcG9ydGFudCBwcm9wZXJ0eSwgd2hpY2ggaXMgdGhhdCB0aGV5IGFyZSBvcmRlcmVkLiBXZSBjYW4gdXNlIGludGVnZXJzIHRvIHJlcHJlc2VudCB0aGVtLgoiIiKrY29kZV9mb2xkZWTD2SQ1MTJmYTZkMi1hMmJkLTExZWEtM2RiZS1iOTM1YjUzNjk2N2KEp2NlbGxfaWTZJDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YrBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2gEWZnVuY3Rpb24gaXNsZWdhbChzdGFja3MpCglvcmRlcl9jb3JyZWN0ID0gYWxsKGlzc29ydGVkLCBzdGFja3MpCgkKCSNjaGVjayBpZiB3ZSB1c2UgdGhlIHNhbWUgZGlzayBzZXQgdGhhdCB3ZSBzdGFydGVkIHdpdGgKCQoJZGlza3NfaW5fc3RhdGUgPSBzb3J0KFtkaXNrIGZvciBzdGFjayBpbiBzdGFja3MgZm9yIGRpc2sgaW4gc3RhY2tdKQoJZGlza3NfY29tcGxldGUgPSBkaXNrc19pbl9zdGF0ZSA9PSBhbGxfZGlza3MKCQoJb3JkZXJfY29ycmVjdCAmJiBkaXNrc19jb21wbGV0ZQplbmSrY29kZV9mb2xkZWTC2SQ4N2IyZDE2NC1hMmM0LTExZWEtMzA5NS05MTY2Mjg5NDM4NzmEp2NlbGxfaWTZJDg3YjJkMTY0LWEyYzQtMTFlYS0zMDk1LTkxNjYyODk0Mzg3ObBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2gIibWQiIiIKIyMgU29sdmluZyB0aGUgcHJvYmxlbQoKV2UgaGF2ZSBpbXBsZW1lbnRlZCB0aGUgZ2FtZSBwaWVjZXMgYW5kIHRoZSBydWxlcywgc28geW91IGNhbiBzdGFydCB3b3JraW5nIG9uIHlvdXIgc29sdXRpb24uCgpUbyBkbyB0aGlzLCB5b3UgY2FuIGZpbGwgaW4gdGhlIGBzb2x2ZShzdGFja3MpYCBmdW5jdGlvbi4gVGhpcyBmdW5jdGlvbiBzaG91bGQgZ2l2ZSBhIHNvbHV0aW9uIGZvciB0aGUgZ2l2ZW4gYHN0YWNrc2AsIGJ5IG1vdmluZyBhbGwgdGhlIGRpc2tzIGZyb20gc3RhY2sgMSB0byBzdGFjayAzLgoKQXMgb3V0cHV0LCBgc29sdmVgIHNob3VsZCBnaXZlIGEgcmVjaXBlLCB0aGF0IHRlbGxzIHVzIHdoYXQgdG8gZG8uIFRoaXMgcmVjaXBlIHNob3VsZCBiZSBhbiBhcnJheSBvZiBtb3Zlcy4gRWFjaCBtb3ZlcyBpcyBhIGAoc291cmNlLCB0YXJnZXQpYCB0dXBsZSwgc3BlY2lmeWluZyBmcm9tIHdoaWNoIHN0YWNrIHRvIHdoaWNoIHN0YWNrIHlvdSBzaG91bGQgbW92ZS4KCkZvciBleGFtcGxlLCBpdCBtaWdodCBsb29rIGxpa2UgdGhpczoKIiIiq2NvZGVfZm9sZGVkw9kkNTMzNzRmMGUtYTJjMC0xMWVhLTBjOTEtOTc0NzQ3ODA3MjFlhKdjZWxsX2lk2SQ1MzM3NGYwZS1hMmMwLTExZWEtMGM5MS05NzQ3NDc4MDcyMWWwcnVubmluZ19kaXNhYmxlZMKkY29kZdoD121kIiIiCk5vdyB0aGUgb25seSBydWxlcyBsZWZ0IHRvIGltcGxlbWVudCBhcmUgdGhlIHJ1bGVzIGZvciBtb3ZpbmcgZGlza3MuIAoKV2UgY291bGQgaW1wbGVtZW50IHRoaXMgYXMgYW5vdGhlciBjaGVjayBvbiBzdGF0ZXMsIGJ1dCBpdCdzIGVhc2llciB0byBqdXN0IHdyaXRlIGEgbGVnYWwgYG1vdmVgIGZ1bmN0aW9uLiBZb3VyIHNvbHV0aW9uIHdpbGwgc3BlY2lmeSBtb3ZlcyBmb3IgdGhlIGBtb3ZlYCBmdW5jdGlvbiwgc28gdGhpcyB3aWxsIGJlIHRoZSBvbmx5IHdheSB0aGF0IHRoZSBzdGFja3MgYXJlIGFjdHVhbGx5IG1hbmlwdWxhdGVkLiBUaGF0IHdheSwgd2UgYXJlIHN1cmUgdGhhdCBub3RoaW5nIGZpc2h5IGlzIGhhcHBlbmluZy4KCldlIHdpbGwgbWFrZSBvdXIgYG1vdmVgIGZ1bmN0aW9uIHNvIHRoYXQgaXRzIGlucHV0IGNvbnNpc3RzIG9mIGEgc3RhdGUgb2YgdGhlIGdhbWUsIGFuZCBpbnN0cnVjdGlvbnMgZm9yIHdoYXQgdG8gZG8uIEl0cyBvdXRwdXQgd2lsbCBiZSB0aGUgbmV3IHN0YXRlIG9mIHRoZSBnYW1lLgoKU28gd2hhdCBzaG91bGQgdGhvc2UgaW5zdHJ1Y3Rpb25zIGxvb2sgbGlrZT8gSXQgbWF5IHNlZW0gaW50dWl0aXZlIHRvIGdpdmUgYSBfZGlza18gdGhhdCBzaG91bGQgYmUgbW92ZWQsIGJ1dCB0aGF0J3MgbW9yZSB0aGFuIHdlIG5lZWQuIEFmdGVyIGFsbCwgd2UgYXJlIG9ubHkgYWxsb3dlZCB0byB0YWtlIHRoZSB0b3AgZGlzayBmcm9tIG9uZSBzdGFjaywgYW5kIG1vdmUgaXQgdG8gdGhlIHRvcCBvZiBhbm90aGVyLiBTbyB3ZSBvbmx5IGhhdmUgdG8gc2F5IHdoaWNoIF9zdGFja3NfIHdlIGFyZSBtb3ZpbmcgYmV0d2Vlbi4KCihOb3RlIHRoYXQgdGhlIGBtb3ZlYCBmdW5jdGlvbiBpcyBva2F5IHdpdGggbW92aW5nIGEgbGFyZ2VyIGRpc2sgb24gdG9wIG9mIGEgc21hbGxlciBkaXNrLiBXZSBhbHJlYWR5IGltcGxlbWVudGVkIHRoYXQgcmVzdHJpY3Rpb24gaW4gYGlzbGVnYWxgLikKIiIiq2NvZGVfZm9sZGVkw9kkOTE3M2IxNzQtYTMyNy0xMWVhLTNhNjktOWY3NTI1ZjJlN2I0hKdjZWxsX2lk2SQ5MTczYjE3NC1hMzI3LTExZWEtM2E2OS05Zjc1MjVmMmU3YjSwcnVubmluZ19kaXNhYmxlZMKkY29kZbNydW5fc29sdXRpb24oc29sdmUpq2NvZGVfZm9sZGVkwtkkYjY0OGFiNzAtYTJiYS0xMWVhLTJkY2MtNTViNjMwZTQ0MzI1hKdjZWxsX2lk2SRiNjQ4YWI3MC1hMmJhLTExZWEtMmRjYy01NWI2MzBlNDQzMjWwcnVubmluZ19kaXNhYmxlZMKkY29kZdkubWQiIiIKTm93IHdlIGhhdmUgdG8gbWFrZSB0aHJlZSBvZiB0aG9zZS4gCiIiIqtjb2RlX2ZvbGRlZMPZJDI5YjQxMGNjLWEzMjktMTFlYS0yMDJhLTc5NWIzMWNlNWFkNYSnY2VsbF9pZNkkMjliNDEwY2MtYTMyOS0xMWVhLTIwMmEtNzk1YjMxY2U1YWQ1sHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXZYGZ1bmN0aW9uIHdyb25nX3NvbHV0aW9uKHN0YWNrcyk6OkFycmF5e1R1cGxle0ludCwgSW50fX0KCXJldHVybiBbKDEsMiksICgyLDMpLCAoMiwxKSwgKDEsMyldCmVuZKtjb2RlX2ZvbGRlZMLZJGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMYSnY2VsbF9pZNkkZWEyNGU3NzgtYTMyZS0xMWVhLTNmMTEtZGJlOWQzNmIxMDExsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaAUptZCIiIgpOb3cgeW91IGNhbiB3b3JrIG9uIGJ1aWxkaW5nIGFuIGFjdHVhbCBzb2x1dGlvbi4gU29tZSB0aXBzOgoqIGBzb2x2ZShzdGFja3MpYCBjYW4ga2VlcCB0cmFjayBvZiB0aGUgYm9hcmQgaWYgeW91IHdhbnQsIGJ1dCBpdCBkb2Vzbid0IGhhdmUgdG8uCiogVGhlIHNlY3Rpb24gYmVsb3cgd2lsbCBhY3R1YWxseSBydW4geW91ciBtb3Zlcywgd2hpY2ggaXMgdmVyeSB1c2VmdWwgZm9yIGNoZWNraW5nIHRoZW0uCiogSWYgeW91IHdhbnQsIHlvdSBjYW4gY2hhbmdlIGBudW1fZGlza3NgIHRvIDEgb3IgMi4gVGhhdCBjYW4gYmUgYSBnb29kIHN0YXJ0aW5nIHBvaW50LgoiIiKrY29kZV9mb2xkZWTD2SRkMjIyN2I0MC1hMzI5LTExZWEtMTA1Yy1iNTg1ZDVmY2Y5NzCEp2NlbGxfaWTZJGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MLBydW5uaW5nX2Rpc2FibGVkwqRjb2RlvHJ1bl9zb2x1dGlvbih3cm9uZ19zb2x1dGlvbimrY29kZV9mb2xkZWTC2SQxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMziEp2NlbGxfaWTZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOLBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2gGeZnVuY3Rpb24gY2hlY2tfc29sdXRpb24oc29sdmVyOjpGdW5jdGlvbiwgc3RhcnQgPSBzdGFydGluZ19zdGFja3MpCgl0cnkKCQkjcnVuIHRoZSBzb2x1dGlvbgoJCWFsbF9zdGF0ZXMgPSBydW5fc29sdXRpb24oc29sdmVyLCBzdGFydCkKCQkKCQkjY2hlY2sgaWYgZWFjaCBzdGF0ZSBpcyBsZWdhbAoJCWFsbF9sZWdhbCA9IGFsbChpc2xlZ2FsLCBhbGxfc3RhdGVzKQoJCQoJCSNjaGVjayBpZiB0aGUgZmluYWwgc3RhdGUgaXMgaXMgdGhlIGNvbXBsZXRlZCBwdXp6bGUKCQljb21wbGV0ZSA9IChpc2NvbXBsZXRlIOKImCBsYXN0KShhbGxfc3RhdGVzKQoJCQoJCWFsbF9sZWdhbCAmJiBjb21wbGV0ZQoJY2F0Y2gKCQkjcmV0dXJuIGZhbHNlIGlmIHdlIGVuY291bnRlcmVkIGFuIGVycm9yCgkJcmV0dXJuIGZhbHNlCgllbmQKZW5kq2NvZGVfZm9sZGVkwtkkNWIyZWU0MGUtYTJiOC0xMWVhLTBmZWYtYzM1ZmU2OTE4ODYwhKdjZWxsX2lk2SQ1YjJlZTQwZS1hMmI4LTExZWEtMGZlZi1jMzVmZTY5MTg4NjCwcnVubmluZ19kaXNhYmxlZMKkY29kZdoDJm1kIiIiCiMgVGhlIHRvd2VyIG9mIEhhbm9pCgpUaGUgdG93ZXIgb2YgaGFub2kgaXMgYSBmYW1vdXMgcHV6emxlLgoKIVtzZXR1cCBvZiB0aGUgdG93ZXIgb2YgYSBoYW5vaV0oaHR0cHM6Ly91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy8wLzA3L1Rvd2VyX29mX0hhbm9pLmpwZWcpCgpUaGUgZ2FtZSBjb25zaXN0cyBvZiB0aHJlZSByb2RzIHdpdGggZGlza3Mgc3RhY2tlZCBvbiB0b3Agb2YgdGhlbS4gVGhlIHB1enpsZSB3aWxsIHN0YXJ0IHdpdGggYWxsIGRpc2tzIGluIGEgc3RhY2sgb24gb25lIG9mIHRoZSByb2RzIChsaWtlIGluIHRoZSBwaWN0dXJlKS4gVGhlIGdvYWwgaXMgdG8gbW92ZSBhbGwgdGhlIGRpc2NzIHRvIGEgc2luZ2xlIHN0YWNrIG9uIHRoZSBsYXN0IHJvZC4KClRvIG1vdmUgdGhlIGRpc2tzLCB5b3UgaGF2ZSB0byBmb2xsb3cgdGhlIGZvbGxvd2luZyBydWxlczoKCiogWW91IGNhbiBtb3ZlIG9ubHkgb25lIGRpc2sgYXQgYSB0aW1lLgoqIEZvciBlYWNoIG1vdmUsIHlvdSBoYXZlIHRvIHRha2UgdGhlIHVwcGVyIGRpc2sgZnJvbSBvbmUgb2YgdGhlIHN0YWNrcywgYW5kIHBsYWNlIGl0IG9uIHRvcCBvZiBhbm90aGVyIHN0YWNrIG9yIGVtcHR5IHJvZC4KKiBZb3UgY2Fubm90IHBsYWNlIGEgbGFyZ2VyIGRpc2sgb24gdG9wIG9mIGEgc21hbGxlciBkaXNrLgoKVGhpcyBub3RlYm9vayB3aWxsIGRlZmluZSBhIEp1bGlhIGltcGxlbWVudGF0aW9uIG9mIHRoZSBwdXp6bGUuIEl0J3MgdXAgdG8geW91IHRvIHdyaXRlIGFuIGFsZ29yaXRobSB0aGF0IHNvbHZlcyBpdC4KIiIiq2NvZGVfZm9sZGVkw9kkN2UxYmEyYWMtYTJiYS0xMWVhLTAxMzQtMmY2MWVkNzViZTE4hKdjZWxsX2lk2SQ3ZTFiYTJhYy1hMmJhLTExZWEtMDEzNC0yZjYxZWQ3NWJlMTiwcnVubmluZ19kaXNhYmxlZMKkY29kZdl3bWQiIiIKQSBzaW5nbGUgc3RhY2sgY2FuIGJlIHJlcHJlc2VudGVkIGFzIGFuIGFycmF5IHdpdGggYWxsIHRoZSBkaXNrcyBpbiBpdC4gV2Ugd2lsbCBsaXN0IHRoZW0gZnJvbSB0b3AgdG8gYm90dG9tLgoiIiKrY29kZV9mb2xkZWTD2SQ2MjBkNjgzNC1hMmJhLTExZWEtMTUwYS0yMTMyYmI1NGU0YjOEp2NlbGxfaWTZJDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiM7BydW5uaW5nX2Rpc2FibGVkwqRjb2RlrW51bV9kaXNrcyA9IDirY29kZV9mb2xkZWTC2SRlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMziEp2NlbGxfaWTZJGU1NGFkZDBhLWEzMzAtMTFlYS0yZWViLTFkNDJmNTUyYmEzOLBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2gE4aWYgY2hlY2tfc29sdXRpb24oc29sdmUpCglpZiBudW1fZGlza3MgPj0gOAoJCW1kIiIiCgkJIyMjIyBDb25ncmF0dWxhdGlvbnMsIHlvdXIgc29sdXRpb24gd29ya3MhIPCfmI4KCQkiIiIKCWVsc2UKCQltZCIiIgoJCVlvdXIgc29sdXRpb24gd29ya3MgZm9yICQobnVtX2Rpc2tzKSBkaXNrcy4gQ2hhbmdlIGBudW1fZGlza3NgIHRvIHNlZSBpZiBpdCB3b3JrcyBmb3IgOCBvciBtb3JlLgoJCSIiIgoJZW5kCmVsc2UKCW1kIiIiCglUaGUgYHNvbHZlYCBmdW5jdGlvbiBkb2Vzbid0IHdvcmsgeWV0LiBLZWVwIHdvcmtpbmcgb24gaXQhCgkiIiIKZW5kq2NvZGVfZm9sZGVkw9kkMDEwZGJkYmMtYTJjNS0xMWVhLTM0YzMtODM3ZWFlMTc0MTZmhKdjZWxsX2lk2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmawcnVubmluZ19kaXNhYmxlZMKkY29kZdlgZnVuY3Rpb24gc29sdmUoc3RhcnQgPSBzdGFydGluZ19zdGFja3MpOjpBcnJheXtUdXBsZXtJbnQsIEludH19CgkKCSN3aGF0IHRvIGRvPwoJCglyZXR1cm4gW10KZW5kq2NvZGVfZm9sZGVkwtkkZTM0N2YxZGUtYTJiYi0xMWVhLTA2ZTctODdjY2E2ZjJhMjQwhKdjZWxsX2lk2SRlMzQ3ZjFkZS1hMmJiLTExZWEtMDZlNy04N2NjYTZmMmEyNDCwcnVubmluZ19kaXNhYmxlZMKkY29kZdoB1G1kIiIiCiMjIERlZmluaW5nIHRoZSBydWxlcwoKTm93IHRoYXQgd2UgaGF2ZSBvdXIgImdhbWUgYm9hcmQiLCB3ZSBjYW4gaW1wbGVtZW50IHRoZSBydWxlcy4KClRvIHN0YXJ0LCB3ZSBtYWtlIHR3byBmdW5jdGlvbnMgZm9yIHN0YXRlcy4gQSBzdGF0ZSBvZiB0aGUgZ2FtZSBpcyBqdXN0IGFuIGFycmF5IG9mIHN0YWNrcy4KCldlIHdpbGwgZGVmaW5lIGEgZnVuY3Rpb24gdGhhdCBjaGVja3MgaWYgYSBzdGF0ZSBpcyBva2F5IGFjY29yZGluZyB0byB0aGUgcnVsZXMuIFRvIGJlIGxlZ2FsLCBhbGwgdGhlIHN0YWNrcyBzaG91bGQgYmUgaW4gdGhlIGNvcnJlY3Qgb3JkZXIsIHNvIG5vIGxhcmdlciBkaXNrcyBvbiB0b3Agb2Ygc21hbGxlciBkaXNrcy4gCgpBbm90aGVyIGdvb2QgdGhpbmcgdG8gY2hlY2s6IG5vIGRpc2tzIHNob3VsZCBoYXZlIGFwcGVhcmVkIG9yIGRpc2FwcGVhcmVkIHNpbmNlIHdlIHN0YXJ0ZWQhCiIiIqtjb2RlX2ZvbGRlZMPZJDQzNzgxYTUyLWEzMzktMTFlYS0zODAzLWU1NmUyZDA4YWE4M4SnY2VsbF9pZNkkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgzsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXZIGZpcnN0X3N0YWNrID0gY29sbGVjdChhbGxfZGlza3Mpq2NvZGVfZm9sZGVkwtkkZTkxNTM5NGUtYTJjMC0xMWVhLTBjZDktMWRmNmZkM2M3YWRmhKdjZWxsX2lk2SRlOTE1Mzk0ZS1hMmMwLTExZWEtMGNkOS0xZGY2ZmQzYzdhZGawcnVubmluZ19kaXNhYmxlZMKkY29kZdoBVmZ1bmN0aW9uIG1vdmUoc3RhY2tzLCBzb3VyY2U6OkludCwgdGFyZ2V0OjpJbnQpCgkjY2hlY2sgaWYgdGhlIGZyb20gc3RhY2sgaWYgbm90IGVtcHR5CglpZiBpc2VtcHR5KHN0YWNrc1tzb3VyY2VdKQoJCWVycm9yKCJFcnJvcjogYXR0ZW1wdGVkIHRvIG1vdmUgZGlzayBmcm9tIGVtcHR5IHN0YWNrIikKCWVuZAoJCgluZXdfc3RhY2tzID0gZGVlcGNvcHkoc3RhY2tzKQoJCglkaXNrID0gcG9wZmlyc3QhKG5ld19zdGFja3Nbc291cmNlXSkgI3Rha2UgZGlzawoJcHVzaGZpcnN0IShuZXdfc3RhY2tzW3RhcmdldF0sIGRpc2spICNwdXQgb24gbmV3IHN0YWNrCgkKCXJldHVybiBuZXdfc3RhY2tzCmVuZKtjb2RlX2ZvbGRlZMLZJDM1YWRhMjE0LWEzMmMtMTFlYS0wZGEzLWQ1ZDQ5NGIyODQ2N4SnY2VsbF9pZNkkMzVhZGEyMTQtYTMyYy0xMWVhLTBkYTMtZDVkNDk0YjI4NDY3sHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXZfW1kIiIiKFNpZGUgbm90ZTogdGhlIG51bWJlciBvZiBkaXNrcyBpcyBhcmJpdHJhcnkuIFdoZW4gdGVzdGluZyB5b3VyIGZ1bmN0aW9uLCB5b3UgbWF5IHdhbnQgdG8gc2V0IGl0IHRvIDEgb3IgMiB0byBzdGFydC4pIiIiq2NvZGVfZm9sZGVkw9kkOGVhN2Y5NDQtYTMyOS0xMWVhLTIyY2MtNGRiZDExZWMwNjEwhKdjZWxsX2lk2SQ4ZWE3Zjk0NC1hMzI5LTExZWEtMjJjYy00ZGJkMTFlYzA2MTCwcnVubmluZ19kaXNhYmxlZMKkY29kZbVjaGVja19zb2x1dGlvbihzb2x2ZSmrY29kZV9mb2xkZWTC2SRkNWNjNDFlOC1hMmJkLTExZWEtMzljNy1iN2RmOGRlNmFlM2WEp2NlbGxfaWTZJGQ1Y2M0MWU4LWEyYmQtMTFlYS0zOWM3LWI3ZGY4ZGU2YWUzZbBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2TpmdW5jdGlvbiBpc2NvbXBsZXRlKHN0YWNrcykKCWxhc3Qoc3RhY2tzKSA9PSBhbGxfZGlza3MKZW5kq2NvZGVfZm9sZGVkwqtub3RlYm9va19pZNkkZjE1NDBmMWUtNTJhYi0xMWVjLTA2Y2QtZTNlMjZlOGEwY2Jkq2luX3RlbXBfZGlyww==";
</script>
<!-- [automatically generated launch parameters can be inserted here] -->
<script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.0/frontend/editor.js" type="module" defer></script>
<script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.0/frontend/warn_old_browsers.js"></script>
<script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.0/frontend/common/SetupMathJax.js"></script>
<script type="text/javascript" id="MathJax-script" src="https://cdn.jsdelivr.net/npm/mathjax@3.1.2/es5/tex-svg-full.js" async></script>
</head>
<body class="loading no-MαθJax"></body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta name="viewport" content="width=device-width" />
<title>⚡ Pluto.jl ⚡</title>
<meta charset="utf-8" />
<script>
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>
<meta name="theme-color" content="#ffffff" />
<link rel="icon" type="image/png" sizes="16x16" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.2/frontend/img/favicon-16x16.png" />
<link rel="icon" type="image/png" sizes="32x32" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.2/frontend/img/favicon-32x32.png" />
<link rel="icon" type="image/png" sizes="96x96" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.2/frontend/img/favicon-96x96.png" />
<meta name="description" content="Pluto.jl notebooks" />
<link rel="pluto-logo-big" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.2/frontend/img/logo.svg" />
<link rel="pluto-logo-small" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.2/frontend/img/favicon_unsaturated.svg" />
<link rel="pluto-sw" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.2/frontend/sw.js" />
<script>
navigator.serviceWorker?.register(document.head.querySelector("link[rel='pluto-sw']").getAttribute("href"), { scope: "./" }).catch(console.warn)
</script>
<script src="https://cdn.jsdelivr.net/npm/lodash@4.17.20/lodash.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/@observablehq/stdlib@3.3.1/dist/stdlib.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/iframe-resizer@4.2.11/js/iframeResizer.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/ansi_up@5.0.1/ansi_up.min.js" defer></script>
<!-- This doesn't do anything unless activated, and it makes sure parcel bundles this -->
<script id="iframe-resizer-content-window-script" src="https://cdn.jsdelivr.net/npm/iframe-resizer@4.2.11/js/iframeResizer.contentWindow.min.js" crossorigin="anonymous" defer></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.2/frontend/editor.css" type="text/css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.2/frontend/hide-ui.css" type="text/css" media="all" data-pluto-file="hide-ui" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.2/frontend/binder.css" type="text/css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.2/frontend/treeview.css" type="text/css" />
<link rel="preload" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.2/frontend/juliamono.css" as="style" />
<link rel="preload" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.2/frontend/vollkorn.css" as="style" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@11.2.0/build/styles/atom-one-light.min.css" />
<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,IyMjIEEgUGx1dG8uamwgbm90ZWJvb2sgIyMjCiMgdjAuMTcuMgoKdXNpbmcgTWFya2Rvd24KdXNpbmcgSW50ZXJhY3RpdmVVdGlscwoKIyDilZTilZDilaEgNWIyZWU0MGUtYTJiOC0xMWVhLTBmZWYtYzM1ZmU2OTE4ODYwCm1kIiIiCiMgVGhlIHRvd2VyIG9mIEhhbm9pCgpUaGUgdG93ZXIgb2YgaGFub2kgaXMgYSBmYW1vdXMgcHV6emxlLgoKIVtzZXR1cCBvZiB0aGUgdG93ZXIgb2YgYSBoYW5vaV0oaHR0cHM6Ly91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy8wLzA3L1Rvd2VyX29mX0hhbm9pLmpwZWcpCgpUaGUgZ2FtZSBjb25zaXN0cyBvZiB0aHJlZSByb2RzIHdpdGggZGlza3Mgc3RhY2tlZCBvbiB0b3Agb2YgdGhlbS4gVGhlIHB1enpsZSB3aWxsIHN0YXJ0IHdpdGggYWxsIGRpc2tzIGluIGEgc3RhY2sgb24gb25lIG9mIHRoZSByb2RzIChsaWtlIGluIHRoZSBwaWN0dXJlKS4gVGhlIGdvYWwgaXMgdG8gbW92ZSBhbGwgdGhlIGRpc2NzIHRvIGEgc2luZ2xlIHN0YWNrIG9uIHRoZSBsYXN0IHJvZC4KClRvIG1vdmUgdGhlIGRpc2tzLCB5b3UgaGF2ZSB0byBmb2xsb3cgdGhlIGZvbGxvd2luZyBydWxlczoKCiogWW91IGNhbiBtb3ZlIG9ubHkgb25lIGRpc2sgYXQgYSB0aW1lLgoqIEZvciBlYWNoIG1vdmUsIHlvdSBoYXZlIHRvIHRha2UgdGhlIHVwcGVyIGRpc2sgZnJvbSBvbmUgb2YgdGhlIHN0YWNrcywgYW5kIHBsYWNlIGl0IG9uIHRvcCBvZiBhbm90aGVyIHN0YWNrIG9yIGVtcHR5IHJvZC4KKiBZb3UgY2Fubm90IHBsYWNlIGEgbGFyZ2VyIGRpc2sgb24gdG9wIG9mIGEgc21hbGxlciBkaXNrLgoKVGhpcyBub3RlYm9vayB3aWxsIGRlZmluZSBhIEp1bGlhIGltcGxlbWVudGF0aW9uIG9mIHRoZSBwdXp6bGUuIEl0J3MgdXAgdG8geW91IHRvIHdyaXRlIGFuIGFsZ29yaXRobSB0aGF0IHNvbHZlcyBpdC4KIiIiCgojIOKVlOKVkOKVoSA5NWZiZDBkMi1hMmI5LTExZWEtMDY4Mi1mZGY3ODMyNTE3OTcKbWQiIiIKIyMgU2V0dGluZyB1cCB0aGUgZ2FtZSBwaWVjZXMKCldoYXQgZG9lcyBhIEp1bGlhIGltcGxlbWVudGF0aW9uIGxvb2sgbGlrZT8gV2UncmUgbm90IHJlYWxseSBpbnRlcmVzdGVkIGluIHdyaXRpbmcgY29kZSB0aGF0IHdpbGwgbWFuaXB1bGF0ZSBwaHlzaWNhbCBkaXNrcy4gT3VyIGZpbmFsIGdvYWwgaXMgYSBmdW5jdGlvbiB0aGF0IHdpbGwgZ2l2ZSB1cyBhIF9yZWNpcGVfIHRvIHNvbHZlIHRoZSB0b3dlciBvZiBoYW5vaSwgd2hpY2ggaXMganVzdCBhIGxpc3Qgb2YgbW92ZXMgdG8gbWFrZS4gQmVjYXVzZSBvZiB0aGF0LCB3ZSBjYW4gdXNlIGEgbG90IG9mIGFic3RyYWN0aW9uIGluIG91ciBpbXBsZW1lbnRhdGlvbiwgYW5kIGtlZXAgdGhlIGRhdGEgc3RydWN0dXJlcyBhcyBzaW1wbGUgYXMgcG9zc2libGUuCgpUbyBzdGFydCwgd2UgaGF2ZSB0byBkZWZpbmUgc29tZSByZXByZXNlbnRhdGlvbiBvZiB0aGUgZGlza3MgYW5kIHRoZSBzdGFja3MuIFRoZSBkaXNrcyBoYXZlIG9uZSBpbXBvcnRhbnQgcHJvcGVydHksIHdoaWNoIGlzIHRoYXQgdGhleSBhcmUgb3JkZXJlZC4gV2UgY2FuIHVzZSBpbnRlZ2VycyB0byByZXByZXNlbnQgdGhlbS4KIiIiCgojIOKVlOKVkOKVoSA2MjBkNjgzNC1hMmJhLTExZWEtMTUwYS0yMTMyYmI1NGU0YjMKbnVtX2Rpc2tzID0gOAoKIyDilZTilZDilaEgMzVhZGEyMTQtYTMyYy0xMWVhLTBkYTMtZDVkNDk0YjI4NDY3Cm1kIiIiKFNpZGUgbm90ZTogdGhlIG51bWJlciBvZiBkaXNrcyBpcyBhcmJpdHJhcnkuIFdoZW4gdGVzdGluZyB5b3VyIGZ1bmN0aW9uLCB5b3UgbWF5IHdhbnQgdG8gc2V0IGl0IHRvIDEgb3IgMiB0byBzdGFydC4pIiIiCgojIOKVlOKVkOKVoSA3MjQzY2M4ZS1hMmJhLTExZWEtM2YyOS05OTM1NmYwY2RjZjQKYWxsX2Rpc2tzID0gMTpudW1fZGlza3MKCiMg4pWU4pWQ4pWhIDdlMWJhMmFjLWEyYmEtMTFlYS0wMTM0LTJmNjFlZDc1YmUxOAptZCIiIgpBIHNpbmdsZSBzdGFjayBjYW4gYmUgcmVwcmVzZW50ZWQgYXMgYW4gYXJyYXkgd2l0aCBhbGwgdGhlIGRpc2tzIGluIGl0LiBXZSB3aWxsIGxpc3QgdGhlbSBmcm9tIHRvcCB0byBib3R0b20uCiIiIgoKIyDilZTilZDilaEgNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgzCmZpcnN0X3N0YWNrID0gY29sbGVjdChhbGxfZGlza3MpCgojIOKVlOKVkOKVoSBiNjQ4YWI3MC1hMmJhLTExZWEtMmRjYy01NWI2MzBlNDQzMjUKbWQiIiIKTm93IHdlIGhhdmUgdG8gbWFrZSB0aHJlZSBvZiB0aG9zZS4gCiIiIgoKIyDilZTilZDilaEgMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNkCnN0YXJ0aW5nX3N0YWNrcyA9IFtmaXJzdF9zdGFjaywgW10sIFtdXQoKIyDilZTilZDilaEgZTM0N2YxZGUtYTJiYi0xMWVhLTA2ZTctODdjY2E2ZjJhMjQwCm1kIiIiCiMjIERlZmluaW5nIHRoZSBydWxlcwoKTm93IHRoYXQgd2UgaGF2ZSBvdXIgImdhbWUgYm9hcmQiLCB3ZSBjYW4gaW1wbGVtZW50IHRoZSBydWxlcy4KClRvIHN0YXJ0LCB3ZSBtYWtlIHR3byBmdW5jdGlvbnMgZm9yIHN0YXRlcy4gQSBzdGF0ZSBvZiB0aGUgZ2FtZSBpcyBqdXN0IGFuIGFycmF5IG9mIHN0YWNrcy4KCldlIHdpbGwgZGVmaW5lIGEgZnVuY3Rpb24gdGhhdCBjaGVja3MgaWYgYSBzdGF0ZSBpcyBva2F5IGFjY29yZGluZyB0byB0aGUgcnVsZXMuIFRvIGJlIGxlZ2FsLCBhbGwgdGhlIHN0YWNrcyBzaG91bGQgYmUgaW4gdGhlIGNvcnJlY3Qgb3JkZXIsIHNvIG5vIGxhcmdlciBkaXNrcyBvbiB0b3Agb2Ygc21hbGxlciBkaXNrcy4gCgpBbm90aGVyIGdvb2QgdGhpbmcgdG8gY2hlY2s6IG5vIGRpc2tzIHNob3VsZCBoYXZlIGFwcGVhcmVkIG9yIGRpc2FwcGVhcmVkIHNpbmNlIHdlIHN0YXJ0ZWQhCiIiIgoKIyDilZTilZDilaEgNTEyZmE2ZDItYTJiZC0xMWVhLTNkYmUtYjkzNWI1MzY5NjdiCmZ1bmN0aW9uIGlzbGVnYWwoc3RhY2tzKQoJb3JkZXJfY29ycmVjdCA9IGFsbChpc3NvcnRlZCwgc3RhY2tzKQoJCgkjY2hlY2sgaWYgd2UgdXNlIHRoZSBzYW1lIGRpc2sgc2V0IHRoYXQgd2Ugc3RhcnRlZCB3aXRoCgkKCWRpc2tzX2luX3N0YXRlID0gc29ydChbZGlzayBmb3Igc3RhY2sgaW4gc3RhY2tzIGZvciBkaXNrIGluIHN0YWNrXSkKCWRpc2tzX2NvbXBsZXRlID0gZGlza3NfaW5fc3RhdGUgPT0gYWxsX2Rpc2tzCgkKCW9yZGVyX2NvcnJlY3QgJiYgZGlza3NfY29tcGxldGUKZW5kCgojIOKVlOKVkOKVoSBjNTZhNTg1OC1hMmJkLTExZWEtMWQ5Ni03N2VhZjVlNzQ5MjUKbWQiIiIKQW5vdGhlciBmdW5jdGlvbiBmb3Igc3RhdGVzOiBjaGVjayBpZiB3ZSBhcmUgZG9uZSEgV2UgY2FuIGFzc3VtZSB0aGF0IHdlIGFscmVhZHkgY2hlY2tlZCBpZiB0aGUgc3RhdGUgd2FzIGxlZ2FsLiBTbyB3ZSBrbm93IHRoYXQgYWxsIHRoZSBkaXNrcyBhcmUgdGhlcmUgYW5kIHRoZXkgYXJlIG9yZGVyZWQgY29ycmVjdGx5LiAgVG8gY2hlY2sgaWYgd2UgYXJlIGZpbmlzaGVkLCB3ZSBqdXN0IG5lZWQgdG8gY2hlY2sgaWYgdGhlIGxhc3Qgc3RhY2sgY29udGFpbnMgYWxsIHRoZSBkaXNrcy4KIiIiCgojIOKVlOKVkOKVoSBkNWNjNDFlOC1hMmJkLTExZWEtMzljNy1iN2RmOGRlNmFlM2UKZnVuY3Rpb24gaXNjb21wbGV0ZShzdGFja3MpCglsYXN0KHN0YWNrcykgPT0gYWxsX2Rpc2tzCmVuZAoKIyDilZTilZDilaEgNTMzNzRmMGUtYTJjMC0xMWVhLTBjOTEtOTc0NzQ3ODA3MjFlCm1kIiIiCk5vdyB0aGUgb25seSBydWxlcyBsZWZ0IHRvIGltcGxlbWVudCBhcmUgdGhlIHJ1bGVzIGZvciBtb3ZpbmcgZGlza3MuIAoKV2UgY291bGQgaW1wbGVtZW50IHRoaXMgYXMgYW5vdGhlciBjaGVjayBvbiBzdGF0ZXMsIGJ1dCBpdCdzIGVhc2llciB0byBqdXN0IHdyaXRlIGEgbGVnYWwgYG1vdmVgIGZ1bmN0aW9uLiBZb3VyIHNvbHV0aW9uIHdpbGwgc3BlY2lmeSBtb3ZlcyBmb3IgdGhlIGBtb3ZlYCBmdW5jdGlvbiwgc28gdGhpcyB3aWxsIGJlIHRoZSBvbmx5IHdheSB0aGF0IHRoZSBzdGFja3MgYXJlIGFjdHVhbGx5IG1hbmlwdWxhdGVkLiBUaGF0IHdheSwgd2UgYXJlIHN1cmUgdGhhdCBub3RoaW5nIGZpc2h5IGlzIGhhcHBlbmluZy4KCldlIHdpbGwgbWFrZSBvdXIgYG1vdmVgIGZ1bmN0aW9uIHNvIHRoYXQgaXRzIGlucHV0IGNvbnNpc3RzIG9mIGEgc3RhdGUgb2YgdGhlIGdhbWUsIGFuZCBpbnN0cnVjdGlvbnMgZm9yIHdoYXQgdG8gZG8uIEl0cyBvdXRwdXQgd2lsbCBiZSB0aGUgbmV3IHN0YXRlIG9mIHRoZSBnYW1lLgoKU28gd2hhdCBzaG91bGQgdGhvc2UgaW5zdHJ1Y3Rpb25zIGxvb2sgbGlrZT8gSXQgbWF5IHNlZW0gaW50dWl0aXZlIHRvIGdpdmUgYSBfZGlza18gdGhhdCBzaG91bGQgYmUgbW92ZWQsIGJ1dCB0aGF0J3MgbW9yZSB0aGFuIHdlIG5lZWQuIEFmdGVyIGFsbCwgd2UgYXJlIG9ubHkgYWxsb3dlZCB0byB0YWtlIHRoZSB0b3AgZGlzayBmcm9tIG9uZSBzdGFjaywgYW5kIG1vdmUgaXQgdG8gdGhlIHRvcCBvZiBhbm90aGVyLiBTbyB3ZSBvbmx5IGhhdmUgdG8gc2F5IHdoaWNoIF9zdGFja3NfIHdlIGFyZSBtb3ZpbmcgYmV0d2Vlbi4KCihOb3RlIHRoYXQgdGhlIGBtb3ZlYCBmdW5jdGlvbiBpcyBva2F5IHdpdGggbW92aW5nIGEgbGFyZ2VyIGRpc2sgb24gdG9wIG9mIGEgc21hbGxlciBkaXNrLiBXZSBhbHJlYWR5IGltcGxlbWVudGVkIHRoYXQgcmVzdHJpY3Rpb24gaW4gYGlzbGVnYWxgLikKIiIiCgojIOKVlOKVkOKVoSBlOTE1Mzk0ZS1hMmMwLTExZWEtMGNkOS0xZGY2ZmQzYzdhZGYKZnVuY3Rpb24gbW92ZShzdGFja3MsIHNvdXJjZTo6SW50LCB0YXJnZXQ6OkludCkKCSNjaGVjayBpZiB0aGUgZnJvbSBzdGFjayBpZiBub3QgZW1wdHkKCWlmIGlzZW1wdHkoc3RhY2tzW3NvdXJjZV0pCgkJZXJyb3IoIkVycm9yOiBhdHRlbXB0ZWQgdG8gbW92ZSBkaXNrIGZyb20gZW1wdHkgc3RhY2siKQoJZW5kCgkKCW5ld19zdGFja3MgPSBkZWVwY29weShzdGFja3MpCgkKCWRpc2sgPSBwb3BmaXJzdCEobmV3X3N0YWNrc1tzb3VyY2VdKSAjdGFrZSBkaXNrCglwdXNoZmlyc3QhKG5ld19zdGFja3NbdGFyZ2V0XSwgZGlzaykgI3B1dCBvbiBuZXcgc3RhY2sKCQoJcmV0dXJuIG5ld19zdGFja3MKZW5kCgojIOKVlOKVkOKVoSA4N2IyZDE2NC1hMmM0LTExZWEtMzA5NS05MTY2Mjg5NDM4NzkKbWQiIiIKIyMgU29sdmluZyB0aGUgcHJvYmxlbQoKV2UgaGF2ZSBpbXBsZW1lbnRlZCB0aGUgZ2FtZSBwaWVjZXMgYW5kIHRoZSBydWxlcywgc28geW91IGNhbiBzdGFydCB3b3JraW5nIG9uIHlvdXIgc29sdXRpb24uCgpUbyBkbyB0aGlzLCB5b3UgY2FuIGZpbGwgaW4gdGhlIGBzb2x2ZShzdGFja3MpYCBmdW5jdGlvbi4gVGhpcyBmdW5jdGlvbiBzaG91bGQgZ2l2ZSBhIHNvbHV0aW9uIGZvciB0aGUgZ2l2ZW4gYHN0YWNrc2AsIGJ5IG1vdmluZyBhbGwgdGhlIGRpc2tzIGZyb20gc3RhY2sgMSB0byBzdGFjayAzLgoKQXMgb3V0cHV0LCBgc29sdmVgIHNob3VsZCBnaXZlIGEgcmVjaXBlLCB0aGF0IHRlbGxzIHVzIHdoYXQgdG8gZG8uIFRoaXMgcmVjaXBlIHNob3VsZCBiZSBhbiBhcnJheSBvZiBtb3Zlcy4gRWFjaCBtb3ZlcyBpcyBhIGAoc291cmNlLCB0YXJnZXQpYCB0dXBsZSwgc3BlY2lmeWluZyBmcm9tIHdoaWNoIHN0YWNrIHRvIHdoaWNoIHN0YWNrIHlvdSBzaG91bGQgbW92ZS4KCkZvciBleGFtcGxlLCBpdCBtaWdodCBsb29rIGxpa2UgdGhpczoKIiIiCgojIOKVlOKVkOKVoSAyOWI0MTBjYy1hMzI5LTExZWEtMjAyYS03OTViMzFjZTVhZDUKZnVuY3Rpb24gd3Jvbmdfc29sdXRpb24oc3RhY2tzKTo6QXJyYXl7VHVwbGV7SW50LCBJbnR9fQoJcmV0dXJuIFsoMSwyKSwgKDIsMyksICgyLDEpLCAoMSwzKV0KZW5kCgojIOKVlOKVkOKVoSBlYTI0ZTc3OC1hMzJlLTExZWEtM2YxMS1kYmU5ZDM2YjEwMTEKbWQiIiIKTm93IHlvdSBjYW4gd29yayBvbiBidWlsZGluZyBhbiBhY3R1YWwgc29sdXRpb24uIFNvbWUgdGlwczoKKiBgc29sdmUoc3RhY2tzKWAgY2FuIGtlZXAgdHJhY2sgb2YgdGhlIGJvYXJkIGlmIHlvdSB3YW50LCBidXQgaXQgZG9lc24ndCBoYXZlIHRvLgoqIFRoZSBzZWN0aW9uIGJlbG93IHdpbGwgYWN0dWFsbHkgcnVuIHlvdXIgbW92ZXMsIHdoaWNoIGlzIHZlcnkgdXNlZnVsIGZvciBjaGVja2luZyB0aGVtLgoqIElmIHlvdSB3YW50LCB5b3UgY2FuIGNoYW5nZSBgbnVtX2Rpc2tzYCB0byAxIG9yIDIuIFRoYXQgY2FuIGJlIGEgZ29vZCBzdGFydGluZyBwb2ludC4KIiIiCgojIOKVlOKVkOKVoSAwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmYKZnVuY3Rpb24gc29sdmUoc3RhcnQgPSBzdGFydGluZ19zdGFja3MpOjpBcnJheXtUdXBsZXtJbnQsIEludH19CgkKCSN3aGF0IHRvIGRvPwoJCglyZXR1cm4gW10KZW5kCgojIOKVlOKVkOKVoSAzZWIzYzRjMC1hMmM1LTExZWEtMGJjYy1jOWI1MjA5NGY2NjAKbWQiIiIKIyMgQ2hlY2tpbmcgc29sdXRpb25zCgpUaGlzIGlzIHdoZXJlIHdlIGNhbiBjaGVjayBhIHNvbHV0aW9uLiBXZSBzdGFydCB3aXRoIGEgZnVuY3Rpb24gdGhhdCB0YWtlcyBvdXIgcmVjaXBlIGFuZCBydW5zIGl0LgoiIiIKCiMg4pWU4pWQ4pWhIDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZQpmdW5jdGlvbiBydW5fc29sdXRpb24oc29sdmVyOjpGdW5jdGlvbiwgc3RhcnQgPSBzdGFydGluZ19zdGFja3MpCgltb3ZlcyA9IHNvbHZlcihkZWVwY29weShzdGFydCkpICNhcHBseSB0aGUgc29sdmVyCgkKCWFsbF9zdGF0ZXMgPSBBcnJheXtBbnksMX0odW5kZWYsIGxlbmd0aChtb3ZlcykgKyAxKQoJYWxsX3N0YXRlc1sxXSA9IHN0YXJ0CgkKCWZvciAoaSwgbSkgaW4gZW51bWVyYXRlKG1vdmVzKQoJCXRyeQoJCQlhbGxfc3RhdGVzW2kgKyAxXSA9IG1vdmUoYWxsX3N0YXRlc1tpXSwgbVsxXSwgbVsyXSkKCQljYXRjaAoJCQlhbGxfc3RhdGVzW2kgKyAxXSA9IG1pc3NpbmcKCQllbmQKCWVuZAoJCglyZXR1cm4gYWxsX3N0YXRlcwplbmQKCiMg4pWU4pWQ4pWhIDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMQptZCIiIgpZb3UgY2FuIHVzZSB0aGlzIGZ1bmN0aW9uIHRvIHNlZSB3aGF0IHlvdXIgc29sdXRpb24gZG9lcy4KCklmIGBydW5fc29sdXRpb25gIHRyaWVzIHRvIG1ha2UgYW4gaW1wb3NzaWJsZSBtb3ZlLCBpdCB3aWxsIGdpdmUgYG1pc3NpbmdgIGZyb20gdGhhdCBwb2ludCBvbndhcmRzLiBMb29rIGF0IHdoYXQgaGFwcGVucyBpbiB0aGUgYHdyb25nX3NvbHV0aW9uYCB2ZXJzaW9uIGFuZCBjb21wYXJlIGl0IHRvIHRoZSBtb3ZlcyBpbiBgd3Jvbmdfc29sdXRpb25gLgoiIiIKCiMg4pWU4pWQ4pWhIGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MApydW5fc29sdXRpb24od3Jvbmdfc29sdXRpb24pCgojIOKVlOKVkOKVoSA5MTczYjE3NC1hMzI3LTExZWEtM2E2OS05Zjc1MjVmMmU3YjQKcnVuX3NvbHV0aW9uKHNvbHZlKQoKIyDilZTilZDilaEgYmI1MDg4ZWMtYTMzMC0xMWVhLTJjNDEtNmI4YjkyNzI0YjNiCm1kIiIiCk5vdyB0aGF0IHdlIGhhdmUgd2F5IHRvIHJ1biBhIHJlY2lwZSwgd2UgY2FuIGNoZWNrIGlmIGl0cyBvdXRwdXQgaXMgY29ycmVjdC4gV2Ugd2lsbCBjaGVjayBpZiBhbGwgdGhlIGludGVybWVkaWF0ZSBzdGF0ZXMgYXJlIGxlZ2FsIGFuZCB0aGUgZmluYWwgc3RhdGUgaXMgdGhlIGZpbmlzaGVkIHB1enpsZS4KIiIiCgojIOKVlOKVkOKVoSAxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMzgKZnVuY3Rpb24gY2hlY2tfc29sdXRpb24oc29sdmVyOjpGdW5jdGlvbiwgc3RhcnQgPSBzdGFydGluZ19zdGFja3MpCgl0cnkKCQkjcnVuIHRoZSBzb2x1dGlvbgoJCWFsbF9zdGF0ZXMgPSBydW5fc29sdXRpb24oc29sdmVyLCBzdGFydCkKCQkKCQkjY2hlY2sgaWYgZWFjaCBzdGF0ZSBpcyBsZWdhbAoJCWFsbF9sZWdhbCA9IGFsbChpc2xlZ2FsLCBhbGxfc3RhdGVzKQoJCQoJCSNjaGVjayBpZiB0aGUgZmluYWwgc3RhdGUgaXMgaXMgdGhlIGNvbXBsZXRlZCBwdXp6bGUKCQljb21wbGV0ZSA9IChpc2NvbXBsZXRlIOKImCBsYXN0KShhbGxfc3RhdGVzKQoJCQoJCWFsbF9sZWdhbCAmJiBjb21wbGV0ZQoJY2F0Y2gKCQkjcmV0dXJuIGZhbHNlIGlmIHdlIGVuY291bnRlcmVkIGFuIGVycm9yCgkJcmV0dXJuIGZhbHNlCgllbmQKZW5kCgojIOKVlOKVkOKVoSA4ZWE3Zjk0NC1hMzI5LTExZWEtMjJjYy00ZGJkMTFlYzA2MTAKY2hlY2tfc29sdXRpb24oc29sdmUpCgojIOKVlOKVkOKVoSBlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMzgKaWYgY2hlY2tfc29sdXRpb24oc29sdmUpCglpZiBudW1fZGlza3MgPj0gOAoJCW1kIiIiCgkJIyMjIyBDb25ncmF0dWxhdGlvbnMsIHlvdXIgc29sdXRpb24gd29ya3MhIPCfmI4KCQkiIiIKCWVsc2UKCQltZCIiIgoJCVlvdXIgc29sdXRpb24gd29ya3MgZm9yICQobnVtX2Rpc2tzKSBkaXNrcy4gQ2hhbmdlIGBudW1fZGlza3NgIHRvIHNlZSBpZiBpdCB3b3JrcyBmb3IgOCBvciBtb3JlLgoJCSIiIgoJZW5kCmVsc2UKCW1kIiIiCglUaGUgYHNvbHZlYCBmdW5jdGlvbiBkb2Vzbid0IHdvcmsgeWV0LiBLZWVwIHdvcmtpbmcgb24gaXQhCgkiIiIKZW5kCgojIOKVlOKVkOKVoSBDZWxsIG9yZGVyOgojIOKVn+KUgDViMmVlNDBlLWEyYjgtMTFlYS0wZmVmLWMzNWZlNjkxODg2MAojIOKVn+KUgDk1ZmJkMGQyLWEyYjktMTFlYS0wNjgyLWZkZjc4MzI1MTc5NwojIOKVoOKVkDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiMwojIOKVn+KUgDM1YWRhMjE0LWEzMmMtMTFlYS0wZGEzLWQ1ZDQ5NGIyODQ2NwojIOKVoOKVkDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNAojIOKVn+KUgDdlMWJhMmFjLWEyYmEtMTFlYS0wMTM0LTJmNjFlZDc1YmUxOAojIOKVoOKVkDQzNzgxYTUyLWEzMzktMTFlYS0zODAzLWU1NmUyZDA4YWE4MwojIOKVn+KUgGI2NDhhYjcwLWEyYmEtMTFlYS0yZGNjLTU1YjYzMGU0NDMyNQojIOKVoOKVkDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZAojIOKVn+KUgGUzNDdmMWRlLWEyYmItMTFlYS0wNmU3LTg3Y2NhNmYyYTI0MAojIOKVoOKVkDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YgojIOKVn+KUgGM1NmE1ODU4LWEyYmQtMTFlYS0xZDk2LTc3ZWFmNWU3NDkyNQojIOKVoOKVkGQ1Y2M0MWU4LWEyYmQtMTFlYS0zOWM3LWI3ZGY4ZGU2YWUzZQojIOKVn+KUgDUzMzc0ZjBlLWEyYzAtMTFlYS0wYzkxLTk3NDc0NzgwNzIxZQojIOKVoOKVkGU5MTUzOTRlLWEyYzAtMTFlYS0wY2Q5LTFkZjZmZDNjN2FkZgojIOKVn+KUgDg3YjJkMTY0LWEyYzQtMTFlYS0zMDk1LTkxNjYyODk0Mzg3OQojIOKVoOKVkDI5YjQxMGNjLWEzMjktMTFlYS0yMDJhLTc5NWIzMWNlNWFkNQojIOKVn+KUgGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMQojIOKVoOKVkDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZgojIOKVn+KUgDNlYjNjNGMwLWEyYzUtMTFlYS0wYmNjLWM5YjUyMDk0ZjY2MAojIOKVoOKVkDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZQojIOKVn+KUgDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMQojIOKVoOKVkGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MAojIOKVoOKVkDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNAojIOKVn+KUgGJiNTA4OGVjLWEzMzAtMTFlYS0yYzQxLTZiOGI5MjcyNGIzYgojIOKVoOKVkDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOAojIOKVoOKVkDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMAojIOKVn+KUgGU1NGFkZDBhLWEzMzAtMTFlYS0yZWViLTFkNDJmNTUyYmEzOAo=";
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.17.2";
window.pluto_statefile = "data:;base64,jqVib25kc4CsY2VsbF9yZXN1bHRz3gAc2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmaIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIakYm9kedknc29sdmUgKGdlbmVyaWMgZnVuY3Rpb24gd2l0aCAyIG1ldGhvZHMpsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3wo+21W3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkMDEwZGJkYmMtYTJjNS0xMWVhLTM0YzMtODM3ZWFlMTc0MTZmuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOAAsMhqdlcnJvcmVkwtkkN2UxYmEyYWMtYTJiYS0xMWVhLTAxMzQtMmY2MWVkNzViZTE4iKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSGpGJvZHnZkTxkaXYgY2xhc3M9Im1hcmtkb3duIj48cD5BIHNpbmdsZSBzdGFjayBjYW4gYmUgcmVwcmVzZW50ZWQgYXMgYW4gYXJyYXkgd2l0aCBhbGwgdGhlIGRpc2tzIGluIGl0LiBXZSB3aWxsIGxpc3QgdGhlbSBmcm9tIHRvcCB0byBib3R0b20uPC9wPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad8BBZXmt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqxyb290YXNzaWduZWXAp2NlbGxfaWTZJDdlMWJhMmFjLWEyYmEtMTFlYS0wMTM0LTJmNjFlZDc1YmUxOLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgAD26WnZXJyb3JlZMLZJGU1NGFkZDBhLWEzMzAtMTFlYS0yZWViLTFkNDJmNTUyYmEzOIimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0hqRib2R52XE8ZGl2IGNsYXNzPSJtYXJrZG93biI+PHA+VGhlIDxjb2RlPnNvbHZlPC9jb2RlPiBmdW5jdGlvbiBkb2VzbiYjMzk7dCB3b3JrIHlldC4gS2VlcCB3b3JraW5nIG9uIGl0JiMzMzs8L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3wqcBRS3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkZTU0YWRkMGEtYTMzMC0xMWVhLTJlZWItMWQ0MmY1NTJiYTM4uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOAoFtKadlcnJvcmVkwtkkNjIwZDY4MzQtYTJiYS0xMWVhLTE1MGEtMjEzMmJiNTRlNGIziKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSGpGJvZHmhOLBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqnRleHQvcGxhaW6ybGFzdF9ydW5fdGltZXN0YW1wy0HYad8Jq8MNt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqxyb290YXNzaWduZWWpbnVtX2Rpc2tzp2NlbGxfaWTZJDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiM7lkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzZs4p2Vycm9yZWTC2SQ5MTczYjE3NC1hMzI3LTExZWEtM2E2OS05Zjc1MjVmMmU3YjSIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIakYm9keYWmcHJlZml4o0FueahlbGVtZW50c5GSAZKFpnByZWZpeKtWZWN0b3J7QW55fahlbGVtZW50c5OSAZKFpnByZWZpeKNBbnmoZWxlbWVudHOXkgGSoTGqdGV4dC9wbGFpbpICkqEyqnRleHQvcGxhaW6SA5KhM6p0ZXh0L3BsYWlukgSSoTSqdGV4dC9wbGFpbpIFkqE1qnRleHQvcGxhaW6kbW9yZZIIkqE4qnRleHQvcGxhaW6kdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDY2ZWY0N2ZiNzczZGJiZTDZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJICkoWmcHJlZml4o0FueahlbGVtZW50c5CkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksGJiZGY5ZDZiOWNlZWJhYmbZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJIDkoWmcHJlZml4o0FueahlbGVtZW50c5CkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDU4OTdjOWFkNTY1ZjAwMTTZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdKR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwMTE3NGY1Yzc0ODVhYTRmOdkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0pHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLBhNzBlYjdhNjdiNGFkNmE1sHBlcnNpc3RfanNfc3RhdGXCpG1pbWXZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdLJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3wplGCK3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkOTE3M2IxNzQtYTMyNy0xMWVhLTNhNjktOWY3NTI1ZjJlN2I0uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOA6+aT6dlcnJvcmVkwtkkYmI1MDg4ZWMtYTMzMC0xMWVhLTJjNDEtNmI4YjkyNzI0YjNiiKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSGpGJvZHnZ0zxkaXYgY2xhc3M9Im1hcmtkb3duIj48cD5Ob3cgdGhhdCB3ZSBoYXZlIHdheSB0byBydW4gYSByZWNpcGUsIHdlIGNhbiBjaGVjayBpZiBpdHMgb3V0cHV0IGlzIGNvcnJlY3QuIFdlIHdpbGwgY2hlY2sgaWYgYWxsIHRoZSBpbnRlcm1lZGlhdGUgc3RhdGVzIGFyZSBsZWdhbCBhbmQgdGhlIGZpbmFsIHN0YXRlIGlzIHRoZSBmaW5pc2hlZCBwdXp6bGUuPC9wPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad8BB3hCt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqxyb290YXNzaWduZWXAp2NlbGxfaWTZJGJiNTA4OGVjLWEzMzAtMTFlYS0yYzQxLTZiOGI5MjcyNGIzYrlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgADMNqnZXJyb3JlZMLZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNIimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0hqRib2R5ozE6OLBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqnRleHQvcGxhaW6ybGFzdF9ydW5fdGltZXN0YW1wy0HYad8JvlkUt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqxyb290YXNzaWduZWWpYWxsX2Rpc2tzp2NlbGxfaWTZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzWncp2Vycm9yZWTC2SRlOTE1Mzk0ZS1hMmMwLTExZWEtMGNkOS0xZGY2ZmQzYzdhZGaIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIakYm9kedklbW92ZSAoZ2VuZXJpYyBmdW5jdGlvbiB3aXRoIDEgbWV0aG9kKbBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqnRleHQvcGxhaW6ybGFzdF9ydW5fdGltZXN0YW1wy0HYad8KNHhkt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqxyb290YXNzaWduZWXAp2NlbGxfaWTZJGU5MTUzOTRlLWEyYzAtMTFlYS0wY2Q5LTFkZjZmZDNjN2FkZrlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgALTXmnZXJyb3JlZMLZJGUzNDdmMWRlLWEyYmItMTFlYS0wNmU3LTg3Y2NhNmYyYTI0MIimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0hqRib2R52gITPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxoMj5EZWZpbmluZyB0aGUgcnVsZXM8L2gyPgo8cD5Ob3cgdGhhdCB3ZSBoYXZlIG91ciAmcXVvdDtnYW1lIGJvYXJkJnF1b3Q7LCB3ZSBjYW4gaW1wbGVtZW50IHRoZSBydWxlcy48L3A+CjxwPlRvIHN0YXJ0LCB3ZSBtYWtlIHR3byBmdW5jdGlvbnMgZm9yIHN0YXRlcy4gQSBzdGF0ZSBvZiB0aGUgZ2FtZSBpcyBqdXN0IGFuIGFycmF5IG9mIHN0YWNrcy48L3A+CjxwPldlIHdpbGwgZGVmaW5lIGEgZnVuY3Rpb24gdGhhdCBjaGVja3MgaWYgYSBzdGF0ZSBpcyBva2F5IGFjY29yZGluZyB0byB0aGUgcnVsZXMuIFRvIGJlIGxlZ2FsLCBhbGwgdGhlIHN0YWNrcyBzaG91bGQgYmUgaW4gdGhlIGNvcnJlY3Qgb3JkZXIsIHNvIG5vIGxhcmdlciBkaXNrcyBvbiB0b3Agb2Ygc21hbGxlciBkaXNrcy4gPC9wPgo8cD5Bbm90aGVyIGdvb2QgdGhpbmcgdG8gY2hlY2s6IG5vIGRpc2tzIHNob3VsZCBoYXZlIGFwcGVhcmVkIG9yIGRpc2FwcGVhcmVkIHNpbmNlIHdlIHN0YXJ0ZWQmIzMzOzwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnfAQXKNrdoYXNfcGx1dG9faG9va19mZWF0dXJlc8Kscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SRlMzQ3ZjFkZS1hMmJiLTExZWEtMDZlNy04N2NjYTZmMmEyNDC5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4ABnm5p2Vycm9yZWTC2SQ1MTJmYTZkMi1hMmJkLTExZWEtM2RiZS1iOTM1YjUzNjk2N2KIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIakYm9kedkoaXNsZWdhbCAoZ2VuZXJpYyBmdW5jdGlvbiB3aXRoIDEgbWV0aG9kKbBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqnRleHQvcGxhaW6ybGFzdF9ydW5fdGltZXN0YW1wy0HYad8KKZHvt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqxyb290YXNzaWduZWXAp2NlbGxfaWTZJDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YrlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgARDm+nZXJyb3JlZMLZJGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMYimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0hqRib2R52gG+PGRpdiBjbGFzcz0ibWFya2Rvd24iPjxwPk5vdyB5b3UgY2FuIHdvcmsgb24gYnVpbGRpbmcgYW4gYWN0dWFsIHNvbHV0aW9uLiBTb21lIHRpcHM6PC9wPgo8dWw+CjxsaT48cD48Y29kZT5zb2x2ZSYjNDA7c3RhY2tzJiM0MTs8L2NvZGU+IGNhbiBrZWVwIHRyYWNrIG9mIHRoZSBib2FyZCBpZiB5b3Ugd2FudCwgYnV0IGl0IGRvZXNuJiMzOTt0IGhhdmUgdG8uPC9wPgo8L2xpPgo8bGk+PHA+VGhlIHNlY3Rpb24gYmVsb3cgd2lsbCBhY3R1YWxseSBydW4geW91ciBtb3Zlcywgd2hpY2ggaXMgdmVyeSB1c2VmdWwgZm9yIGNoZWNraW5nIHRoZW0uPC9wPgo8L2xpPgo8bGk+PHA+SWYgeW91IHdhbnQsIHlvdSBjYW4gY2hhbmdlIDxjb2RlPm51bV9kaXNrczwvY29kZT4gdG8gMSBvciAyLiBUaGF0IGNhbiBiZSBhIGdvb2Qgc3RhcnRpbmcgcG9pbnQuPC9wPgo8L2xpPgo8L3VsPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad8BBzB3t2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqxyb290YXNzaWduZWXAp2NlbGxfaWTZJGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMblkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgAHS4mnZXJyb3JlZMLZJDk1ZmJkMGQyLWEyYjktMTFlYS0wNjgyLWZkZjc4MzI1MTc5N4imcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0hqRib2R52gKLPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxoMj5TZXR0aW5nIHVwIHRoZSBnYW1lIHBpZWNlczwvaDI+CjxwPldoYXQgZG9lcyBhIEp1bGlhIGltcGxlbWVudGF0aW9uIGxvb2sgbGlrZT8gV2UmIzM5O3JlIG5vdCByZWFsbHkgaW50ZXJlc3RlZCBpbiB3cml0aW5nIGNvZGUgdGhhdCB3aWxsIG1hbmlwdWxhdGUgcGh5c2ljYWwgZGlza3MuIE91ciBmaW5hbCBnb2FsIGlzIGEgZnVuY3Rpb24gdGhhdCB3aWxsIGdpdmUgdXMgYSA8ZW0+cmVjaXBlPC9lbT4gdG8gc29sdmUgdGhlIHRvd2VyIG9mIGhhbm9pLCB3aGljaCBpcyBqdXN0IGEgbGlzdCBvZiBtb3ZlcyB0byBtYWtlLiBCZWNhdXNlIG9mIHRoYXQsIHdlIGNhbiB1c2UgYSBsb3Qgb2YgYWJzdHJhY3Rpb24gaW4gb3VyIGltcGxlbWVudGF0aW9uLCBhbmQga2VlcCB0aGUgZGF0YSBzdHJ1Y3R1cmVzIGFzIHNpbXBsZSBhcyBwb3NzaWJsZS48L3A+CjxwPlRvIHN0YXJ0LCB3ZSBoYXZlIHRvIGRlZmluZSBzb21lIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBkaXNrcyBhbmQgdGhlIHN0YWNrcy4gVGhlIGRpc2tzIGhhdmUgb25lIGltcG9ydGFudCBwcm9wZXJ0eSwgd2hpY2ggaXMgdGhhdCB0aGV5IGFyZSBvcmRlcmVkLiBXZSBjYW4gdXNlIGludGVnZXJzIHRvIHJlcHJlc2VudCB0aGVtLjwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnfAQVbp7doYXNfcGx1dG9faG9va19mZWF0dXJlc8Kscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ5NWZiZDBkMi1hMmI5LTExZWEtMDY4Mi1mZGY3ODMyNTE3OTe5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AF++4p2Vycm9yZWTC2SQzNzI4MjRiNC1hMzMwLTExZWEtMmYyNi03YjlhMWFkMDE4ZjGIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIakYm9kedoBWjxkaXYgY2xhc3M9Im1hcmtkb3duIj48cD5Zb3UgY2FuIHVzZSB0aGlzIGZ1bmN0aW9uIHRvIHNlZSB3aGF0IHlvdXIgc29sdXRpb24gZG9lcy48L3A+CjxwPklmIDxjb2RlPnJ1bl9zb2x1dGlvbjwvY29kZT4gdHJpZXMgdG8gbWFrZSBhbiBpbXBvc3NpYmxlIG1vdmUsIGl0IHdpbGwgZ2l2ZSA8Y29kZT5taXNzaW5nPC9jb2RlPiBmcm9tIHRoYXQgcG9pbnQgb253YXJkcy4gTG9vayBhdCB3aGF0IGhhcHBlbnMgaW4gdGhlIDxjb2RlPndyb25nX3NvbHV0aW9uPC9jb2RlPiB2ZXJzaW9uIGFuZCBjb21wYXJlIGl0IHRvIHRoZSBtb3ZlcyBpbiA8Y29kZT53cm9uZ19zb2x1dGlvbjwvY29kZT4uPC9wPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad8BB2H6t2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqxyb290YXNzaWduZWXAp2NlbGxfaWTZJDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMblkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgAEZmCnZXJyb3JlZMLZJDViMmVlNDBlLWEyYjgtMTFlYS0wZmVmLWMzNWZlNjkxODg2MIimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0hqRib2R52gOxPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxoMT5UaGUgdG93ZXIgb2YgSGFub2k8L2gxPgo8cD5UaGUgdG93ZXIgb2YgaGFub2kgaXMgYSBmYW1vdXMgcHV6emxlLjwvcD4KPHA+PGltZyBzcmM9Imh0dHBzOi8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvMC8wNy9Ub3dlcl9vZl9IYW5vaS5qcGVnIiBhbHQ9InNldHVwIG9mIHRoZSB0b3dlciBvZiBhIGhhbm9pIiAvPjwvcD4KPHA+VGhlIGdhbWUgY29uc2lzdHMgb2YgdGhyZWUgcm9kcyB3aXRoIGRpc2tzIHN0YWNrZWQgb24gdG9wIG9mIHRoZW0uIFRoZSBwdXp6bGUgd2lsbCBzdGFydCB3aXRoIGFsbCBkaXNrcyBpbiBhIHN0YWNrIG9uIG9uZSBvZiB0aGUgcm9kcyAmIzQwO2xpa2UgaW4gdGhlIHBpY3R1cmUmIzQxOy4gVGhlIGdvYWwgaXMgdG8gbW92ZSBhbGwgdGhlIGRpc2NzIHRvIGEgc2luZ2xlIHN0YWNrIG9uIHRoZSBsYXN0IHJvZC48L3A+CjxwPlRvIG1vdmUgdGhlIGRpc2tzLCB5b3UgaGF2ZSB0byBmb2xsb3cgdGhlIGZvbGxvd2luZyBydWxlczo8L3A+Cjx1bD4KPGxpPjxwPllvdSBjYW4gbW92ZSBvbmx5IG9uZSBkaXNrIGF0IGEgdGltZS48L3A+CjwvbGk+CjxsaT48cD5Gb3IgZWFjaCBtb3ZlLCB5b3UgaGF2ZSB0byB0YWtlIHRoZSB1cHBlciBkaXNrIGZyb20gb25lIG9mIHRoZSBzdGFja3MsIGFuZCBwbGFjZSBpdCBvbiB0b3Agb2YgYW5vdGhlciBzdGFjayBvciBlbXB0eSByb2QuPC9wPgo8L2xpPgo8bGk+PHA+WW91IGNhbm5vdCBwbGFjZSBhIGxhcmdlciBkaXNrIG9uIHRvcCBvZiBhIHNtYWxsZXIgZGlzay48L3A+CjwvbGk+CjwvdWw+CjxwPlRoaXMgbm90ZWJvb2sgd2lsbCBkZWZpbmUgYSBKdWxpYSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgcHV6emxlLiBJdCYjMzk7cyB1cCB0byB5b3UgdG8gd3JpdGUgYW4gYWxnb3JpdGhtIHRoYXQgc29sdmVzIGl0LjwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnfAQLiTLdoYXNfcGx1dG9faG9va19mZWF0dXJlc8Kscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ1YjJlZTQwZS1hMmI4LTExZWEtMGZlZi1jMzVmZTY5MTg4NjC5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AL/+Zp2Vycm9yZWTC2SQ4ZWE3Zjk0NC1hMzI5LTExZWEtMjJjYy00ZGJkMTFlYzA2MTCIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIakYm9keaVmYWxzZbBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqnRleHQvcGxhaW6ybGFzdF9ydW5fdGltZXN0YW1wy0HYad8KgEHAt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqxyb290YXNzaWduZWXAp2NlbGxfaWTZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgpZ1banZXJyb3JlZMLZJGQ1Y2M0MWU4LWEyYmQtMTFlYS0zOWM3LWI3ZGY4ZGU2YWUzZYimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0hqRib2R52Stpc2NvbXBsZXRlIChnZW5lcmljIGZ1bmN0aW9uIHdpdGggMSBtZXRob2QpsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3wowM7W3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkZDVjYzQxZTgtYTJiZC0xMWVhLTM5YzctYjdkZjhkZTZhZTNluWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOAAirtadlcnJvcmVkwtkkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgziKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSGpGJvZHmFpnByZWZpeKVJbnQ2NKhlbGVtZW50c5iSAZKhMap0ZXh0L3BsYWlukgKSoTKqdGV4dC9wbGFpbpIDkqEzqnRleHQvcGxhaW6SBJKhNKp0ZXh0L3BsYWlukgWSoTWqdGV4dC9wbGFpbpIGkqE2qnRleHQvcGxhaW6SB5KhN6p0ZXh0L3BsYWlukgiSoTiqdGV4dC9wbGFpbqR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwMzU4YzNjNGMxNTMyMmUxMrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1l2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SybGFzdF9ydW5fdGltZXN0YW1wy0HYad8J7FPrt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqxyb290YXNzaWduZWWrZmlyc3Rfc3RhY2unY2VsbF9pZNkkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgzuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNUvanZXJyb3JlZMLZJGM1NmE1ODU4LWEyYmQtMTFlYS0xZDk2LTc3ZWFmNWU3NDkyNYimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0hqRib2R52gE+PGRpdiBjbGFzcz0ibWFya2Rvd24iPjxwPkFub3RoZXIgZnVuY3Rpb24gZm9yIHN0YXRlczogY2hlY2sgaWYgd2UgYXJlIGRvbmUmIzMzOyBXZSBjYW4gYXNzdW1lIHRoYXQgd2UgYWxyZWFkeSBjaGVja2VkIGlmIHRoZSBzdGF0ZSB3YXMgbGVnYWwuIFNvIHdlIGtub3cgdGhhdCBhbGwgdGhlIGRpc2tzIGFyZSB0aGVyZSBhbmQgdGhleSBhcmUgb3JkZXJlZCBjb3JyZWN0bHkuICBUbyBjaGVjayBpZiB3ZSBhcmUgZmluaXNoZWQsIHdlIGp1c3QgbmVlZCB0byBjaGVjayBpZiB0aGUgbGFzdCBzdGFjayBjb250YWlucyBhbGwgdGhlIGRpc2tzLjwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnfAQXgerdoYXNfcGx1dG9faG9va19mZWF0dXJlc8Kscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SRjNTZhNTg1OC1hMmJkLTExZWEtMWQ5Ni03N2VhZjVlNzQ5MjW5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AA2Z9p2Vycm9yZWTC2SQ1MzM3NGYwZS1hMmMwLTExZWEtMGM5MS05NzQ3NDc4MDcyMWWIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIakYm9kedoEXjxkaXYgY2xhc3M9Im1hcmtkb3duIj48cD5Ob3cgdGhlIG9ubHkgcnVsZXMgbGVmdCB0byBpbXBsZW1lbnQgYXJlIHRoZSBydWxlcyBmb3IgbW92aW5nIGRpc2tzLiA8L3A+CjxwPldlIGNvdWxkIGltcGxlbWVudCB0aGlzIGFzIGFub3RoZXIgY2hlY2sgb24gc3RhdGVzLCBidXQgaXQmIzM5O3MgZWFzaWVyIHRvIGp1c3Qgd3JpdGUgYSBsZWdhbCA8Y29kZT5tb3ZlPC9jb2RlPiBmdW5jdGlvbi4gWW91ciBzb2x1dGlvbiB3aWxsIHNwZWNpZnkgbW92ZXMgZm9yIHRoZSA8Y29kZT5tb3ZlPC9jb2RlPiBmdW5jdGlvbiwgc28gdGhpcyB3aWxsIGJlIHRoZSBvbmx5IHdheSB0aGF0IHRoZSBzdGFja3MgYXJlIGFjdHVhbGx5IG1hbmlwdWxhdGVkLiBUaGF0IHdheSwgd2UgYXJlIHN1cmUgdGhhdCBub3RoaW5nIGZpc2h5IGlzIGhhcHBlbmluZy48L3A+CjxwPldlIHdpbGwgbWFrZSBvdXIgPGNvZGU+bW92ZTwvY29kZT4gZnVuY3Rpb24gc28gdGhhdCBpdHMgaW5wdXQgY29uc2lzdHMgb2YgYSBzdGF0ZSBvZiB0aGUgZ2FtZSwgYW5kIGluc3RydWN0aW9ucyBmb3Igd2hhdCB0byBkby4gSXRzIG91dHB1dCB3aWxsIGJlIHRoZSBuZXcgc3RhdGUgb2YgdGhlIGdhbWUuPC9wPgo8cD5TbyB3aGF0IHNob3VsZCB0aG9zZSBpbnN0cnVjdGlvbnMgbG9vayBsaWtlPyBJdCBtYXkgc2VlbSBpbnR1aXRpdmUgdG8gZ2l2ZSBhIDxlbT5kaXNrPC9lbT4gdGhhdCBzaG91bGQgYmUgbW92ZWQsIGJ1dCB0aGF0JiMzOTtzIG1vcmUgdGhhbiB3ZSBuZWVkLiBBZnRlciBhbGwsIHdlIGFyZSBvbmx5IGFsbG93ZWQgdG8gdGFrZSB0aGUgdG9wIGRpc2sgZnJvbSBvbmUgc3RhY2ssIGFuZCBtb3ZlIGl0IHRvIHRoZSB0b3Agb2YgYW5vdGhlci4gU28gd2Ugb25seSBoYXZlIHRvIHNheSB3aGljaCA8ZW0+c3RhY2tzPC9lbT4gd2UgYXJlIG1vdmluZyBiZXR3ZWVuLjwvcD4KPHA+JiM0MDtOb3RlIHRoYXQgdGhlIDxjb2RlPm1vdmU8L2NvZGU+IGZ1bmN0aW9uIGlzIG9rYXkgd2l0aCBtb3ZpbmcgYSBsYXJnZXIgZGlzayBvbiB0b3Agb2YgYSBzbWFsbGVyIGRpc2suIFdlIGFscmVhZHkgaW1wbGVtZW50ZWQgdGhhdCByZXN0cmljdGlvbiBpbiA8Y29kZT5pc2xlZ2FsPC9jb2RlPi4mIzQxOzwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnfAQbuObdoYXNfcGx1dG9faG9va19mZWF0dXJlc8Kscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ1MzM3NGYwZS1hMmMwLTExZWEtMGM5MS05NzQ3NDc4MDcyMWW5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4ACOl+p2Vycm9yZWTC2SQzZWIzYzRjMC1hMmM1LTExZWEtMGJjYy1jOWI1MjA5NGY2NjCIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIakYm9kedmiPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxoMj5DaGVja2luZyBzb2x1dGlvbnM8L2gyPgo8cD5UaGlzIGlzIHdoZXJlIHdlIGNhbiBjaGVjayBhIHNvbHV0aW9uLiBXZSBzdGFydCB3aXRoIGEgZnVuY3Rpb24gdGhhdCB0YWtlcyBvdXIgcmVjaXBlIGFuZCBydW5zIGl0LjwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnfAQdIv7doYXNfcGx1dG9faG9va19mZWF0dXJlc8Kscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQzZWIzYzRjMC1hMmM1LTExZWEtMGJjYy1jOWI1MjA5NGY2NjC5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AA8ksp2Vycm9yZWTC2SRkMjIyN2I0MC1hMzI5LTExZWEtMTA1Yy1iNTg1ZDVmY2Y5NzCIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIakYm9keYWmcHJlZml4o0FueahlbGVtZW50c5WSAZKFpnByZWZpeKtWZWN0b3J7QW55fahlbGVtZW50c5OSAZKFpnByZWZpeKNBbnmoZWxlbWVudHOXkgGSoTGqdGV4dC9wbGFpbpICkqEyqnRleHQvcGxhaW6SA5KhM6p0ZXh0L3BsYWlukgSSoTSqdGV4dC9wbGFpbpIFkqE1qnRleHQvcGxhaW6kbW9yZZIIkqE4qnRleHQvcGxhaW6kdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDY2ZWY0N2ZiNzczZGJiZTDZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJICkoWmcHJlZml4o0FueahlbGVtZW50c5CkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksGJiZGY5ZDZiOWNlZWJhYmbZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJIDkoWmcHJlZml4o0FueahlbGVtZW50c5CkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDU4OTdjOWFkNTY1ZjAwMTTZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdKR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwMTE3NGY1Yzc0ODVhYTRmOdkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0kgKShaZwcmVmaXirVmVjdG9ye0FueX2oZWxlbWVudHOTkgGShaZwcmVmaXijQW55qGVsZW1lbnRzl5IBkqEyqnRleHQvcGxhaW6SApKhM6p0ZXh0L3BsYWlukgOSoTSqdGV4dC9wbGFpbpIEkqE1qnRleHQvcGxhaW6SBZKhNqp0ZXh0L3BsYWlukgaSoTeqdGV4dC9wbGFpbpIHkqE4qnRleHQvcGxhaW6kdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDQ0MWY5N2IwYWI0YWQ3MmbZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJICkoWmcHJlZml4o0FueahlbGVtZW50c5GSAZKhMap0ZXh0L3BsYWlupHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLA5YmNkZGM2NzViMTM1NDU32SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SSA5KFpnByZWZpeKNBbnmoZWxlbWVudHOQpHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLAyMDdmMTJhMTY0NzVjNTAx2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDkwM2I2ZTYxY2ZkYmU4YmPZIWFwcGxpY2F0aW9uL3ZuZC5wbHV0by50cmVlK29iamVjdJIDkoWmcHJlZml4q1ZlY3RvcntBbnl9qGVsZW1lbnRzk5IBkoWmcHJlZml4o0FueahlbGVtZW50c5eSAZKhMqp0ZXh0L3BsYWlukgKSoTOqdGV4dC9wbGFpbpIDkqE0qnRleHQvcGxhaW6SBJKhNap0ZXh0L3BsYWlukgWSoTaqdGV4dC9wbGFpbpIGkqE3qnRleHQvcGxhaW6SB5KhOKp0ZXh0L3BsYWlupHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLA1ZTk3MzUwZTYwM2ExMzI22SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SSApKFpnByZWZpeKNBbnmoZWxlbWVudHOQpHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLBlNjA5NjJlYWY4N2RmNjYx2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SSA5KFpnByZWZpeKNBbnmoZWxlbWVudHORkgGSoTGqdGV4dC9wbGFpbqR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwOGRiNTBjMzMzZWUxYmIwN9khYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0pHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLBjN2Y2OWZjNzNmNTI0NDdl2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SSBJKnbWlzc2luZ6p0ZXh0L3BsYWlukgWSp21pc3NpbmeqdGV4dC9wbGFpbqR0eXBlpUFycmF5rHByZWZpeF9zaG9ydKCob2JqZWN0aWSwZTAyYTQxMTQ2YWMxOTgyNLBwZXJzaXN0X2pzX3N0YXRlwqRtaW1l2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SybGFzdF9ydW5fdGltZXN0YW1wy0HYad8KWgSOt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqxyb290YXNzaWduZWXAp2NlbGxfaWTZJGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgRIaTunZXJyb3JlZMLZJDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZIimcXVldWVkwrFwdWJsaXNoZWRfb2JqZWN0c4CncnVubmluZ8Kmb3V0cHV0hqRib2R5haZwcmVmaXirVmVjdG9ye0FueX2oZWxlbWVudHOTkgGShaZwcmVmaXijQW55qGVsZW1lbnRzmJIBkqExqnRleHQvcGxhaW6SApKhMqp0ZXh0L3BsYWlukgOSoTOqdGV4dC9wbGFpbpIEkqE0qnRleHQvcGxhaW6SBZKhNap0ZXh0L3BsYWlukgaSoTaqdGV4dC9wbGFpbpIHkqE3qnRleHQvcGxhaW6SCJKhOKp0ZXh0L3BsYWlupHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLA2NmVmNDdmYjc3M2RiYmUw2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SSApKFpnByZWZpeKNBbnmoZWxlbWVudHOQpHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLBiYmRmOWQ2YjljZWViYWJm2SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SSA5KFpnByZWZpeKNBbnmoZWxlbWVudHOQpHR5cGWlQXJyYXmscHJlZml4X3Nob3J0oKhvYmplY3RpZLA1ODk3YzlhZDU2NWYwMDE02SFhcHBsaWNhdGlvbi92bmQucGx1dG8udHJlZStvYmplY3SkdHlwZaVBcnJheaxwcmVmaXhfc2hvcnSgqG9iamVjdGlksDExNzRmNWM3NDg1YWE0ZjmwcGVyc2lzdF9qc19zdGF0ZcKkbWltZdkhYXBwbGljYXRpb24vdm5kLnBsdXRvLnRyZWUrb2JqZWN0smxhc3RfcnVuX3RpbWVzdGFtcMtB2GnfChXMkrdoYXNfcGx1dG9faG9va19mZWF0dXJlc8Kscm9vdGFzc2lnbmVlr3N0YXJ0aW5nX3N0YWNrc6djZWxsX2lk2SQzMmYyNmY4MC1hMmJiLTExZWEtMGYyYS0zZmM2MzFhZGE2M2S5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc1PU6dlcnJvcmVkwtkkMjliNDEwY2MtYTMyOS0xMWVhLTIwMmEtNzk1YjMxY2U1YWQ1iKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSGpGJvZHnZL3dyb25nX3NvbHV0aW9uIChnZW5lcmljIGZ1bmN0aW9uIHdpdGggMSBtZXRob2QpsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3wo7nFq3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkMjliNDEwY2MtYTMyOS0xMWVhLTIwMmEtNzk1YjMxY2U1YWQ1uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOAAiI6qdlcnJvcmVkwtkkNDcwOWRiMzYtYTMyNy0xMWVhLTEzYTMtYmJmYjE4ZGE4NGNliKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSGpGJvZHnZLnJ1bl9zb2x1dGlvbiAoZ2VuZXJpYyBmdW5jdGlvbiB3aXRoIDIgbWV0aG9kcymwcGVyc2lzdF9qc19zdGF0ZcKkbWltZap0ZXh0L3BsYWlusmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnfCkX/MrdoYXNfcGx1dG9faG9va19mZWF0dXJlc8Kscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2W5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AGoSep2Vycm9yZWTC2SRiNjQ4YWI3MC1hMmJhLTExZWEtMmRjYy01NWI2MzBlNDQzMjWIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIakYm9kedlIPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxwPk5vdyB3ZSBoYXZlIHRvIG1ha2UgdGhyZWUgb2YgdGhvc2UuIDwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnfAQWrxbdoYXNfcGx1dG9faG9va19mZWF0dXJlc8Kscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SRiNjQ4YWI3MC1hMmJhLTExZWEtMmRjYy01NWI2MzBlNDQzMjW5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AAvhbp2Vycm9yZWTC2SQxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMziIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIakYm9kedkwY2hlY2tfc29sdXRpb24gKGdlbmVyaWMgZnVuY3Rpb24gd2l0aCAyIG1ldGhvZHMpsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhp3wpsz9W3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOABAQpadlcnJvcmVkwtkkODdiMmQxNjQtYTJjNC0xMWVhLTMwOTUtOTE2NjI4OTQzODc5iKZxdWV1ZWTCsXB1Ymxpc2hlZF9vYmplY3RzgKdydW5uaW5nwqZvdXRwdXSGpGJvZHnaAo88ZGl2IGNsYXNzPSJtYXJrZG93biI+PGgyPlNvbHZpbmcgdGhlIHByb2JsZW08L2gyPgo8cD5XZSBoYXZlIGltcGxlbWVudGVkIHRoZSBnYW1lIHBpZWNlcyBhbmQgdGhlIHJ1bGVzLCBzbyB5b3UgY2FuIHN0YXJ0IHdvcmtpbmcgb24geW91ciBzb2x1dGlvbi48L3A+CjxwPlRvIGRvIHRoaXMsIHlvdSBjYW4gZmlsbCBpbiB0aGUgPGNvZGU+c29sdmUmIzQwO3N0YWNrcyYjNDE7PC9jb2RlPiBmdW5jdGlvbi4gVGhpcyBmdW5jdGlvbiBzaG91bGQgZ2l2ZSBhIHNvbHV0aW9uIGZvciB0aGUgZ2l2ZW4gPGNvZGU+c3RhY2tzPC9jb2RlPiwgYnkgbW92aW5nIGFsbCB0aGUgZGlza3MgZnJvbSBzdGFjayAxIHRvIHN0YWNrIDMuPC9wPgo8cD5BcyBvdXRwdXQsIDxjb2RlPnNvbHZlPC9jb2RlPiBzaG91bGQgZ2l2ZSBhIHJlY2lwZSwgdGhhdCB0ZWxscyB1cyB3aGF0IHRvIGRvLiBUaGlzIHJlY2lwZSBzaG91bGQgYmUgYW4gYXJyYXkgb2YgbW92ZXMuIEVhY2ggbW92ZXMgaXMgYSA8Y29kZT4mIzQwO3NvdXJjZSwgdGFyZ2V0JiM0MTs8L2NvZGU+IHR1cGxlLCBzcGVjaWZ5aW5nIGZyb20gd2hpY2ggc3RhY2sgdG8gd2hpY2ggc3RhY2sgeW91IHNob3VsZCBtb3ZlLjwvcD4KPHA+Rm9yIGV4YW1wbGUsIGl0IG1pZ2h0IGxvb2sgbGlrZSB0aGlzOjwvcD4KPC9kaXY+sHBlcnNpc3RfanNfc3RhdGXCpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2GnfAQcN5bdoYXNfcGx1dG9faG9va19mZWF0dXJlc8Kscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ4N2IyZDE2NC1hMmM0LTExZWEtMzA5NS05MTY2Mjg5NDM4Nzm5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4ABqNUp2Vycm9yZWTC2SQzNWFkYTIxNC1hMzJjLTExZWEtMGRhMy1kNWQ0OTRiMjg0NjeIpnF1ZXVlZMKxcHVibGlzaGVkX29iamVjdHOAp3J1bm5pbmfCpm91dHB1dIakYm9kedmhPGRpdiBjbGFzcz0ibWFya2Rvd24iPjxwPiYjNDA7U2lkZSBub3RlOiB0aGUgbnVtYmVyIG9mIGRpc2tzIGlzIGFyYml0cmFyeS4gV2hlbiB0ZXN0aW5nIHlvdXIgZnVuY3Rpb24sIHlvdSBtYXkgd2FudCB0byBzZXQgaXQgdG8gMSBvciAyIHRvIHN0YXJ0LiYjNDE7PC9wPgo8L2Rpdj6wcGVyc2lzdF9qc19zdGF0ZcKkbWltZal0ZXh0L2h0bWyybGFzdF9ydW5fdGltZXN0YW1wy0HYad8BBXkxt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqxyb290YXNzaWduZWXAp2NlbGxfaWTZJDM1YWRhMjE0LWEzMmMtMTFlYS0wZGEzLWQ1ZDQ5NGIyODQ2N7lkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzgADjZGnZXJyb3JlZMKxY2VsbF9kZXBlbmRlbmNpZXPeABzZJDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZoS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZrRkb3duc3RyZWFtX2NlbGxzX21hcIGlc29sdmWT2SQ5MTczYjE3NC1hMzI3LTExZWEtM2E2OS05Zjc1MjVmMmU3YjTZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMNkkZTU0YWRkMGEtYTMzMC0xMWVhLTJlZWItMWQ0MmY1NTJiYTM4snVwc3RyZWFtX2NlbGxzX21hcISlVHVwbGWQo0ludJClQXJyYXmQr3N0YXJ0aW5nX3N0YWNrc5HZJDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZNkkN2UxYmEyYWMtYTJiYS0xMWVhLTAxMzQtMmY2MWVkNzViZTE4hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkN2UxYmEyYWMtYTJiYS0xMWVhLTAxMzQtMmY2MWVkNzViZTE4tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCBqGdldGluZGV4kNkkZTU0YWRkMGEtYTMzMC0xMWVhLTJlZWItMWQ0MmY1NTJiYTM4hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkZTU0YWRkMGEtYTMzMC0xMWVhLTJlZWItMWQ0MmY1NTJiYTM4tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCFqW51bV9kaXNrc5HZJDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiM6I+PZCuY2hlY2tfc29sdXRpb26R2SQxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMzilc29sdmWR2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmaoZ2V0aW5kZXiQ2SQ2MjBkNjgzNC1hMmJhLTExZWEtMTUwYS0yMTMyYmI1NGU0YjOEtHByZWNlZGVuY2VfaGV1cmlzdGljCadjZWxsX2lk2SQ2MjBkNjgzNC1hMmJhLTExZWEtMTUwYS0yMTMyYmI1NGU0YjO0ZG93bnN0cmVhbV9jZWxsc19tYXCBqW51bV9kaXNrc5LZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNNkkZTU0YWRkMGEtYTMzMC0xMWVhLTJlZWItMWQ0MmY1NTJiYTM4snVwc3RyZWFtX2NlbGxzX21hcIDZJDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNIS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNLRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgqVzb2x2ZZHZJDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZqxydW5fc29sdXRpb26R2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2XZJGJiNTA4OGVjLWEzMzAtMTFlYS0yYzQxLTZiOGI5MjcyNGIzYoS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJGJiNTA4OGVjLWEzMzAtMTFlYS0yYzQxLTZiOGI5MjcyNGIzYrRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgahnZXRpbmRleJDZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNIS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNLRkb3duc3RyZWFtX2NlbGxzX21hcIGpYWxsX2Rpc2tzk9kkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgz2SQ1MTJmYTZkMi1hMmJkLTExZWEtM2RiZS1iOTM1YjUzNjk2N2LZJGQ1Y2M0MWU4LWEyYmQtMTFlYS0zOWM3LWI3ZGY4ZGU2YWUzZbJ1cHN0cmVhbV9jZWxsc19tYXCCoTqQqW51bV9kaXNrc5HZJDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiM9kkZTkxNTM5NGUtYTJjMC0xMWVhLTBjZDktMWRmNmZkM2M3YWRmhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkZTkxNTM5NGUtYTJjMC0xMWVhLTBjZDktMWRmNmZkM2M3YWRmtGRvd25zdHJlYW1fY2VsbHNfbWFwgaRtb3ZlkdkkNDcwOWRiMzYtYTMyNy0xMWVhLTEzYTMtYmJmYjE4ZGE4NGNlsnVwc3RyZWFtX2NlbGxzX21hcIaqcHVzaGZpcnN0IZCoZGVlcGNvcHmQpWVycm9ykKNJbnSQp2lzZW1wdHmQqXBvcGZpcnN0IZDZJGUzNDdmMWRlLWEyYmItMTFlYS0wNmU3LTg3Y2NhNmYyYTI0MIS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJGUzNDdmMWRlLWEyYmItMTFlYS0wNmU3LTg3Y2NhNmYyYTI0MLRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgahnZXRpbmRleJDZJDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YoS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YrRkb3duc3RyZWFtX2NlbGxzX21hcIGnaXNsZWdhbJHZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOLJ1cHN0cmVhbV9jZWxsc19tYXCFqWFsbF9kaXNrc5HZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNKRzb3J0kKhpc3NvcnRlZJCiPT2Qo2FsbJDZJGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMYS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMbRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgahnZXRpbmRleJDZJDk1ZmJkMGQyLWEyYjktMTFlYS0wNjgyLWZkZjc4MzI1MTc5N4S0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDk1ZmJkMGQyLWEyYjktMTFlYS0wNjgyLWZkZjc4MzI1MTc5N7Rkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgahnZXRpbmRleJDZJDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMYS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDM3MjgyNGI0LWEzMzAtMTFlYS0yZjI2LTdiOWExYWQwMThmMbRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgahnZXRpbmRleJDZJDViMmVlNDBlLWEyYjgtMTFlYS0wZmVmLWMzNWZlNjkxODg2MIS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDViMmVlNDBlLWEyYjgtMTFlYS0wZmVmLWMzNWZlNjkxODg2MLRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgahnZXRpbmRleJDZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMIS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMLRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgq5jaGVja19zb2x1dGlvbpHZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOKVzb2x2ZZHZJDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZtkkZDVjYzQxZTgtYTJiZC0xMWVhLTM5YzctYjdkZjhkZTZhZTNlhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkZDVjYzQxZTgtYTJiZC0xMWVhLTM5YzctYjdkZjhkZTZhZTNltGRvd25zdHJlYW1fY2VsbHNfbWFwgappc2NvbXBsZXRlkdkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4snVwc3RyZWFtX2NlbGxzX21hcIOkbGFzdJCiPT2QqWFsbF9kaXNrc5HZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNNkkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgzhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgztGRvd25zdHJlYW1fY2VsbHNfbWFwgatmaXJzdF9zdGFja5HZJDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZLJ1cHN0cmVhbV9jZWxsc19tYXCCp2NvbGxlY3SQqWFsbF9kaXNrc5HZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNNkkYzU2YTU4NTgtYTJiZC0xMWVhLTFkOTYtNzdlYWY1ZTc0OTI1hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkYzU2YTU4NTgtYTJiZC0xMWVhLTFkOTYtNzdlYWY1ZTc0OTI1tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCBqGdldGluZGV4kNkkNTMzNzRmMGUtYTJjMC0xMWVhLTBjOTEtOTc0NzQ3ODA3MjFlhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkNTMzNzRmMGUtYTJjMC0xMWVhLTBjOTEtOTc0NzQ3ODA3MjFltGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCBqGdldGluZGV4kNkkM2ViM2M0YzAtYTJjNS0xMWVhLTBiY2MtYzliNTIwOTRmNjYwhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkM2ViM2M0YzAtYTJjNS0xMWVhLTBiY2MtYzliNTIwOTRmNjYwtGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCBqGdldGluZGV4kNkkZDIyMjdiNDAtYTMyOS0xMWVhLTEwNWMtYjU4NWQ1ZmNmOTcwhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkZDIyMjdiNDAtYTMyOS0xMWVhLTEwNWMtYjU4NWQ1ZmNmOTcwtGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCrndyb25nX3NvbHV0aW9ukdkkMjliNDEwY2MtYTMyOS0xMWVhLTIwMmEtNzk1YjMxY2U1YWQ1rHJ1bl9zb2x1dGlvbpHZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZdkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNkhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNktGRvd25zdHJlYW1fY2VsbHNfbWFwga9zdGFydGluZ19zdGFja3OT2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmbZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZdkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4snVwc3RyZWFtX2NlbGxzX21hcIGrZmlyc3Rfc3RhY2uR2SQ0Mzc4MWE1Mi1hMzM5LTExZWEtMzgwMy1lNTZlMmQwOGFhODPZJDI5YjQxMGNjLWEzMjktMTFlYS0yMDJhLTc5NWIzMWNlNWFkNYS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDI5YjQxMGNjLWEzMjktMTFlYS0yMDJhLTc5NWIzMWNlNWFkNbRkb3duc3RyZWFtX2NlbGxzX21hcIGud3Jvbmdfc29sdXRpb26R2SRkMjIyN2I0MC1hMzI5LTExZWEtMTA1Yy1iNTg1ZDVmY2Y5NzCydXBzdHJlYW1fY2VsbHNfbWFwg6VUdXBsZZCjSW50kKVBcnJheZDZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZYS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZbRkb3duc3RyZWFtX2NlbGxzX21hcIGscnVuX3NvbHV0aW9uk9kkZDIyMjdiNDAtYTMyOS0xMWVhLTEwNWMtYjU4NWQ1ZmNmOTcw2SQ5MTczYjE3NC1hMzI3LTExZWEtM2E2OS05Zjc1MjVmMmU3YjTZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOLJ1cHN0cmVhbV9jZWxsc19tYXCLp21pc3NpbmeQo0FueZCoRnVuY3Rpb26Qpmxlbmd0aJCpZW51bWVyYXRlkKhkZWVwY29weZChK5CldW5kZWaQpUFycmF5kKRtb3ZlkdkkZTkxNTM5NGUtYTJjMC0xMWVhLTBjZDktMWRmNmZkM2M3YWRmr3N0YXJ0aW5nX3N0YWNrc5HZJDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZNkkYjY0OGFiNzAtYTJiYS0xMWVhLTJkY2MtNTViNjMwZTQ0MzI1hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkYjY0OGFiNzAtYTJiYS0xMWVhLTJkY2MtNTViNjMwZTQ0MzI1tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCBqGdldGluZGV4kNkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkMTBmYjFjNTYtYTJjNS0xMWVhLTJhMDYtMGQ4YzM2YmZhMTM4tGRvd25zdHJlYW1fY2VsbHNfbWFwga5jaGVja19zb2x1dGlvbpLZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMNkkZTU0YWRkMGEtYTMzMC0xMWVhLTJlZWItMWQ0MmY1NTJiYTM4snVwc3RyZWFtX2NlbGxzX21hcIijYWxskKPiiJiQp2lzbGVnYWyR2SQ1MTJmYTZkMi1hMmJkLTExZWEtM2RiZS1iOTM1YjUzNjk2N2KqaXNjb21wbGV0ZZHZJGQ1Y2M0MWU4LWEyYmQtMTFlYS0zOWM3LWI3ZGY4ZGU2YWUzZaxydW5fc29sdXRpb26R2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2WkbGFzdJCoRnVuY3Rpb26Qr3N0YXJ0aW5nX3N0YWNrc5HZJDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZNkkODdiMmQxNjQtYTJjNC0xMWVhLTMwOTUtOTE2NjI4OTQzODc5hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkODdiMmQxNjQtYTJjNC0xMWVhLTMwOTUtOTE2NjI4OTQzODc5tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCBqGdldGluZGV4kNkkMzVhZGEyMTQtYTMyYy0xMWVhLTBkYTMtZDVkNDk0YjI4NDY3hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkMzVhZGEyMTQtYTMyYy0xMWVhLTBkYTMtZDVkNDk0YjI4NDY3tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCBqGdldGluZGV4kLRjZWxsX2V4ZWN1dGlvbl9vcmRlctwAHNkkNWIyZWU0MGUtYTJiOC0xMWVhLTBmZWYtYzM1ZmU2OTE4ODYw2SQ5NWZiZDBkMi1hMmI5LTExZWEtMDY4Mi1mZGY3ODMyNTE3OTfZJDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiM9kkMzVhZGEyMTQtYTMyYy0xMWVhLTBkYTMtZDVkNDk0YjI4NDY32SQ3MjQzY2M4ZS1hMmJhLTExZWEtM2YyOS05OTM1NmYwY2RjZjTZJDdlMWJhMmFjLWEyYmEtMTFlYS0wMTM0LTJmNjFlZDc1YmUxONkkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgz2SRiNjQ4YWI3MC1hMmJhLTExZWEtMmRjYy01NWI2MzBlNDQzMjXZJDMyZjI2ZjgwLWEyYmItMTFlYS0wZjJhLTNmYzYzMWFkYTYzZNkkZTM0N2YxZGUtYTJiYi0xMWVhLTA2ZTctODdjY2E2ZjJhMjQw2SQ1MTJmYTZkMi1hMmJkLTExZWEtM2RiZS1iOTM1YjUzNjk2N2LZJGM1NmE1ODU4LWEyYmQtMTFlYS0xZDk2LTc3ZWFmNWU3NDkyNdkkZDVjYzQxZTgtYTJiZC0xMWVhLTM5YzctYjdkZjhkZTZhZTNl2SQ1MzM3NGYwZS1hMmMwLTExZWEtMGM5MS05NzQ3NDc4MDcyMWXZJGU5MTUzOTRlLWEyYzAtMTFlYS0wY2Q5LTFkZjZmZDNjN2FkZtkkODdiMmQxNjQtYTJjNC0xMWVhLTMwOTUtOTE2NjI4OTQzODc52SQyOWI0MTBjYy1hMzI5LTExZWEtMjAyYS03OTViMzFjZTVhZDXZJGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMdkkMDEwZGJkYmMtYTJjNS0xMWVhLTM0YzMtODM3ZWFlMTc0MTZm2SQzZWIzYzRjMC1hMmM1LTExZWEtMGJjYy1jOWI1MjA5NGY2NjDZJDQ3MDlkYjM2LWEzMjctMTFlYS0xM2EzLWJiZmIxOGRhODRjZdkkMzcyODI0YjQtYTMzMC0xMWVhLTJmMjYtN2I5YTFhZDAxOGYx2SRkMjIyN2I0MC1hMzI5LTExZWEtMTA1Yy1iNTg1ZDVmY2Y5NzDZJDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNNkkYmI1MDg4ZWMtYTMzMC0xMWVhLTJjNDEtNmI4YjkyNzI0YjNi2SQxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMzjZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMNkkZTU0YWRkMGEtYTMzMC0xMWVhLTJlZWItMWQ0MmY1NTJiYTM4tGxhc3RfaG90X3JlbG9hZF90aW1lywAAAAAAAAAAqXNob3J0cGF0aLhzYW1wbGUgVG93ZXIgb2YgSGFub2kuamyucHJvY2Vzc19zdGF0dXOlcmVhZHmkcGF0aNk3L3Nydi9qdWxpYS9wa2cvcGx1dG9fbm90ZWJvb2tzL3NhbXBsZSBUb3dlciBvZiBIYW5vaS5qbK5sYXN0X3NhdmVfdGltZctB2GnfCJ4K2apjZWxsX29yZGVy3AAc2SQ1YjJlZTQwZS1hMmI4LTExZWEtMGZlZi1jMzVmZTY5MTg4NjDZJDk1ZmJkMGQyLWEyYjktMTFlYS0wNjgyLWZkZjc4MzI1MTc5N9kkNjIwZDY4MzQtYTJiYS0xMWVhLTE1MGEtMjEzMmJiNTRlNGIz2SQzNWFkYTIxNC1hMzJjLTExZWEtMGRhMy1kNWQ0OTRiMjg0NjfZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNNkkN2UxYmEyYWMtYTJiYS0xMWVhLTAxMzQtMmY2MWVkNzViZTE42SQ0Mzc4MWE1Mi1hMzM5LTExZWEtMzgwMy1lNTZlMmQwOGFhODPZJGI2NDhhYjcwLWEyYmEtMTFlYS0yZGNjLTU1YjYzMGU0NDMyNdkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNk2SRlMzQ3ZjFkZS1hMmJiLTExZWEtMDZlNy04N2NjYTZmMmEyNDDZJDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YtkkYzU2YTU4NTgtYTJiZC0xMWVhLTFkOTYtNzdlYWY1ZTc0OTI12SRkNWNjNDFlOC1hMmJkLTExZWEtMzljNy1iN2RmOGRlNmFlM2XZJDUzMzc0ZjBlLWEyYzAtMTFlYS0wYzkxLTk3NDc0NzgwNzIxZdkkZTkxNTM5NGUtYTJjMC0xMWVhLTBjZDktMWRmNmZkM2M3YWRm2SQ4N2IyZDE2NC1hMmM0LTExZWEtMzA5NS05MTY2Mjg5NDM4NznZJDI5YjQxMGNjLWEzMjktMTFlYS0yMDJhLTc5NWIzMWNlNWFkNdkkZWEyNGU3NzgtYTMyZS0xMWVhLTNmMTEtZGJlOWQzNmIxMDEx2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmbZJDNlYjNjNGMwLWEyYzUtMTFlYS0wYmNjLWM5YjUyMDk0ZjY2MNkkNDcwOWRiMzYtYTMyNy0xMWVhLTEzYTMtYmJmYjE4ZGE4NGNl2SQzNzI4MjRiNC1hMzMwLTExZWEtMmYyNi03YjlhMWFkMDE4ZjHZJGQyMjI3YjQwLWEzMjktMTFlYS0xMDVjLWI1ODVkNWZjZjk3MNkkOTE3M2IxNzQtYTMyNy0xMWVhLTNhNjktOWY3NTI1ZjJlN2I02SRiYjUwODhlYy1hMzMwLTExZWEtMmM0MS02YjhiOTI3MjRiM2LZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzONkkOGVhN2Y5NDQtYTMyOS0xMWVhLTIyY2MtNGRiZDExZWMwNjEw2SRlNTRhZGQwYS1hMzMwLTExZWEtMmVlYi0xZDQyZjU1MmJhMzilbmJwa2eHsmluc3RhbGxlZF92ZXJzaW9uc4CwdGVybWluYWxfb3V0cHV0c4CnZW5hYmxlZMO3cmVzdGFydF9yZWNvbW1lbmRlZF9tc2fAtHJlc3RhcnRfcmVxdWlyZWRfbXNnwK1idXN5X3BhY2thZ2VzkKxpbnN0YW50aWF0ZWTDq2NlbGxfaW5wdXRz3gAc2SQwMTBkYmRiYy1hMmM1LTExZWEtMzRjMy04MzdlYWUxNzQxNmaEp2NlbGxfaWTZJDAxMGRiZGJjLWEyYzUtMTFlYS0zNGMzLTgzN2VhZTE3NDE2ZrBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2WBmdW5jdGlvbiBzb2x2ZShzdGFydCA9IHN0YXJ0aW5nX3N0YWNrcyk6OkFycmF5e1R1cGxle0ludCwgSW50fX0KCQoJI3doYXQgdG8gZG8/CgkKCXJldHVybiBbXQplbmSrY29kZV9mb2xkZWTC2SQ3ZTFiYTJhYy1hMmJhLTExZWEtMDEzNC0yZjYxZWQ3NWJlMTiEp2NlbGxfaWTZJDdlMWJhMmFjLWEyYmEtMTFlYS0wMTM0LTJmNjFlZDc1YmUxOLBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2XdtZCIiIgpBIHNpbmdsZSBzdGFjayBjYW4gYmUgcmVwcmVzZW50ZWQgYXMgYW4gYXJyYXkgd2l0aCBhbGwgdGhlIGRpc2tzIGluIGl0LiBXZSB3aWxsIGxpc3QgdGhlbSBmcm9tIHRvcCB0byBib3R0b20uCiIiIqtjb2RlX2ZvbGRlZMPZJGU1NGFkZDBhLWEzMzAtMTFlYS0yZWViLTFkNDJmNTUyYmEzOISnY2VsbF9pZNkkZTU0YWRkMGEtYTMzMC0xMWVhLTJlZWItMWQ0MmY1NTJiYTM4sHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaAThpZiBjaGVja19zb2x1dGlvbihzb2x2ZSkKCWlmIG51bV9kaXNrcyA+PSA4CgkJbWQiIiIKCQkjIyMjIENvbmdyYXR1bGF0aW9ucywgeW91ciBzb2x1dGlvbiB3b3JrcyEg8J+YjgoJCSIiIgoJZWxzZQoJCW1kIiIiCgkJWW91ciBzb2x1dGlvbiB3b3JrcyBmb3IgJChudW1fZGlza3MpIGRpc2tzLiBDaGFuZ2UgYG51bV9kaXNrc2AgdG8gc2VlIGlmIGl0IHdvcmtzIGZvciA4IG9yIG1vcmUuCgkJIiIiCgllbmQKZWxzZQoJbWQiIiIKCVRoZSBgc29sdmVgIGZ1bmN0aW9uIGRvZXNuJ3Qgd29yayB5ZXQuIEtlZXAgd29ya2luZyBvbiBpdCEKCSIiIgplbmSrY29kZV9mb2xkZWTD2SQ2MjBkNjgzNC1hMmJhLTExZWEtMTUwYS0yMTMyYmI1NGU0YjOEp2NlbGxfaWTZJDYyMGQ2ODM0LWEyYmEtMTFlYS0xNTBhLTIxMzJiYjU0ZTRiM7BydW5uaW5nX2Rpc2FibGVkwqRjb2RlrW51bV9kaXNrcyA9IDirY29kZV9mb2xkZWTC2SQ5MTczYjE3NC1hMzI3LTExZWEtM2E2OS05Zjc1MjVmMmU3YjSEp2NlbGxfaWTZJDkxNzNiMTc0LWEzMjctMTFlYS0zYTY5LTlmNzUyNWYyZTdiNLBydW5uaW5nX2Rpc2FibGVkwqRjb2Rls3J1bl9zb2x1dGlvbihzb2x2ZSmrY29kZV9mb2xkZWTC2SRiYjUwODhlYy1hMzMwLTExZWEtMmM0MS02YjhiOTI3MjRiM2KEp2NlbGxfaWTZJGJiNTA4OGVjLWEzMzAtMTFlYS0yYzQxLTZiOGI5MjcyNGIzYrBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2bltZCIiIgpOb3cgdGhhdCB3ZSBoYXZlIHdheSB0byBydW4gYSByZWNpcGUsIHdlIGNhbiBjaGVjayBpZiBpdHMgb3V0cHV0IGlzIGNvcnJlY3QuIFdlIHdpbGwgY2hlY2sgaWYgYWxsIHRoZSBpbnRlcm1lZGlhdGUgc3RhdGVzIGFyZSBsZWdhbCBhbmQgdGhlIGZpbmFsIHN0YXRlIGlzIHRoZSBmaW5pc2hlZCBwdXp6bGUuCiIiIqtjb2RlX2ZvbGRlZMPZJDcyNDNjYzhlLWEyYmEtMTFlYS0zZjI5LTk5MzU2ZjBjZGNmNISnY2VsbF9pZNkkNzI0M2NjOGUtYTJiYS0xMWVhLTNmMjktOTkzNTZmMGNkY2Y0sHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGW3YWxsX2Rpc2tzID0gMTpudW1fZGlza3OrY29kZV9mb2xkZWTC2SRlOTE1Mzk0ZS1hMmMwLTExZWEtMGNkOS0xZGY2ZmQzYzdhZGaEp2NlbGxfaWTZJGU5MTUzOTRlLWEyYzAtMTFlYS0wY2Q5LTFkZjZmZDNjN2FkZrBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2gFWZnVuY3Rpb24gbW92ZShzdGFja3MsIHNvdXJjZTo6SW50LCB0YXJnZXQ6OkludCkKCSNjaGVjayBpZiB0aGUgZnJvbSBzdGFjayBpZiBub3QgZW1wdHkKCWlmIGlzZW1wdHkoc3RhY2tzW3NvdXJjZV0pCgkJZXJyb3IoIkVycm9yOiBhdHRlbXB0ZWQgdG8gbW92ZSBkaXNrIGZyb20gZW1wdHkgc3RhY2siKQoJZW5kCgkKCW5ld19zdGFja3MgPSBkZWVwY29weShzdGFja3MpCgkKCWRpc2sgPSBwb3BmaXJzdCEobmV3X3N0YWNrc1tzb3VyY2VdKSAjdGFrZSBkaXNrCglwdXNoZmlyc3QhKG5ld19zdGFja3NbdGFyZ2V0XSwgZGlzaykgI3B1dCBvbiBuZXcgc3RhY2sKCQoJcmV0dXJuIG5ld19zdGFja3MKZW5kq2NvZGVfZm9sZGVkwtkkZTM0N2YxZGUtYTJiYi0xMWVhLTA2ZTctODdjY2E2ZjJhMjQwhKdjZWxsX2lk2SRlMzQ3ZjFkZS1hMmJiLTExZWEtMDZlNy04N2NjYTZmMmEyNDCwcnVubmluZ19kaXNhYmxlZMKkY29kZdoB1G1kIiIiCiMjIERlZmluaW5nIHRoZSBydWxlcwoKTm93IHRoYXQgd2UgaGF2ZSBvdXIgImdhbWUgYm9hcmQiLCB3ZSBjYW4gaW1wbGVtZW50IHRoZSBydWxlcy4KClRvIHN0YXJ0LCB3ZSBtYWtlIHR3byBmdW5jdGlvbnMgZm9yIHN0YXRlcy4gQSBzdGF0ZSBvZiB0aGUgZ2FtZSBpcyBqdXN0IGFuIGFycmF5IG9mIHN0YWNrcy4KCldlIHdpbGwgZGVmaW5lIGEgZnVuY3Rpb24gdGhhdCBjaGVja3MgaWYgYSBzdGF0ZSBpcyBva2F5IGFjY29yZGluZyB0byB0aGUgcnVsZXMuIFRvIGJlIGxlZ2FsLCBhbGwgdGhlIHN0YWNrcyBzaG91bGQgYmUgaW4gdGhlIGNvcnJlY3Qgb3JkZXIsIHNvIG5vIGxhcmdlciBkaXNrcyBvbiB0b3Agb2Ygc21hbGxlciBkaXNrcy4gCgpBbm90aGVyIGdvb2QgdGhpbmcgdG8gY2hlY2s6IG5vIGRpc2tzIHNob3VsZCBoYXZlIGFwcGVhcmVkIG9yIGRpc2FwcGVhcmVkIHNpbmNlIHdlIHN0YXJ0ZWQhCiIiIqtjb2RlX2ZvbGRlZMPZJDUxMmZhNmQyLWEyYmQtMTFlYS0zZGJlLWI5MzViNTM2OTY3YoSnY2VsbF9pZNkkNTEyZmE2ZDItYTJiZC0xMWVhLTNkYmUtYjkzNWI1MzY5NjdisHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaARZmdW5jdGlvbiBpc2xlZ2FsKHN0YWNrcykKCW9yZGVyX2NvcnJlY3QgPSBhbGwoaXNzb3J0ZWQsIHN0YWNrcykKCQoJI2NoZWNrIGlmIHdlIHVzZSB0aGUgc2FtZSBkaXNrIHNldCB0aGF0IHdlIHN0YXJ0ZWQgd2l0aAoJCglkaXNrc19pbl9zdGF0ZSA9IHNvcnQoW2Rpc2sgZm9yIHN0YWNrIGluIHN0YWNrcyBmb3IgZGlzayBpbiBzdGFja10pCglkaXNrc19jb21wbGV0ZSA9IGRpc2tzX2luX3N0YXRlID09IGFsbF9kaXNrcwoJCglvcmRlcl9jb3JyZWN0ICYmIGRpc2tzX2NvbXBsZXRlCmVuZKtjb2RlX2ZvbGRlZMLZJGVhMjRlNzc4LWEzMmUtMTFlYS0zZjExLWRiZTlkMzZiMTAxMYSnY2VsbF9pZNkkZWEyNGU3NzgtYTMyZS0xMWVhLTNmMTEtZGJlOWQzNmIxMDExsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaAUptZCIiIgpOb3cgeW91IGNhbiB3b3JrIG9uIGJ1aWxkaW5nIGFuIGFjdHVhbCBzb2x1dGlvbi4gU29tZSB0aXBzOgoqIGBzb2x2ZShzdGFja3MpYCBjYW4ga2VlcCB0cmFjayBvZiB0aGUgYm9hcmQgaWYgeW91IHdhbnQsIGJ1dCBpdCBkb2Vzbid0IGhhdmUgdG8uCiogVGhlIHNlY3Rpb24gYmVsb3cgd2lsbCBhY3R1YWxseSBydW4geW91ciBtb3Zlcywgd2hpY2ggaXMgdmVyeSB1c2VmdWwgZm9yIGNoZWNraW5nIHRoZW0uCiogSWYgeW91IHdhbnQsIHlvdSBjYW4gY2hhbmdlIGBudW1fZGlza3NgIHRvIDEgb3IgMi4gVGhhdCBjYW4gYmUgYSBnb29kIHN0YXJ0aW5nIHBvaW50LgoiIiKrY29kZV9mb2xkZWTD2SQ5NWZiZDBkMi1hMmI5LTExZWEtMDY4Mi1mZGY3ODMyNTE3OTeEp2NlbGxfaWTZJDk1ZmJkMGQyLWEyYjktMTFlYS0wNjgyLWZkZjc4MzI1MTc5N7BydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2gJbbWQiIiIKIyMgU2V0dGluZyB1cCB0aGUgZ2FtZSBwaWVjZXMKCldoYXQgZG9lcyBhIEp1bGlhIGltcGxlbWVudGF0aW9uIGxvb2sgbGlrZT8gV2UncmUgbm90IHJlYWxseSBpbnRlcmVzdGVkIGluIHdyaXRpbmcgY29kZSB0aGF0IHdpbGwgbWFuaXB1bGF0ZSBwaHlzaWNhbCBkaXNrcy4gT3VyIGZpbmFsIGdvYWwgaXMgYSBmdW5jdGlvbiB0aGF0IHdpbGwgZ2l2ZSB1cyBhIF9yZWNpcGVfIHRvIHNvbHZlIHRoZSB0b3dlciBvZiBoYW5vaSwgd2hpY2ggaXMganVzdCBhIGxpc3Qgb2YgbW92ZXMgdG8gbWFrZS4gQmVjYXVzZSBvZiB0aGF0LCB3ZSBjYW4gdXNlIGEgbG90IG9mIGFic3RyYWN0aW9uIGluIG91ciBpbXBsZW1lbnRhdGlvbiwgYW5kIGtlZXAgdGhlIGRhdGEgc3RydWN0dXJlcyBhcyBzaW1wbGUgYXMgcG9zc2libGUuCgpUbyBzdGFydCwgd2UgaGF2ZSB0byBkZWZpbmUgc29tZSByZXByZXNlbnRhdGlvbiBvZiB0aGUgZGlza3MgYW5kIHRoZSBzdGFja3MuIFRoZSBkaXNrcyBoYXZlIG9uZSBpbXBvcnRhbnQgcHJvcGVydHksIHdoaWNoIGlzIHRoYXQgdGhleSBhcmUgb3JkZXJlZC4gV2UgY2FuIHVzZSBpbnRlZ2VycyB0byByZXByZXNlbnQgdGhlbS4KIiIiq2NvZGVfZm9sZGVkw9kkMzcyODI0YjQtYTMzMC0xMWVhLTJmMjYtN2I5YTFhZDAxOGYxhKdjZWxsX2lk2SQzNzI4MjRiNC1hMzMwLTExZWEtMmYyNi03YjlhMWFkMDE4ZjGwcnVubmluZ19kaXNhYmxlZMKkY29kZdoBDm1kIiIiCllvdSBjYW4gdXNlIHRoaXMgZnVuY3Rpb24gdG8gc2VlIHdoYXQgeW91ciBzb2x1dGlvbiBkb2VzLgoKSWYgYHJ1bl9zb2x1dGlvbmAgdHJpZXMgdG8gbWFrZSBhbiBpbXBvc3NpYmxlIG1vdmUsIGl0IHdpbGwgZ2l2ZSBgbWlzc2luZ2AgZnJvbSB0aGF0IHBvaW50IG9ud2FyZHMuIExvb2sgYXQgd2hhdCBoYXBwZW5zIGluIHRoZSBgd3Jvbmdfc29sdXRpb25gIHZlcnNpb24gYW5kIGNvbXBhcmUgaXQgdG8gdGhlIG1vdmVzIGluIGB3cm9uZ19zb2x1dGlvbmAuCiIiIqtjb2RlX2ZvbGRlZMPZJDViMmVlNDBlLWEyYjgtMTFlYS0wZmVmLWMzNWZlNjkxODg2MISnY2VsbF9pZNkkNWIyZWU0MGUtYTJiOC0xMWVhLTBmZWYtYzM1ZmU2OTE4ODYwsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaAyZtZCIiIgojIFRoZSB0b3dlciBvZiBIYW5vaQoKVGhlIHRvd2VyIG9mIGhhbm9pIGlzIGEgZmFtb3VzIHB1enpsZS4KCiFbc2V0dXAgb2YgdGhlIHRvd2VyIG9mIGEgaGFub2ldKGh0dHBzOi8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvMC8wNy9Ub3dlcl9vZl9IYW5vaS5qcGVnKQoKVGhlIGdhbWUgY29uc2lzdHMgb2YgdGhyZWUgcm9kcyB3aXRoIGRpc2tzIHN0YWNrZWQgb24gdG9wIG9mIHRoZW0uIFRoZSBwdXp6bGUgd2lsbCBzdGFydCB3aXRoIGFsbCBkaXNrcyBpbiBhIHN0YWNrIG9uIG9uZSBvZiB0aGUgcm9kcyAobGlrZSBpbiB0aGUgcGljdHVyZSkuIFRoZSBnb2FsIGlzIHRvIG1vdmUgYWxsIHRoZSBkaXNjcyB0byBhIHNpbmdsZSBzdGFjayBvbiB0aGUgbGFzdCByb2QuCgpUbyBtb3ZlIHRoZSBkaXNrcywgeW91IGhhdmUgdG8gZm9sbG93IHRoZSBmb2xsb3dpbmcgcnVsZXM6CgoqIFlvdSBjYW4gbW92ZSBvbmx5IG9uZSBkaXNrIGF0IGEgdGltZS4KKiBGb3IgZWFjaCBtb3ZlLCB5b3UgaGF2ZSB0byB0YWtlIHRoZSB1cHBlciBkaXNrIGZyb20gb25lIG9mIHRoZSBzdGFja3MsIGFuZCBwbGFjZSBpdCBvbiB0b3Agb2YgYW5vdGhlciBzdGFjayBvciBlbXB0eSByb2QuCiogWW91IGNhbm5vdCBwbGFjZSBhIGxhcmdlciBkaXNrIG9uIHRvcCBvZiBhIHNtYWxsZXIgZGlzay4KClRoaXMgbm90ZWJvb2sgd2lsbCBkZWZpbmUgYSBKdWxpYSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgcHV6emxlLiBJdCdzIHVwIHRvIHlvdSB0byB3cml0ZSBhbiBhbGdvcml0aG0gdGhhdCBzb2x2ZXMgaXQuCiIiIqtjb2RlX2ZvbGRlZMPZJDhlYTdmOTQ0LWEzMjktMTFlYS0yMmNjLTRkYmQxMWVjMDYxMISnY2VsbF9pZNkkOGVhN2Y5NDQtYTMyOS0xMWVhLTIyY2MtNGRiZDExZWMwNjEwsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGW1Y2hlY2tfc29sdXRpb24oc29sdmUpq2NvZGVfZm9sZGVkwtkkZDVjYzQxZTgtYTJiZC0xMWVhLTM5YzctYjdkZjhkZTZhZTNlhKdjZWxsX2lk2SRkNWNjNDFlOC1hMmJkLTExZWEtMzljNy1iN2RmOGRlNmFlM2WwcnVubmluZ19kaXNhYmxlZMKkY29kZdk6ZnVuY3Rpb24gaXNjb21wbGV0ZShzdGFja3MpCglsYXN0KHN0YWNrcykgPT0gYWxsX2Rpc2tzCmVuZKtjb2RlX2ZvbGRlZMLZJDQzNzgxYTUyLWEzMzktMTFlYS0zODAzLWU1NmUyZDA4YWE4M4SnY2VsbF9pZNkkNDM3ODFhNTItYTMzOS0xMWVhLTM4MDMtZTU2ZTJkMDhhYTgzsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXZIGZpcnN0X3N0YWNrID0gY29sbGVjdChhbGxfZGlza3Mpq2NvZGVfZm9sZGVkwtkkYzU2YTU4NTgtYTJiZC0xMWVhLTFkOTYtNzdlYWY1ZTc0OTI1hKdjZWxsX2lk2SRjNTZhNTg1OC1hMmJkLTExZWEtMWQ5Ni03N2VhZjVlNzQ5MjWwcnVubmluZ19kaXNhYmxlZMKkY29kZdoBIG1kIiIiCkFub3RoZXIgZnVuY3Rpb24gZm9yIHN0YXRlczogY2hlY2sgaWYgd2UgYXJlIGRvbmUhIFdlIGNhbiBhc3N1bWUgdGhhdCB3ZSBhbHJlYWR5IGNoZWNrZWQgaWYgdGhlIHN0YXRlIHdhcyBsZWdhbC4gU28gd2Uga25vdyB0aGF0IGFsbCB0aGUgZGlza3MgYXJlIHRoZXJlIGFuZCB0aGV5IGFyZSBvcmRlcmVkIGNvcnJlY3RseS4gIFRvIGNoZWNrIGlmIHdlIGFyZSBmaW5pc2hlZCwgd2UganVzdCBuZWVkIHRvIGNoZWNrIGlmIHRoZSBsYXN0IHN0YWNrIGNvbnRhaW5zIGFsbCB0aGUgZGlza3MuCiIiIqtjb2RlX2ZvbGRlZMPZJDUzMzc0ZjBlLWEyYzAtMTFlYS0wYzkxLTk3NDc0NzgwNzIxZYSnY2VsbF9pZNkkNTMzNzRmMGUtYTJjMC0xMWVhLTBjOTEtOTc0NzQ3ODA3MjFlsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaA9dtZCIiIgpOb3cgdGhlIG9ubHkgcnVsZXMgbGVmdCB0byBpbXBsZW1lbnQgYXJlIHRoZSBydWxlcyBmb3IgbW92aW5nIGRpc2tzLiAKCldlIGNvdWxkIGltcGxlbWVudCB0aGlzIGFzIGFub3RoZXIgY2hlY2sgb24gc3RhdGVzLCBidXQgaXQncyBlYXNpZXIgdG8ganVzdCB3cml0ZSBhIGxlZ2FsIGBtb3ZlYCBmdW5jdGlvbi4gWW91ciBzb2x1dGlvbiB3aWxsIHNwZWNpZnkgbW92ZXMgZm9yIHRoZSBgbW92ZWAgZnVuY3Rpb24sIHNvIHRoaXMgd2lsbCBiZSB0aGUgb25seSB3YXkgdGhhdCB0aGUgc3RhY2tzIGFyZSBhY3R1YWxseSBtYW5pcHVsYXRlZC4gVGhhdCB3YXksIHdlIGFyZSBzdXJlIHRoYXQgbm90aGluZyBmaXNoeSBpcyBoYXBwZW5pbmcuCgpXZSB3aWxsIG1ha2Ugb3VyIGBtb3ZlYCBmdW5jdGlvbiBzbyB0aGF0IGl0cyBpbnB1dCBjb25zaXN0cyBvZiBhIHN0YXRlIG9mIHRoZSBnYW1lLCBhbmQgaW5zdHJ1Y3Rpb25zIGZvciB3aGF0IHRvIGRvLiBJdHMgb3V0cHV0IHdpbGwgYmUgdGhlIG5ldyBzdGF0ZSBvZiB0aGUgZ2FtZS4KClNvIHdoYXQgc2hvdWxkIHRob3NlIGluc3RydWN0aW9ucyBsb29rIGxpa2U/IEl0IG1heSBzZWVtIGludHVpdGl2ZSB0byBnaXZlIGEgX2Rpc2tfIHRoYXQgc2hvdWxkIGJlIG1vdmVkLCBidXQgdGhhdCdzIG1vcmUgdGhhbiB3ZSBuZWVkLiBBZnRlciBhbGwsIHdlIGFyZSBvbmx5IGFsbG93ZWQgdG8gdGFrZSB0aGUgdG9wIGRpc2sgZnJvbSBvbmUgc3RhY2ssIGFuZCBtb3ZlIGl0IHRvIHRoZSB0b3Agb2YgYW5vdGhlci4gU28gd2Ugb25seSBoYXZlIHRvIHNheSB3aGljaCBfc3RhY2tzXyB3ZSBhcmUgbW92aW5nIGJldHdlZW4uCgooTm90ZSB0aGF0IHRoZSBgbW92ZWAgZnVuY3Rpb24gaXMgb2theSB3aXRoIG1vdmluZyBhIGxhcmdlciBkaXNrIG9uIHRvcCBvZiBhIHNtYWxsZXIgZGlzay4gV2UgYWxyZWFkeSBpbXBsZW1lbnRlZCB0aGF0IHJlc3RyaWN0aW9uIGluIGBpc2xlZ2FsYC4pCiIiIqtjb2RlX2ZvbGRlZMPZJDNlYjNjNGMwLWEyYzUtMTFlYS0wYmNjLWM5YjUyMDk0ZjY2MISnY2VsbF9pZNkkM2ViM2M0YzAtYTJjNS0xMWVhLTBiY2MtYzliNTIwOTRmNjYwsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXZg21kIiIiCiMjIENoZWNraW5nIHNvbHV0aW9ucwoKVGhpcyBpcyB3aGVyZSB3ZSBjYW4gY2hlY2sgYSBzb2x1dGlvbi4gV2Ugc3RhcnQgd2l0aCBhIGZ1bmN0aW9uIHRoYXQgdGFrZXMgb3VyIHJlY2lwZSBhbmQgcnVucyBpdC4KIiIiq2NvZGVfZm9sZGVkw9kkZDIyMjdiNDAtYTMyOS0xMWVhLTEwNWMtYjU4NWQ1ZmNmOTcwhKdjZWxsX2lk2SRkMjIyN2I0MC1hMzI5LTExZWEtMTA1Yy1iNTg1ZDVmY2Y5NzCwcnVubmluZ19kaXNhYmxlZMKkY29kZbxydW5fc29sdXRpb24od3Jvbmdfc29sdXRpb24pq2NvZGVfZm9sZGVkwtkkMzJmMjZmODAtYTJiYi0xMWVhLTBmMmEtM2ZjNjMxYWRhNjNkhKdjZWxsX2lk2SQzMmYyNmY4MC1hMmJiLTExZWEtMGYyYS0zZmM2MzFhZGE2M2SwcnVubmluZ19kaXNhYmxlZMKkY29kZdknc3RhcnRpbmdfc3RhY2tzID0gW2ZpcnN0X3N0YWNrLCBbXSwgW11dq2NvZGVfZm9sZGVkwtkkMjliNDEwY2MtYTMyOS0xMWVhLTIwMmEtNzk1YjMxY2U1YWQ1hKdjZWxsX2lk2SQyOWI0MTBjYy1hMzI5LTExZWEtMjAyYS03OTViMzFjZTVhZDWwcnVubmluZ19kaXNhYmxlZMKkY29kZdlgZnVuY3Rpb24gd3Jvbmdfc29sdXRpb24oc3RhY2tzKTo6QXJyYXl7VHVwbGV7SW50LCBJbnR9fQoJcmV0dXJuIFsoMSwyKSwgKDIsMyksICgyLDEpLCAoMSwzKV0KZW5kq2NvZGVfZm9sZGVkwtkkNDcwOWRiMzYtYTMyNy0xMWVhLTEzYTMtYmJmYjE4ZGE4NGNlhKdjZWxsX2lk2SQ0NzA5ZGIzNi1hMzI3LTExZWEtMTNhMy1iYmZiMThkYTg0Y2WwcnVubmluZ19kaXNhYmxlZMKkY29kZdoBa2Z1bmN0aW9uIHJ1bl9zb2x1dGlvbihzb2x2ZXI6OkZ1bmN0aW9uLCBzdGFydCA9IHN0YXJ0aW5nX3N0YWNrcykKCW1vdmVzID0gc29sdmVyKGRlZXBjb3B5KHN0YXJ0KSkgI2FwcGx5IHRoZSBzb2x2ZXIKCQoJYWxsX3N0YXRlcyA9IEFycmF5e0FueSwxfSh1bmRlZiwgbGVuZ3RoKG1vdmVzKSArIDEpCglhbGxfc3RhdGVzWzFdID0gc3RhcnQKCQoJZm9yIChpLCBtKSBpbiBlbnVtZXJhdGUobW92ZXMpCgkJdHJ5CgkJCWFsbF9zdGF0ZXNbaSArIDFdID0gbW92ZShhbGxfc3RhdGVzW2ldLCBtWzFdLCBtWzJdKQoJCWNhdGNoCgkJCWFsbF9zdGF0ZXNbaSArIDFdID0gbWlzc2luZwoJCWVuZAoJZW5kCgkKCXJldHVybiBhbGxfc3RhdGVzCmVuZKtjb2RlX2ZvbGRlZMLZJGI2NDhhYjcwLWEyYmEtMTFlYS0yZGNjLTU1YjYzMGU0NDMyNYSnY2VsbF9pZNkkYjY0OGFiNzAtYTJiYS0xMWVhLTJkY2MtNTViNjMwZTQ0MzI1sHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXZLm1kIiIiCk5vdyB3ZSBoYXZlIHRvIG1ha2UgdGhyZWUgb2YgdGhvc2UuIAoiIiKrY29kZV9mb2xkZWTD2SQxMGZiMWM1Ni1hMmM1LTExZWEtMmEwNi0wZDhjMzZiZmExMziEp2NlbGxfaWTZJDEwZmIxYzU2LWEyYzUtMTFlYS0yYTA2LTBkOGMzNmJmYTEzOLBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2gGeZnVuY3Rpb24gY2hlY2tfc29sdXRpb24oc29sdmVyOjpGdW5jdGlvbiwgc3RhcnQgPSBzdGFydGluZ19zdGFja3MpCgl0cnkKCQkjcnVuIHRoZSBzb2x1dGlvbgoJCWFsbF9zdGF0ZXMgPSBydW5fc29sdXRpb24oc29sdmVyLCBzdGFydCkKCQkKCQkjY2hlY2sgaWYgZWFjaCBzdGF0ZSBpcyBsZWdhbAoJCWFsbF9sZWdhbCA9IGFsbChpc2xlZ2FsLCBhbGxfc3RhdGVzKQoJCQoJCSNjaGVjayBpZiB0aGUgZmluYWwgc3RhdGUgaXMgaXMgdGhlIGNvbXBsZXRlZCBwdXp6bGUKCQljb21wbGV0ZSA9IChpc2NvbXBsZXRlIOKImCBsYXN0KShhbGxfc3RhdGVzKQoJCQoJCWFsbF9sZWdhbCAmJiBjb21wbGV0ZQoJY2F0Y2gKCQkjcmV0dXJuIGZhbHNlIGlmIHdlIGVuY291bnRlcmVkIGFuIGVycm9yCgkJcmV0dXJuIGZhbHNlCgllbmQKZW5kq2NvZGVfZm9sZGVkwtkkODdiMmQxNjQtYTJjNC0xMWVhLTMwOTUtOTE2NjI4OTQzODc5hKdjZWxsX2lk2SQ4N2IyZDE2NC1hMmM0LTExZWEtMzA5NS05MTY2Mjg5NDM4NzmwcnVubmluZ19kaXNhYmxlZMKkY29kZdoCIm1kIiIiCiMjIFNvbHZpbmcgdGhlIHByb2JsZW0KCldlIGhhdmUgaW1wbGVtZW50ZWQgdGhlIGdhbWUgcGllY2VzIGFuZCB0aGUgcnVsZXMsIHNvIHlvdSBjYW4gc3RhcnQgd29ya2luZyBvbiB5b3VyIHNvbHV0aW9uLgoKVG8gZG8gdGhpcywgeW91IGNhbiBmaWxsIGluIHRoZSBgc29sdmUoc3RhY2tzKWAgZnVuY3Rpb24uIFRoaXMgZnVuY3Rpb24gc2hvdWxkIGdpdmUgYSBzb2x1dGlvbiBmb3IgdGhlIGdpdmVuIGBzdGFja3NgLCBieSBtb3ZpbmcgYWxsIHRoZSBkaXNrcyBmcm9tIHN0YWNrIDEgdG8gc3RhY2sgMy4KCkFzIG91dHB1dCwgYHNvbHZlYCBzaG91bGQgZ2l2ZSBhIHJlY2lwZSwgdGhhdCB0ZWxscyB1cyB3aGF0IHRvIGRvLiBUaGlzIHJlY2lwZSBzaG91bGQgYmUgYW4gYXJyYXkgb2YgbW92ZXMuIEVhY2ggbW92ZXMgaXMgYSBgKHNvdXJjZSwgdGFyZ2V0KWAgdHVwbGUsIHNwZWNpZnlpbmcgZnJvbSB3aGljaCBzdGFjayB0byB3aGljaCBzdGFjayB5b3Ugc2hvdWxkIG1vdmUuCgpGb3IgZXhhbXBsZSwgaXQgbWlnaHQgbG9vayBsaWtlIHRoaXM6CiIiIqtjb2RlX2ZvbGRlZMPZJDM1YWRhMjE0LWEzMmMtMTFlYS0wZGEzLWQ1ZDQ5NGIyODQ2N4SnY2VsbF9pZNkkMzVhZGEyMTQtYTMyYy0xMWVhLTBkYTMtZDVkNDk0YjI4NDY3sHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXZfW1kIiIiKFNpZGUgbm90ZTogdGhlIG51bWJlciBvZiBkaXNrcyBpcyBhcmJpdHJhcnkuIFdoZW4gdGVzdGluZyB5b3VyIGZ1bmN0aW9uLCB5b3UgbWF5IHdhbnQgdG8gc2V0IGl0IHRvIDEgb3IgMiB0byBzdGFydC4pIiIiq2NvZGVfZm9sZGVkw6tub3RlYm9va19pZNkkYTc3YWZkNzAtNTJhYy0xMWVjLTJmZjEtNzVjMjMxMTVmYjFhq2luX3RlbXBfZGlyww==";
</script>
<!-- [automatically generated launch parameters can be inserted here] -->
<script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.2/frontend/editor.js" type="module" defer></script>
<script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.2/frontend/warn_old_browsers.js"></script>
<script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.2/frontend/common/SetupMathJax.js"></script>
<script type="text/javascript" id="MathJax-script" src="https://cdn.jsdelivr.net/npm/mathjax@3.1.2/es5/tex-svg-full.js" async></script>
</head>
<body class="loading no-MαθJax"></body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment