Skip to content

Instantly share code, notes, and snippets.

@fonsp
Last active December 16, 2021 12:21
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save fonsp/29015dc6fd9438cd164a51fe3bef117d to your computer and use it in GitHub Desktop.
Save fonsp/29015dc6fd9438cd164a51fe3bef117d to your computer and use it in GitHub Desktop.
<!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.3/frontend/img/favicon-16x16.png" />
<link rel="icon" type="image/png" sizes="32x32" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.3/frontend/img/favicon-32x32.png" />
<link rel="icon" type="image/png" sizes="96x96" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.3/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.3/frontend/img/logo.svg" />
<link rel="pluto-logo-small" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.3/frontend/img/favicon_unsaturated.svg" />
<link rel="pluto-sw" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.3/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.3/frontend/editor.css" type="text/css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.3/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.3/frontend/binder.css" type="text/css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.3/frontend/treeview.css" type="text/css" />
<link rel="preload" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.3/frontend/juliamono.css" as="style" />
<link rel="preload" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.3/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,IyMjIEEgUGx1dG8uamwgbm90ZWJvb2sgIyMjCiMgdjAuMTcuMwoKdXNpbmcgTWFya2Rvd24KdXNpbmcgSW50ZXJhY3RpdmVVdGlscwoKIyDilZTilZDilaEgZTk2NjU3YzQtNWU1Yi0xMWVjLTNlZTctN2YyOGY1YjFkMTVmCnVzaW5nIEh5cGVydGV4dExpdGVyYWwKCiMg4pWU4pWQ4pWhIGNmYWM2OGMyLTdjMTctNDc3ZC04ZTJmLWQ0YTM2NmNkYmY5NAp1c2luZyBDb21tb25NYXJrCgojIOKVlOKVkOKVoSA5NDQzMzNmOS03MGQ3LTQzNWUtYmEyNi1kM2E4MDk5Y2ZlY2EKY29kZV9zbmlwcGV0ID0gIiIiCnhzID0gWzE6MTAuLi4sIDIwXQptYXAoeHMpIGRvIHgKCWYoeF4yKQplbmQKIiIiCgojIOKVlOKVkOKVoSAyYTcwZGUwNi1jZWMwLTRhMmUtODc2OC0xYzg3NTQzN2ZkOTYKcGxvdCh4LCB5KSA9IEBodGwoIiIiCjxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5wbG90Lmx5L3Bsb3RseS0xLjU4LjAubWluLmpzIj48L3NjcmlwdD4KCjxzY3JpcHQ+CiAgICBjb25zdCBjb250YWluZXIgPSBodG1sYDxkaXYgc3R5bGU9IndpZHRoOiAxMDAlOyI+PC9kaXY+YAoKICAgIFBsb3RseS5uZXdQbG90KCBjb250YWluZXIsIFt7CiAgICAgICAgeDogJCh4KSwKICAgICAgICB5OiAkKHkpLAogICAgfV0sIHsKICAgICAgICBtYXJnaW46IHsgdDogMCwgYjowLCBsOiAwLCByOjAgfSAsCgkJaGVpZ2h0OiAxMDAsCiAgICB9KQoKICAgIHJldHVybiBjb250YWluZXIKPC9zY3JpcHQ+CiIiIikKCiMg4pWU4pWQ4pWhIDM2ODM1OTBhLTI4ODYtNGI1Ny05M2IyLThlODVlMWQ3N2ViNgptZCIiIgojIEhvdyBpdCB3b3JrcwoKVXNlIEhUTCB0byBkbyB0aGUgc3RyaW5nIG1hY3JvIG1hZ2ljLCBhbmQgdGhlbiBhc2sgQ29tbW9uTWFyay5qbCB0byByZW5kZXIgaXQuIFRoYXQncyBpdCEKIiIiCgojIOKVlOKVkOKVoSA3OGU4ZTUyMi02ZmFkLTRmODgtOTRjMS03NjFiMDk3NWIyYWQKbWFjcm8gbWQoZXhwcikKCWNtX3BhcnNlciA9IENvbW1vbk1hcmsuUGFyc2VyKCkKCXF1b3RlCgkJcmVzdWx0ID0gQGh0bCgkZXhwcikKCQlodGxfb3V0cHV0ID0gcmVwcihNSU1FInRleHQvaHRtbCIoKSwgcmVzdWx0KQoKCQkkKGNtX3BhcnNlcikoaHRsX291dHB1dCkKCWVuZAplbmQKCiMg4pWU4pWQ4pWhIDc5NzA2M2I2LWJhMTMtNDkxNS05ODRmLTYzMDRlMTI3NmZhZgpAbWQoIiIiCiMgSGVsbG8hClRoaXMgaXMgKk1hcmtkb3duKiBidXQgKipzdXBlcmNoYXJnZWQqKiEhCjxtYXJxdWVlIHN0eWxlPSQoKGNvbG9yPSJwdXJwbGUiLCBmb250X2ZhbWlseT0iY3Vyc2l2ZSIpKT5JbmxpbmUgSFRNTCBzdXBwb3J0ZWQhPC9tYXJxdWVlPgoKSGVyZSBpcyBhIGxpc3QsIGNyZWF0ZWQgdXNpbmcgc2ltcGxlIHN0cmluZyBpbnRlcnBvbGF0aW9uOgokKCgKCSItIGl0ZW0gJGlcbiIgZm9yIGkgaW4gMTozCikpCgpBbm90aGVyIGxpc3QsIGludGVycG9sYXRlZCBhcyBIVE1MOgo8dWw+CiQoKAoJQGh0bCgiPGxpPml0ZW0gJGk8L2xpPiIpIGZvciBpIGluIDE6MwopKQo8L3VsPgoKIVtdKGh0dHBzOi8vbWVkaWEuZ2lwaHkuY29tL21lZGlhL0ptVWZ3RU5FNmk0SnhpZzI3bi9naXBoeS5naWYpCgojIyBJbnRlcG9sYXRpbmcgYSBwbG90bHkgcGxvdApJdCB3b3JrcyEKJChwbG90KDE6MTAsIHJhbmQoMTApKSkKCiMjIENvZGUgYmxvY2sKYGBganVsaWEKZnVuY3Rpb24gZih4OjpJbnQ2NCkKCSJoZWxsbyBcJCh4KSIKZW5kCgoKIyB3ZSBjYW4gaW50ZXJwb2xhdGUgaW50byBjb2RlIGJsb2NrcyEKJChjb2RlX3NuaXBwZXQpCmBgYAoiIiIpCgojIOKVlOKVkOKVoSAwMDAwMDAwMC0wMDAwLTAwMDAtMDAwMC0wMDAwMDAwMDAwMDEKUExVVE9fUFJPSkVDVF9UT01MX0NPTlRFTlRTID0gIiIiCltkZXBzXQpDb21tb25NYXJrID0gImE4MGI5MTIzLTcwY2EtNGJjMC05OTNlLTZlM2JjYjMxOGRiNiIKSHlwZXJ0ZXh0TGl0ZXJhbCA9ICJhYzExOTJhOC1mNGIzLTRiZmUtYmEyMi1hZjViOTJjZDNhYjIiCgpbY29tcGF0XQpDb21tb25NYXJrID0gIn4wLjguNCIKSHlwZXJ0ZXh0TGl0ZXJhbCA9ICJ+MC45LjMiCiIiIgoKIyDilZTilZDilaEgMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAyClBMVVRPX01BTklGRVNUX1RPTUxfQ09OVEVOVFMgPSAiIiIKIyBUaGlzIGZpbGUgaXMgbWFjaGluZS1nZW5lcmF0ZWQgLSBlZGl0aW5nIGl0IGRpcmVjdGx5IGlzIG5vdCBhZHZpc2VkCgpqdWxpYV92ZXJzaW9uID0gIjEuNy4wIgptYW5pZmVzdF9mb3JtYXQgPSAiMi4wIgoKW1tkZXBzLkNvbW1vbk1hcmtdXQpkZXBzID0gWyJDcmF5b25zIiwgIkpTT04iLCAiVVJJcyJdCmdpdC10cmVlLXNoYTEgPSAiN2EwZDc0YjhiMDA3YzgxNzBkZDQ4MTY2ZmRjNGJlMDQ5YmY2OGY3MCIKdXVpZCA9ICJhODBiOTEyMy03MGNhLTRiYzAtOTkzZS02ZTNiY2IzMThkYjYiCnZlcnNpb24gPSAiMC44LjQiCgpbW2RlcHMuQ3JheW9uc11dCmdpdC10cmVlLXNoYTEgPSAiM2Y3MTIxN2I1MzhkN2FhZWUwYjY5YWI0N2Q5Yjc3MjRjYThhZmEwZCIKdXVpZCA9ICJhOGNjNWIwZS0wZmZhLTVhZDQtOGMxNC05MjNkM2VlMTczNWYiCnZlcnNpb24gPSAiNC4wLjQiCgpbW2RlcHMuRGF0ZXNdXQpkZXBzID0gWyJQcmludGYiXQp1dWlkID0gImFkZTJjYTcwLTM4OTEtNTk0NS05OGZiLWRjMDk5NDMyZTA2YSIKCltbZGVwcy5IeXBlcnRleHRMaXRlcmFsXV0KZ2l0LXRyZWUtc2hhMSA9ICIyYjA3OGI1YTYxNWM2YzAzOTZjNzc4MTBkOTJlZThjNmY0NzBkMjM4Igp1dWlkID0gImFjMTE5MmE4LWY0YjMtNGJmZS1iYTIyLWFmNWI5MmNkM2FiMiIKdmVyc2lvbiA9ICIwLjkuMyIKCltbZGVwcy5KU09OXV0KZGVwcyA9IFsiRGF0ZXMiLCAiTW1hcCIsICJQYXJzZXJzIiwgIlVuaWNvZGUiXQpnaXQtdHJlZS1zaGExID0gIjgwNzY2ODBiMTYyYWRhMmEwMzFmNzA3YWM3YjQ5NTNlMzA2NjdhMzciCnV1aWQgPSAiNjgyYzA2YTAtZGU2YS01NGFiLWExNDItYzhiMWNmNzljZGU2Igp2ZXJzaW9uID0gIjAuMjEuMiIKCltbZGVwcy5NbWFwXV0KdXVpZCA9ICJhNjNhZDExNC03ZTEzLTUwODQtOTU0Zi1mZTAxMmM2Nzc4MDQiCgpbW2RlcHMuUGFyc2Vyc11dCmRlcHMgPSBbIkRhdGVzIl0KZ2l0LXRyZWUtc2hhMSA9ICJhZTRiYmNhZGIyOTA2Y2NjMDg1Y2Y1MmFjMjg2ZGMxMzc3ZGNlY2NjIgp1dWlkID0gIjY5ZGUwYTY5LTFkZGQtNTAxNy05MzU5LTJiZjBiMDJkYzlmMCIKdmVyc2lvbiA9ICIyLjEuMiIKCltbZGVwcy5QcmludGZdXQpkZXBzID0gWyJVbmljb2RlIl0KdXVpZCA9ICJkZTA4NThkYS02MzAzLTVlNjctODc0NC01MWVkZGVlZWI4ZDciCgpbW2RlcHMuVVJJc11dCmdpdC10cmVlLXNoYTEgPSAiOTdiYmU3NTVhNTNmZTg1OTY2OWNkOTA3ZjJkOTZhZWU4ZDJjMTM1NSIKdXVpZCA9ICI1YzI3NDdmOC1iN2VhLTRmZjItYmEyZS01NjNiZmQzNmIxZDQiCnZlcnNpb24gPSAiMS4zLjAiCgpbW2RlcHMuVW5pY29kZV1dCnV1aWQgPSAiNGVjMGE4M2UtNDkzZS01MGUyLWI5YWMtOGY3MmFjZjVhOGY1IgoiIiIKCiMg4pWU4pWQ4pWhIENlbGwgb3JkZXI6CiMg4pWg4pWQNzk3MDYzYjYtYmExMy00OTE1LTk4NGYtNjMwNGUxMjc2ZmFmCiMg4pWg4pWQOTQ0MzMzZjktNzBkNy00MzVlLWJhMjYtZDNhODA5OWNmZWNhCiMg4pWg4pWQMmE3MGRlMDYtY2VjMC00YTJlLTg3NjgtMWM4NzU0MzdmZDk2CiMg4pWf4pSAMzY4MzU5MGEtMjg4Ni00YjU3LTkzYjItOGU4NWUxZDc3ZWI2CiMg4pWg4pWQZTk2NjU3YzQtNWU1Yi0xMWVjLTNlZTctN2YyOGY1YjFkMTVmCiMg4pWg4pWQY2ZhYzY4YzItN2MxNy00NzdkLThlMmYtZDRhMzY2Y2RiZjk0CiMg4pWg4pWQNzhlOGU1MjItNmZhZC00Zjg4LTk0YzEtNzYxYjA5NzViMmFkCiMg4pWf4pSAMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAxCiMg4pWf4pSAMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAyCg==";
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.3";
window.pluto_statefile = "data:;base64,j6Vib25kc4CsY2VsbF9yZXN1bHRzh9kkOTQ0MzMzZjktNzBkNy00MzVlLWJhMjYtZDNhODA5OWNmZWNhiKZxdWV1ZWTCp3J1bm5pbmfCpm91dHB1dIakYm9kedkzInhzID0gWzE6MTAuLi4sIDIwXVxubWFwKHhzKSBkbyB4XG5cdGYoeF4yKVxuZW5kXG4isHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhux7StdbC3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCrHJvb3Rhc3NpZ25lZaxjb2RlX3NuaXBwZXSnY2VsbF9pZNkkOTQ0MzMzZjktNzBkNy00MzVlLWJhMjYtZDNhODA5OWNmZWNhuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXNJXC1cHVibGlzaGVkX29iamVjdF9rZXlzkKdlcnJvcmVkwtkkNzk3MDYzYjYtYmExMy00OTE1LTk4NGYtNjMwNGUxMjc2ZmFmiKZxdWV1ZWTCp3J1bm5pbmfCpm91dHB1dIakYm9kedoE/TxoMT5IZWxsbyE8L2gxPgo8cD5UaGlzIGlzIDxlbT5NYXJrZG93bjwvZW0+IGJ1dCA8c3Ryb25nPnN1cGVyY2hhcmdlZDwvc3Ryb25nPiEhCjxtYXJxdWVlIHN0eWxlPSdjb2xvcjogcHVycGxlOyBmb250LWZhbWlseTogY3Vyc2l2ZTsnPklubGluZSBIVE1MIHN1cHBvcnRlZCE8L21hcnF1ZWU+PC9wPgo8cD5IZXJlIGlzIGEgbGlzdCwgY3JlYXRlZCB1c2luZyBzaW1wbGUgc3RyaW5nIGludGVycG9sYXRpb246PC9wPgo8dWw+CjxsaT5pdGVtIDE8L2xpPgo8bGk+aXRlbSAyPC9saT4KPGxpPml0ZW0gMzwvbGk+CjwvdWw+CjxwPkFub3RoZXIgbGlzdCwgaW50ZXJwb2xhdGVkIGFzIEhUTUw6PC9wPgo8dWw+CjxsaT5pdGVtIDE8L2xpPjxsaT5pdGVtIDI8L2xpPjxsaT5pdGVtIDM8L2xpPgo8L3VsPgo8cD48aW1nIHNyYz0iaHR0cHM6Ly9tZWRpYS5naXBoeS5jb20vbWVkaWEvSm1VZndFTkU2aTRKeGlnMjduL2dpcGh5LmdpZiIgYWx0PSIiIC8+PC9wPgo8aDI+SW50ZXBvbGF0aW5nIGEgcGxvdGx5IHBsb3Q8L2gyPgo8cD5JdCB3b3JrcyE8L3A+CjxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5wbG90Lmx5L3Bsb3RseS0xLjU4LjAubWluLmpzIj48L3NjcmlwdD4KPHNjcmlwdD4KICAgIGNvbnN0IGNvbnRhaW5lciA9IGh0bWxgPGRpdiBzdHlsZT0id2lkdGg6IDEwMCU7Ij48L2Rpdj5gCgogICAgUGxvdGx5Lm5ld1Bsb3QoIGNvbnRhaW5lciwgW3sKICAgICAgICB4OiBbMSwgMiwgMywgNCwgNSwgNiwgNywgOCwgOSwgMTBdLAogICAgICAgIHk6IFswLjcxODAzMjk3NTQ5MDg5MSwgMC40Mzc2OTIxMTYzNjIxNTYyLCAwLjc4OTg5MjM5NjM1NzI3MzksIDAuOTMxNTYyNzMwMjk4MDE0NywgMC40MDk2MzI0MTY2NzczMTg2NCwgMC40OTg2NjM4NTcxMTA0MTgwNSwgMC4zOTQ0MjY0NzU3MTgwNzc2NSwgMC40MjkyNDYzOTA3MTUyMjUxLCAwLjczNzQ0NjA5ODA4Nzk0OTUsIDAuMzc5Nzc4MDkwODQ0NTAyNTRdLAogICAgfV0sIHsKICAgICAgICBtYXJnaW46IHsgdDogMCwgYjowLCBsOiAwLCByOjAgfSAsCgkJaGVpZ2h0OiAxMDAsCiAgICB9KQoKICAgIHJldHVybiBjb250YWluZXIKPC9zY3JpcHQ+CjxoMj5Db2RlIGJsb2NrPC9oMj4KPHByZT48Y29kZSBjbGFzcz0ibGFuZ3VhZ2UtanVsaWEiPmZ1bmN0aW9uIGYoeDo6SW50NjQpCgkmcXVvdDtoZWxsbyAkKHgpJnF1b3Q7CmVuZAoKCiMgd2UgY2FuIGludGVycG9sYXRlIGludG8gY29kZSBibG9ja3MhCnhzID0gWzE6MTAuLi4sIDIwXQptYXAoeHMpIGRvIHgKCWYoeF4yKQplbmQKCjwvY29kZT48L3ByZT4KsHBlcnNpc3RfanNfc3RhdGXDpG1pbWWpdGV4dC9odG1ssmxhc3RfcnVuX3RpbWVzdGFtcMtB2G7LdVQ/aLdoYXNfcGx1dG9faG9va19mZWF0dXJlc8Kscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ3OTcwNjNiNi1iYTEzLTQ5MTUtOTg0Zi02MzA0ZTEyNzZmYWa5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AcLoTtXB1Ymxpc2hlZF9vYmplY3Rfa2V5c5CnZXJyb3JlZMLZJGNmYWM2OGMyLTdjMTctNDc3ZC04ZTJmLWQ0YTM2NmNkYmY5NIimcXVldWVkwqdydW5uaW5nwqZvdXRwdXSGpGJvZHmgsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhuyYzlZoC3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkY2ZhYzY4YzItN2MxNy00NzdkLThlMmYtZDRhMzY2Y2RiZjk0uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOCeaK8LVwdWJsaXNoZWRfb2JqZWN0X2tleXOQp2Vycm9yZWTC2SQ3OGU4ZTUyMi02ZmFkLTRmODgtOTRjMS03NjFiMDk3NWIyYWSIpnF1ZXVlZMKncnVubmluZ8Kmb3V0cHV0hqRib2R5uUBtZCAobWFjcm8gd2l0aCAxIG1ldGhvZCmwcGVyc2lzdF9qc19zdGF0ZcKkbWltZap0ZXh0L3BsYWlusmxhc3RfcnVuX3RpbWVzdGFtcMtB2G7KpjOcQbdoYXNfcGx1dG9faG9va19mZWF0dXJlc8Kscm9vdGFzc2lnbmVlwKdjZWxsX2lk2SQ3OGU4ZTUyMi02ZmFkLTRmODgtOTRjMS03NjFiMDk3NWIyYWS5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4AEG1otXB1Ymxpc2hlZF9vYmplY3Rfa2V5c5CnZXJyb3JlZMLZJGU5NjY1N2M0LTVlNWItMTFlYy0zZWU3LTdmMjhmNWIxZDE1ZoimcXVldWVkwqdydW5uaW5nwqZvdXRwdXSGpGJvZHmgsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhux0Tc60q3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkZTk2NjU3YzQtNWU1Yi0xMWVjLTNlZTctN2YyOGY1YjFkMTVmuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOAEPUbLVwdWJsaXNoZWRfb2JqZWN0X2tleXOQp2Vycm9yZWTC2SQyYTcwZGUwNi1jZWMwLTRhMmUtODc2OC0xYzg3NTQzN2ZkOTaIpnF1ZXVlZMKncnVubmluZ8Kmb3V0cHV0hqRib2R52SVwbG90IChnZW5lcmljIGZ1bmN0aW9uIHdpdGggMSBtZXRob2QpsHBlcnNpc3RfanNfc3RhdGXCpG1pbWWqdGV4dC9wbGFpbrJsYXN0X3J1bl90aW1lc3RhbXDLQdhuy3VQ6mC3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkMmE3MGRlMDYtY2VjMC00YTJlLTg3NjgtMWM4NzU0MzdmZDk2uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOABOhjrVwdWJsaXNoZWRfb2JqZWN0X2tleXOQp2Vycm9yZWTC2SQzNjgzNTkwYS0yODg2LTRiNTctOTNiMi04ZTg1ZTFkNzdlYjaIpnF1ZXVlZMKncnVubmluZ8Kmb3V0cHV0hqRib2R52Zs8ZGl2IGNsYXNzPSJtYXJrZG93biI+PGgxPkhvdyBpdCB3b3JrczwvaDE+CjxwPlVzZSBIVEwgdG8gZG8gdGhlIHN0cmluZyBtYWNybyBtYWdpYywgYW5kIHRoZW4gYXNrIENvbW1vbk1hcmsuamwgdG8gcmVuZGVyIGl0LiBUaGF0JiMzOTtzIGl0JiMzMzs8L3A+CjwvZGl2PrBwZXJzaXN0X2pzX3N0YXRlwqRtaW1lqXRleHQvaHRtbLJsYXN0X3J1bl90aW1lc3RhbXDLQdhuynv7QFO3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCrHJvb3Rhc3NpZ25lZcCnY2VsbF9pZNkkMzY4MzU5MGEtMjg4Ni00YjU3LTkzYjItOGU4NWUxZDc3ZWI2uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOBEQibbVwdWJsaXNoZWRfb2JqZWN0X2tleXOQp2Vycm9yZWTCsWNlbGxfZGVwZW5kZW5jaWVzh9kkOTQ0MzMzZjktNzBkNy00MzVlLWJhMjYtZDNhODA5OWNmZWNhhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkOTQ0MzMzZjktNzBkNy00MzVlLWJhMjYtZDNhODA5OWNmZWNhtGRvd25zdHJlYW1fY2VsbHNfbWFwgaxjb2RlX3NuaXBwZXSR2SQ3OTcwNjNiNi1iYTEzLTQ5MTUtOTg0Zi02MzA0ZTEyNzZmYWaydXBzdHJlYW1fY2VsbHNfbWFwgNkkNzk3MDYzYjYtYmExMy00OTE1LTk4NGYtNjMwNGUxMjc2ZmFmhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkNzk3MDYzYjYtYmExMy00OTE1LTk4NGYtNjMwNGUxMjc2ZmFmtGRvd25zdHJlYW1fY2VsbHNfbWFwiacjIzojODU0kKcjIzojODUykK8jODAxI2h0bF9vdXRwdXSQpyMjOiM4NTGQqyM3OTkjcmVzdWx0kKojI3Bsb3QjODUzkKojI3JhbmQjODU1kKojI3JlcHIjODU3kLIjI2NvZGVfc25pcHBldCM4NTaQsnVwc3RyZWFtX2NlbGxzX21hcI2hOpC3SHlwZXJ0ZXh0TGl0ZXJhbC5CeXBhc3OQuEh5cGVydGV4dExpdGVyYWwuY29udGVudJCjQG1kkdkkNzhlOGU1MjItNmZhZC00Zjg4LTk0YzEtNzYxYjA5NzViMmFkpHJhbmSQpEBodGyQpEJhc2WQv0h5cGVydGV4dExpdGVyYWwuYXR0cmlidXRlX3BhaXKQrGNvZGVfc25pcHBldJHZJDk0NDMzM2Y5LTcwZDctNDM1ZS1iYTI2LWQzYTgwOTljZmVjYaRwbG90kdkkMmE3MGRlMDYtY2VjMC00YTJlLTg3NjgtMWM4NzU0MzdmZDk2t0h5cGVydGV4dExpdGVyYWwuUmVzdWx0kLBIeXBlcnRleHRMaXRlcmFskdkkZTk2NjU3YzQtNWU1Yi0xMWVjLTNlZTctN2YyOGY1YjFkMTVmpHJlcHKQ2SRjZmFjNjhjMi03YzE3LTQ3N2QtOGUyZi1kNGEzNjZjZGJmOTSEtHByZWNlZGVuY2VfaGV1cmlzdGljB6djZWxsX2lk2SRjZmFjNjhjMi03YzE3LTQ3N2QtOGUyZi1kNGEzNjZjZGJmOTS0ZG93bnN0cmVhbV9jZWxsc19tYXCBqkNvbW1vbk1hcmuR2SQ3OGU4ZTUyMi02ZmFkLTRmODgtOTRjMS03NjFiMDk3NWIyYWSydXBzdHJlYW1fY2VsbHNfbWFwgNkkNzhlOGU1MjItNmZhZC00Zjg4LTk0YzEtNzYxYjA5NzViMmFkhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkNzhlOGU1MjItNmZhZC00Zjg4LTk0YzEtNzYxYjA5NzViMmFktGRvd25zdHJlYW1fY2VsbHNfbWFwgaNAbWSR2SQ3OTcwNjNiNi1iYTEzLTQ5MTUtOTg0Zi02MzA0ZTEyNzZmYWaydXBzdHJlYW1fY2VsbHNfbWFwgrFDb21tb25NYXJrLlBhcnNlcpCqQ29tbW9uTWFya5HZJGNmYWM2OGMyLTdjMTctNDc3ZC04ZTJmLWQ0YTM2NmNkYmY5NNkkZTk2NjU3YzQtNWU1Yi0xMWVjLTNlZTctN2YyOGY1YjFkMTVmhLRwcmVjZWRlbmNlX2hldXJpc3RpYwenY2VsbF9pZNkkZTk2NjU3YzQtNWU1Yi0xMWVjLTNlZTctN2YyOGY1YjFkMTVmtGRvd25zdHJlYW1fY2VsbHNfbWFwgbBIeXBlcnRleHRMaXRlcmFsktkkNzk3MDYzYjYtYmExMy00OTE1LTk4NGYtNjMwNGUxMjc2ZmFm2SQyYTcwZGUwNi1jZWMwLTRhMmUtODc2OC0xYzg3NTQzN2ZkOTaydXBzdHJlYW1fY2VsbHNfbWFwgNkkMmE3MGRlMDYtY2VjMC00YTJlLTg3NjgtMWM4NzU0MzdmZDk2hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkMmE3MGRlMDYtY2VjMC00YTJlLTg3NjgtMWM4NzU0MzdmZDk2tGRvd25zdHJlYW1fY2VsbHNfbWFwgaRwbG90kdkkNzk3MDYzYjYtYmExMy00OTE1LTk4NGYtNjMwNGUxMjc2ZmFmsnVwc3RyZWFtX2NlbGxzX21hcIW3SHlwZXJ0ZXh0TGl0ZXJhbC5CeXBhc3OQt0h5cGVydGV4dExpdGVyYWwuUmVzdWx0kLBIeXBlcnRleHRMaXRlcmFskdkkZTk2NjU3YzQtNWU1Yi0xMWVjLTNlZTctN2YyOGY1YjFkMTVmukh5cGVydGV4dExpdGVyYWwuU2NyaXB0VGFnkKRAaHRskNkkMzY4MzU5MGEtMjg4Ni00YjU3LTkzYjItOGU4NWUxZDc3ZWI2hLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkMzY4MzU5MGEtMjg4Ni00YjU3LTkzYjItOGU4NWUxZDc3ZWI2tGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCCp0BtZF9zdHKQqGdldGluZGV4kLRjZWxsX2V4ZWN1dGlvbl9vcmRlcpfZJGU5NjY1N2M0LTVlNWItMTFlYy0zZWU3LTdmMjhmNWIxZDE1ZtkkY2ZhYzY4YzItN2MxNy00NzdkLThlMmYtZDRhMzY2Y2RiZjk02SQ5NDQzMzNmOS03MGQ3LTQzNWUtYmEyNi1kM2E4MDk5Y2ZlY2HZJDJhNzBkZTA2LWNlYzAtNGEyZS04NzY4LTFjODc1NDM3ZmQ5NtkkMzY4MzU5MGEtMjg4Ni00YjU3LTkzYjItOGU4NWUxZDc3ZWI22SQ3OGU4ZTUyMi02ZmFkLTRmODgtOTRjMS03NjFiMDk3NWIyYWTZJDc5NzA2M2I2LWJhMTMtNDkxNS05ODRmLTYzMDRlMTI3NmZhZrRsYXN0X2hvdF9yZWxvYWRfdGltZcsAAAAAAAAAAKlzaG9ydHBhdGiyTWFya2Rvd25MaXRlcmFsLmpsrnByb2Nlc3Nfc3RhdHVzpXJlYWR5pHBhdGjZMC9Vc2Vycy9mb25zL2Rpc29yZ2FuaXNlZC1tZXNzL01hcmtkb3duTGl0ZXJhbC5qbK5sYXN0X3NhdmVfdGltZctB2G7LdUkV9KpjZWxsX29yZGVyl9kkNzk3MDYzYjYtYmExMy00OTE1LTk4NGYtNjMwNGUxMjc2ZmFm2SQ5NDQzMzNmOS03MGQ3LTQzNWUtYmEyNi1kM2E4MDk5Y2ZlY2HZJDJhNzBkZTA2LWNlYzAtNGEyZS04NzY4LTFjODc1NDM3ZmQ5NtkkMzY4MzU5MGEtMjg4Ni00YjU3LTkzYjItOGU4NWUxZDc3ZWI22SRlOTY2NTdjNC01ZTViLTExZWMtM2VlNy03ZjI4ZjViMWQxNWbZJGNmYWM2OGMyLTdjMTctNDc3ZC04ZTJmLWQ0YTM2NmNkYmY5NNkkNzhlOGU1MjItNmZhZC00Zjg4LTk0YzEtNzYxYjA5NzViMmFksXB1Ymxpc2hlZF9vYmplY3RzgKVuYnBrZ4eyaW5zdGFsbGVkX3ZlcnNpb25zgqpDb21tb25NYXJrpTAuOC40sEh5cGVydGV4dExpdGVyYWylMC45LjOwdGVybWluYWxfb3V0cHV0c4OqQ29tbW9uTWFya9knG1szMm0bWzFtTG9hZGluZxtbMjJtG1szOW0gcGFja2FnZXMuLi4Kp1BsdXRvVUnZJxtbMzJtG1sxbUxvYWRpbmcbWzIybRtbMzltIHBhY2thZ2VzLi4uCrBIeXBlcnRleHRMaXRlcmFs2ScbWzMybRtbMW1Mb2FkaW5nG1syMm0bWzM5bSBwYWNrYWdlcy4uLgqnZW5hYmxlZMO3cmVzdGFydF9yZWNvbW1lbmRlZF9tc2fAtHJlc3RhcnRfcmVxdWlyZWRfbXNnwK1idXN5X3BhY2thZ2VzkKxpbnN0YW50aWF0ZWTDq2NlbGxfaW5wdXRzh9kkOTQ0MzMzZjktNzBkNy00MzVlLWJhMjYtZDNhODA5OWNmZWNhhKdjZWxsX2lk2SQ5NDQzMzNmOS03MGQ3LTQzNWUtYmEyNi1kM2E4MDk5Y2ZlY2GwcnVubmluZ19kaXNhYmxlZMKkY29kZdlCY29kZV9zbmlwcGV0ID0gIiIiCnhzID0gWzE6MTAuLi4sIDIwXQptYXAoeHMpIGRvIHgKCWYoeF4yKQplbmQKIiIiq2NvZGVfZm9sZGVkwtkkNzk3MDYzYjYtYmExMy00OTE1LTk4NGYtNjMwNGUxMjc2ZmFmhKdjZWxsX2lk2SQ3OTcwNjNiNi1iYTEzLTQ5MTUtOTg0Zi02MzA0ZTEyNzZmYWawcnVubmluZ19kaXNhYmxlZMKkY29kZdoCVkBtZCgiIiIKIyBIZWxsbyEKVGhpcyBpcyAqTWFya2Rvd24qIGJ1dCAqKnN1cGVyY2hhcmdlZCoqISEKPG1hcnF1ZWUgc3R5bGU9JCgoY29sb3I9InB1cnBsZSIsIGZvbnRfZmFtaWx5PSJjdXJzaXZlIikpPklubGluZSBIVE1MIHN1cHBvcnRlZCE8L21hcnF1ZWU+CgpIZXJlIGlzIGEgbGlzdCwgY3JlYXRlZCB1c2luZyBzaW1wbGUgc3RyaW5nIGludGVycG9sYXRpb246CiQoKAoJIi0gaXRlbSAkaVxuIiBmb3IgaSBpbiAxOjMKKSkKCkFub3RoZXIgbGlzdCwgaW50ZXJwb2xhdGVkIGFzIEhUTUw6Cjx1bD4KJCgoCglAaHRsKCI8bGk+aXRlbSAkaTwvbGk+IikgZm9yIGkgaW4gMTozCikpCjwvdWw+CgohW10oaHR0cHM6Ly9tZWRpYS5naXBoeS5jb20vbWVkaWEvSm1VZndFTkU2aTRKeGlnMjduL2dpcGh5LmdpZikKCiMjIEludGVwb2xhdGluZyBhIHBsb3RseSBwbG90Ckl0IHdvcmtzIQokKHBsb3QoMToxMCwgcmFuZCgxMCkpKQoKIyMgQ29kZSBibG9jawpgYGBqdWxpYQpmdW5jdGlvbiBmKHg6OkludDY0KQoJImhlbGxvIFwkKHgpIgplbmQKCgojIHdlIGNhbiBpbnRlcnBvbGF0ZSBpbnRvIGNvZGUgYmxvY2tzIQokKGNvZGVfc25pcHBldCkKYGBgCiIiIimrY29kZV9mb2xkZWTC2SRjZmFjNjhjMi03YzE3LTQ3N2QtOGUyZi1kNGEzNjZjZGJmOTSEp2NlbGxfaWTZJGNmYWM2OGMyLTdjMTctNDc3ZC04ZTJmLWQ0YTM2NmNkYmY5NLBydW5uaW5nX2Rpc2FibGVkwqRjb2RlsHVzaW5nIENvbW1vbk1hcmurY29kZV9mb2xkZWTC2SQ3OGU4ZTUyMi02ZmFkLTRmODgtOTRjMS03NjFiMDk3NWIyYWSEp2NlbGxfaWTZJDc4ZThlNTIyLTZmYWQtNGY4OC05NGMxLTc2MWIwOTc1YjJhZLBydW5uaW5nX2Rpc2FibGVkwqRjb2Rl2aFtYWNybyBtZChleHByKQoJY21fcGFyc2VyID0gQ29tbW9uTWFyay5QYXJzZXIoKQoJcXVvdGUKCQlyZXN1bHQgPSBAaHRsKCRleHByKQoJCWh0bF9vdXRwdXQgPSByZXByKE1JTUUidGV4dC9odG1sIigpLCByZXN1bHQpCgoJCSQoY21fcGFyc2VyKShodGxfb3V0cHV0KQoJZW5kCmVuZKtjb2RlX2ZvbGRlZMLZJGU5NjY1N2M0LTVlNWItMTFlYy0zZWU3LTdmMjhmNWIxZDE1ZoSnY2VsbF9pZNkkZTk2NjU3YzQtNWU1Yi0xMWVjLTNlZTctN2YyOGY1YjFkMTVmsHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGW2dXNpbmcgSHlwZXJ0ZXh0TGl0ZXJhbKtjb2RlX2ZvbGRlZMLZJDJhNzBkZTA2LWNlYzAtNGEyZS04NzY4LTFjODc1NDM3ZmQ5NoSnY2VsbF9pZNkkMmE3MGRlMDYtY2VjMC00YTJlLTg3NjgtMWM4NzU0MzdmZDk2sHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXaAVJwbG90KHgsIHkpID0gQGh0bCgiIiIKPHNjcmlwdCBzcmM9Imh0dHBzOi8vY2RuLnBsb3QubHkvcGxvdGx5LTEuNTguMC5taW4uanMiPjwvc2NyaXB0PgoKPHNjcmlwdD4KICAgIGNvbnN0IGNvbnRhaW5lciA9IGh0bWxgPGRpdiBzdHlsZT0id2lkdGg6IDEwMCU7Ij48L2Rpdj5gCgogICAgUGxvdGx5Lm5ld1Bsb3QoIGNvbnRhaW5lciwgW3sKICAgICAgICB4OiAkKHgpLAogICAgICAgIHk6ICQoeSksCiAgICB9XSwgewogICAgICAgIG1hcmdpbjogeyB0OiAwLCBiOjAsIGw6IDAsIHI6MCB9ICwKCQloZWlnaHQ6IDEwMCwKICAgIH0pCgogICAgcmV0dXJuIGNvbnRhaW5lcgo8L3NjcmlwdD4KIiIiKatjb2RlX2ZvbGRlZMLZJDM2ODM1OTBhLTI4ODYtNGI1Ny05M2IyLThlODVlMWQ3N2ViNoSnY2VsbF9pZNkkMzY4MzU5MGEtMjg4Ni00YjU3LTkzYjItOGU4NWUxZDc3ZWI2sHJ1bm5pbmdfZGlzYWJsZWTCpGNvZGXZc21kIiIiCiMgSG93IGl0IHdvcmtzCgpVc2UgSFRMIHRvIGRvIHRoZSBzdHJpbmcgbWFjcm8gbWFnaWMsIGFuZCB0aGVuIGFzayBDb21tb25NYXJrLmpsIHRvIHJlbmRlciBpdC4gVGhhdCdzIGl0IQoiIiKrY29kZV9mb2xkZWTDq25vdGVib29rX2lk2SRlOTY2NTcxMC01ZTViLTExZWMtMzU4MC0wMTk1ZjdmZDdlYTCraW5fdGVtcF9kaXLC";
window.pluto_preamble_html = undefined;
</script>
<!-- [automatically generated launch parameters can be inserted here] -->
<script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.3/frontend/editor.js" type="module" defer></script>
<script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.3/frontend/warn_old_browsers.js"></script>
<script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.17.3/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