Skip to content

Instantly share code, notes, and snippets.

@terasakisatoshi
Last active October 4, 2024 19:13
Show Gist options
  • Save terasakisatoshi/922847f434d00712f71a3c9dc4ee8231 to your computer and use it in GitHub Desktop.
Save terasakisatoshi/922847f434d00712f71a3c9dc4ee8231 to your computer and use it in GitHub Desktop.
Rust Editor on Pluto Notebook
<!DOCTYPE html><html lang="en"><head><meta name="viewport" content="width=device-width"><meta charset="utf-8">
<meta name="pluto-insertion-spot-meta">
<meta name="theme-color" media="(prefers-color-scheme: light)" content="white"><meta name="theme-color" media="(prefers-color-scheme: dark)" content="#2a2928"><meta name="color-scheme" content="light dark"><link rel="icon" type="image/png" sizes="16x16" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/favicon-16x16.347d2855.png" integrity="sha384-3qsGeVLdddzV9oIkj3PhXXQX2CZCjOD/CiyrPQOX6InOWw3HAHClrsQhPfX9uRAj" crossorigin="anonymous"><link rel="icon" type="image/png" sizes="32x32" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/favicon-32x32.8789add4.png" integrity="sha384-cOe5vSoBIgKNgkUL27p9RpsGVY0uBg9PejLccDy+fR8ZD1Iv5dF1MGHjIZAIZwm6" crossorigin="anonymous"><link rel="icon" type="image/png" sizes="96x96" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/favicon-96x96.48689391.png" integrity="sha384-TN49cYb8GyNmrZT14bsYXXo4l1x1NJeJ/EHuVAauAKsNPopPHLojijs9jFT4Vs8c" crossorigin="anonymous"><link rel="pluto-logo-big" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/logo.004c1d7c.svg" integrity="sha384-GkQkODcGxsrSRJCkeakBXihum0GUM44cwBgKyutDimectXCbCgj6Vu3jlrueqEcN" crossorigin="anonymous"><link rel="pluto-logo-small" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/favicon_unsaturated.d1387b25.svg" integrity="sha384-omwjH+Qy3hpAVf5FYd/pkaDBuVAfsEDRN7eBxEA8Ek00OAWP+aiV+GpEYk3I7lyo" crossorigin="anonymous"><script type="module" src="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.7330d793.js" integrity="sha384-+mLMSKQxWEYKJeUt5VTdKTDfzHvui0mdMSd+iIQKYybm+6crs+6FeCr73c8yxir6" crossorigin="anonymous"></script><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.a682089f.css" integrity="sha384-aiiX4sVkuHqwZaQ4OOVV08zw55gY7JuiYbhRxwmatQyIdMKMsuW2vzbC0paOjVVj" crossorigin="anonymous"><script defer="">console.log("Pluto.jl, by Fons van der Plas (https://github.com/fonsp), Mikołaj Bochenski (https://github.com/malyvsen), Michiel Dral (https://github.com/dralletje) and friends 🌈");</script><script src="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.b8733d72.js" defer="" integrity="sha384-84yPd6AGZ/1IUiaBlssipmMKMFz9WGFQ+u8vYZ9cWicH6bZm7ZOej+kLDXnIIAQJ" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.9f9dc874.js" defer="" integrity="sha384-tkFo1EK72I9JvoTmHFa199dfRzW8mkXPUkHb/N7UhYI+bxKzX3Kh8LNCZz1ltsFF" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.90ede145.js" defer="" integrity="sha384-CuNU9gQg6fa/yynNqNWjHWzPm4nj+d7O6+HXsNGSqClhs/bYQIbBC3Lw/kh8Ukui" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.912b6bfb.js" defer="" integrity="sha384-FRiqeyJfF9LJm/u55iNTcaVZ8AlzYtWo/26uURlz+Iu3ZPUiXXTMnAlu1+rO5HR0" crossorigin="anonymous"></script><script id="iframe-resizer-content-window-script" src="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.6386bd9d.js" crossorigin="anonymous" defer="" integrity="sha384-tgN2a0VDi/lCYwZuDqT7L+A/Y/9kpxf3HV7zv2BJ5Fu7zW0EClq0nM4crfK3TRPs"></script><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.d9776a27.css" type="text/css" integrity="sha384-RK45/h2gdicn8pxD8WqZf1w7pzM3CCb9HD3xyGUreTljRGubIpCJhUckT0KahxtR" crossorigin="anonymous"><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.52bd66ba.css" type="text/css" media="all" data-pluto-file="hide-ui" integrity="sha384-mZn6RuXF1UXCTqkld9/QJshMPUFGT/EBEcr0lZfUV7TULrxk0fZqe+YHXMk+6Qb0" crossorigin="anonymous"><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.d0a5b1f0.css" type="text/css" integrity="sha384-oUdA9RJhs9IlGgJOs6m3tNmyOqOLTPOfpCXeXLUex2W5KOLfSAdyT5HoVuwUEFDQ" crossorigin="anonymous"><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.a79fcc8f.css" type="text/css" integrity="sha384-P7YcsNGWMp1f9Ffi+2kw3mrU2zVCb1nf0E/MJE+UDCc1OOXZUYC6ihS3Jagwyl2h" crossorigin="anonymous"><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.09b09a3f.css" type="text/css" integrity="sha384-dHB2VzrvTc7+CLgp62sndIQSbzeitJhO8vZnxV2zNlO4GHz83BZPqsY+0nTAF7WO" crossorigin="anonymous"><script data-pluto-file="launch-parameters">
window.pluto_notebook_id = undefined;
window.pluto_isolated_cell_ids = undefined;
window.pluto_notebookfile = "data:text/julia;charset=utf-8;base64,IyMjIEEgUGx1dG8uamwgbm90ZWJvb2sgIyMjCiMgdjAuMTkuNDYKCnVzaW5nIE1hcmtkb3duCnVzaW5nIEludGVyYWN0aXZlVXRpbHMKCiMgVGhpcyBQbHV0byBub3RlYm9vayB1c2VzIEBiaW5kIGZvciBpbnRlcmFjdGl2aXR5LiBXaGVuIHJ1bm5pbmcgdGhpcyBub3RlYm9vayBvdXRzaWRlIG9mIFBsdXRvLCB0aGUgZm9sbG93aW5nICdtb2NrIHZlcnNpb24nIG9mIEBiaW5kIGdpdmVzIGJvdW5kIHZhcmlhYmxlcyBhIGRlZmF1bHQgdmFsdWUgKGluc3RlYWQgb2YgYW4gZXJyb3IpLgptYWNybyBiaW5kKGRlZiwgZWxlbWVudCkKICAgIHF1b3RlCiAgICAgICAgbG9jYWwgaXYgPSB0cnkgQmFzZS5sb2FkZWRfbW9kdWxlc1tCYXNlLlBrZ0lkKEJhc2UuVVVJRCgiNmU2OTZjNzItNjU0Mi0yMDY3LTcyNjUtNDIyMDZjNzU2MTUwIiksICJBYnN0cmFjdFBsdXRvRGluZ2V0amVzIildLkJvbmRzLmluaXRpYWxfdmFsdWUgY2F0Y2g7IGIgLT4gbWlzc2luZzsgZW5kCiAgICAgICAgbG9jYWwgZWwgPSAkKGVzYyhlbGVtZW50KSkKICAgICAgICBnbG9iYWwgJChlc2MoZGVmKSkgPSBDb3JlLmFwcGxpY2FibGUoQmFzZS5nZXQsIGVsKSA/IEJhc2UuZ2V0KGVsKSA6IGl2KGVsKQogICAgICAgIGVsCiAgICBlbmQKZW5kCgojIOKVlOKVkOKVoSAwN2ViZGJiZS00OWJiLTRkMTgtOWYyYi0xNGY5OGQxMzc1NDgKYmVnaW4KCXVzaW5nIFBrZwoJUGtnLmFjdGl2YXRlKHRlbXA9dHJ1ZSkKCVBrZy5kZXZlbG9wKHBhdGg9ZGlybmFtZShAX19ESVJfXykpCgl1c2luZyBQbHV0b01vbmFjb0VkaXRvcjogTW9uYWNvRWRpdG9yCmVuZAoKIyDilZTilZDilaEgOWFhNDBmOGMtYTk1NS00N2EzLThlNmQtNGFjNTRkMWRjMzMwCm1kIiIiCiMgUnVzdCBFZGl0b3Igb24gUGx1dG8gTm90ZWJvb2sKClRvIHJ1biB0aGlzIG5vdGVib29rLCB5b3UgbmVlZCB0byBpbnN0YWxsIHRoZSBSdXN0IGNvbXBpbGVyIGZyb20gW2hlcmVdKGh0dHBzOi8vd3d3LnJ1c3QtbGFuZy5vcmcvdG9vbHMvaW5zdGFsbCkuIFRoaXMgd2lsbCBpbnN0YWxsIGJvdGggYHJ1c3RjYCAodGhlIFJ1c3QgY29tcGlsZXIpIGFuZCBgY2FyZ29gICh0aGUgUnVzdCBwYWNrYWdlIG1hbmFnZXIpLgoKVGhlbiwgaW5zdGFsbCB0aGUgYHJ1c3Qtc2NyaXB0YCBwYWNrYWdlIHdpdGg6CgpgYGBzaAokIGNhcmdvIGluc3RhbGwgcnVzdC1zY3JpcHQKYGBgCgpTZWUgW3J1c3Qtc2NyaXB0XShodHRwczovL2dpdGh1Yi5jb20vZm9ybndhbGwvcnVzdC1zY3JpcHQpIGZvciBtb3JlIGluZm9ybWF0aW9uLgoKIiIiCgojIOKVlOKVkOKVoSBiZjIzMmQ5OS0zMDAxLTRhYWMtYWZiNy0xMzIxYzc0MDc2NjYKYmVnaW4KCWluaXRDb2RlID0gIiIiCi8vISBEZXBlbmRlbmNpZXMgY2FuIGJlIHNwZWNpZmllZCBpbiB0aGUgc2NyaXB0IGZpbGUgaXRzZWxmIGFzIGZvbGxvd3M6Ci8vIQovLyEgYGBgY2FyZ28KLy8hIG5hbWUgPSAibWFpbiIKLy8hIHZlcnNpb24gPSAiMC4xLjAiCi8vISBlZGl0aW9uID0gIjIwMjEiCi8vISAKLy8hIFtkZXBlbmRlbmNpZXNdCi8vISBuZGFycmF5ID0gIjAuMTYuMSIKLy8hCWBgYAovLyEgCmV4dGVybiBjcmF0ZSBuZGFycmF5Owp1c2UgbmRhcnJheTo6YXJyMjsKZm4gbWFpbigpIHsKICAgIGxldCBhID0gYXJyMigmW1sxLCAyLCAzXSwKICAgICAgICAgICAgICAgICAgIFs0LCA1LCA2XV0pOwogICAgbGV0IGIgPSBhcnIyKCZbWzYsIDUsIDRdLAogICAgICAgICAgICAgICAgICAgWzMsIDIsIDFdXSk7CiAgICBsZXQgc3VtID0gJmEgKyAmYjsKICAgIHByaW50bG4hKCJ7fSIsIGEpOwogICAgcHJpbnRsbiEoIisiKTsKICAgIHByaW50bG4hKCJ7fSIsIGIpOwogICAgcHJpbnRsbiEoIj0iKTsKICAgIHByaW50bG4hKCJ7fSIsIHN1bSk7Cn0KCSIiIgoJQGJpbmQgcnVzdGNvZGUgTW9uYWNvRWRpdG9yKCJydXN0IiwgaW5pdENvZGUsIHdpZHRoPTcwMCwgaGVpZ2h0PTUwMCkKZW5kCgojIOKVlOKVkOKVoSBkY2U2MTZkNy1mZGZlLTQ4NTQtOTE5ZC00MjA2MDNlYmM4NzUKbWt0ZW1wZGlyKCkgZG8gZAoJc291cmNlcGF0aCA9IGpvaW5wYXRoKGQsICJtYWluLnJzIikKCW9wZW4oc291cmNlcGF0aCwgInciKSBkbyBpbwoJCXdyaXRlKGlvLCBydXN0Y29kZSkKCWVuZAkKCWV4ZWN1dGFibGVwYXRoID0gam9pbnBhdGgoZCwgIm1haW4iKQoJdHJ5CgkJcnVuKGBydXN0LXNjcmlwdCAkKHNvdXJjZXBhdGgpYCkKCWNhdGNoIAoJZW5kCglub3RoaW5nCmVuZAoKIyDilZTilZDilaEgQ2VsbCBvcmRlcjoKIyDilZ/ilIA5YWE0MGY4Yy1hOTU1LTQ3YTMtOGU2ZC00YWM1NGQxZGMzMzAKIyDilaDilZAwN2ViZGJiZS00OWJiLTRkMTgtOWYyYi0xNGY5OGQxMzc1NDgKIyDilZ/ilIBiZjIzMmQ5OS0zMDAxLTRhYWMtYWZiNy0xMzIxYzc0MDc2NjYKIyDilZ/ilIBkY2U2MTZkNy1mZGZlLTQ4NTQtOTE5ZC00MjA2MDNlYmM4NzUK";
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.19.46";
window.pluto_statefile = "data:;base64,3gASpWJvbmRzgahydXN0Y29kZYGldmFsdWXaAe8vLyEgRGVwZW5kZW5jaWVzIGNhbiBiZSBzcGVjaWZpZWQgaW4gdGhlIHNjcmlwdCBmaWxlIGl0c2VsZiBhcyBmb2xsb3dzOgovLyEKLy8hIGBgYGNhcmdvCi8vISBuYW1lID0gIm1haW4iCi8vISB2ZXJzaW9uID0gIjAuMS4wIgovLyEgZWRpdGlvbiA9ICIyMDIxIgovLyEgCi8vISBbZGVwZW5kZW5jaWVzXQovLyEgbmRhcnJheSA9ICIwLjE2LjEiCi8vISBgYGAKCnVzZSBuZGFycmF5OjphcnIyOwpmbiBtYWluKCkgewogICAgbGV0IGEgPSBhcnIyKCZbWzEsIDIsIDNdLAogICAgICAgICAgICAgICAgICAgWzQsIDUsIDZdXSk7CiAgICBsZXQgYiA9IGFycjIoJltbNiwgNSwgNF0sCiAgICAgICAgICAgICAgICAgICBbMywgMiwgMV1dKTsKICAgIGxldCBzdW0gPSAmYSArICZiOwogICAgcHJpbnRsbiEoInt9IiwgYSk7CiAgICBwcmludGxuISgiKyIpOwogICAgcHJpbnRsbiEoInt9IiwgYik7CiAgICBwcmludGxuISgiPSIpOwogICAgcHJpbnRsbiEoInt9Iiwgc3VtKTsKfQqsY2VsbF9yZXN1bHRzhNkkZGNlNjE2ZDctZmRmZS00ODU0LTkxOWQtNDIwNjAzZWJjODc1iqZxdWV1ZWTCpGxvZ3ORiKRsaW5l/6Ntc2eS2UxbWzEsIDIsIDNdLAogWzQsIDUsIDZdXQorCltbNiwgNSwgNF0sCiBbMywgMiwgMV1dCj0KW1s3LCA3LCA3XSwKIFs3LCA3LCA3XV0KqnRleHQvcGxhaW6nY2VsbF9pZNkkZGNlNjE2ZDctZmRmZS00ODU0LTkxOWQtNDIwNjAzZWJjODc1pmt3YXJnc5CiaWS0UGx1dG9SdW5uZXJfZDFhY2I4MWWkZmlsZdlcL1VzZXJzL3RlcmFzYWtpc2F0b3NoaS8uanVsaWEvcGFja2FnZXMvUGx1dG8vUnZlR0gvc3JjL3J1bm5lci9QbHV0b1J1bm5lci9zcmMvUGx1dG9SdW5uZXIuamylZ3JvdXCrUGx1dG9SdW5uZXKlbGV2ZWyuTG9nTGV2ZWwoLTU1NSmncnVubmluZ8Kmb3V0cHV0hqRib2R5oKRtaW1lqnRleHQvcGxhaW6scm9vdGFzc2lnbmVlwLJsYXN0X3J1bl90aW1lc3RhbXDLQdnAD1/Y8yywcGVyc2lzdF9qc19zdGF0ZcO3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCp2NlbGxfaWTZJGRjZTYxNmQ3LWZkZmUtNDg1NC05MTlkLTQyMDYwM2ViYzg3NblkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzk5k2Em1cHVibGlzaGVkX29iamVjdF9rZXlzkLhkZXBlbmRzX29uX3NraXBwZWRfY2VsbHPCp2Vycm9yZWTC2SQ5YWE0MGY4Yy1hOTU1LTQ3YTMtOGU2ZC00YWM1NGQxZGMzMzCKpnF1ZXVlZMKkbG9nc5CncnVubmluZ8Kmb3V0cHV0hqRib2R52gI3PGRpdiBjbGFzcz0ibWFya2Rvd24iPjxoMT5SdXN0IEVkaXRvciBvbiBQbHV0byBOb3RlYm9vazwvaDE+CjxwPlRvIHJ1biB0aGlzIG5vdGVib29rLCB5b3UgbmVlZCB0byBpbnN0YWxsIHRoZSBSdXN0IGNvbXBpbGVyIGZyb20gPGEgaHJlZj0iaHR0cHM6Ly93d3cucnVzdC1sYW5nLm9yZy90b29scy9pbnN0YWxsIj5oZXJlPC9hPi4gVGhpcyB3aWxsIGluc3RhbGwgYm90aCA8Y29kZT5ydXN0YzwvY29kZT4gJiM0MDt0aGUgUnVzdCBjb21waWxlciYjNDE7IGFuZCA8Y29kZT5jYXJnbzwvY29kZT4gJiM0MDt0aGUgUnVzdCBwYWNrYWdlIG1hbmFnZXImIzQxOy48L3A+CjxwPlRoZW4sIGluc3RhbGwgdGhlIDxjb2RlPnJ1c3Qtc2NyaXB0PC9jb2RlPiBwYWNrYWdlIHdpdGg6PC9wPgo8cHJlPjxjb2RlIGNsYXNzPSJsYW5ndWFnZS1zaCI+JiMzNjsgY2FyZ28gaW5zdGFsbCBydXN0LXNjcmlwdDwvY29kZT48L3ByZT4KPHA+U2VlIDxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS9mb3Jud2FsbC9ydXN0LXNjcmlwdCI+cnVzdC1zY3JpcHQ8L2E+IGZvciBtb3JlIGluZm9ybWF0aW9uLjwvcD4KPC9kaXY+pG1pbWWpdGV4dC9odG1srHJvb3Rhc3NpZ25lZcCybGFzdF9ydW5fdGltZXN0YW1wy0HZwA9JzsrJsHBlcnNpc3RfanNfc3RhdGXCt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqdjZWxsX2lk2SQ5YWE0MGY4Yy1hOTU1LTQ3YTMtOGU2ZC00YWM1NGQxZGMzMzC5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4A3Ec+tXB1Ymxpc2hlZF9vYmplY3Rfa2V5c5C4ZGVwZW5kc19vbl9za2lwcGVkX2NlbGxzwqdlcnJvcmVkwtkkYmYyMzJkOTktMzAwMS00YWFjLWFmYjctMTMyMWM3NDA3NjY2iqZxdWV1ZWTCpGxvZ3OQp3J1bm5pbmfCpm91dHB1dIakYm9kedoO5Dxib25kIGRlZj0icnVzdGNvZGUiIHVuaXF1ZV9pZD0iekRONS9ySG4xbWVKIj48c3Bhbj4KCTxzdHlsZT4KICAgICAgICAucGx1dG8tbW9uYWNvLWVkaXRvciB7CiAgICAgICAgICAgIHdpZHRoOiA3MDBweDsKICAgICAgICAgICAgaGVpZ2h0OiA1MDBweDsKICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDsKICAgICAgICB9CiAgICA8L3N0eWxlPgoJPGRpdiBpZD0nZWRpdG9yLWNvbnRhaW5lcicgY2xhc3M9J3BsdXRvLW1vbmFjby1lZGl0b3InPjwvZGl2PgoKCTxzY3JpcHQgc3JjPSJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9yZXF1aXJlLmpzLzIuMy43L3JlcXVpcmUuanMiPjwvc2NyaXB0PgoJPHNjcmlwdCBzcmM9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL21vbmFjby1lZGl0b3IvMC41MS4wL21pbi92cy9sb2FkZXIubWluLmpzIj48L3NjcmlwdD4KCgk8IS0tIFRoaXMgTG9jYWxSZXNvdXJjZSBoYWNrIGlzIHJlcXVpcmVkIHRvIGF2b2lkIGdldHRpbmcgZXJyb3JzIGR1ZSB0byBjb250ZW50IHBhcnNpbmcgaW4gTW9uYWNvRWRpdG9yV3JhcHBlci5qcy4gLS0+Cgk8c2NyaXB0IGNvbnRyb2xzPScnIHNyYz0nZGF0YTp0ZXh0L2phdmFzY3JpcHQ7YmFzZTY0LGNtVnhkV2x5WlM1amIyNW1hV2NvZXlCd1lYUm9jem9nZXlBbmRuTW5PaUFuYUhSMGNITTZMeTlqWkc1cWN5NWpiRzkxWkdac1lYSmxMbU52YlM5aGFtRjRMMnhwWW5NdmJXOXVZV052TFdWa2FYUnZjaTh3TGpVeExqQXZiV2x1TDNaekx5Y2dmU0I5S1RzS0NtTnNZWE56SUUxdmJtRmpiMFZrYVhSdmNsZHlZWEJ3WlhJZ2V3b2dJQ0FnSUNBZ0lHTnZibk4wY25WamRHOXlLR052Ym5SaGFXNWxjaXdnYVc1cGRHbGhiRlpoYkhWbExDQnNZVzVuZFdGblpTd2diVzl1WVdOdlVHRjBhQ2tnZXdvZ0lDQWdJQ0FnSUNBZ0lDQjBhR2x6TG1OdmJuUmhhVzVsY2lBOUlHTnZiblJoYVc1bGNqc0tJQ0FnSUNBZ0lDQWdJQ0FnZEdocGN5NXBibWwwYVdGc1ZtRnNkV1VnUFNCcGJtbDBhV0ZzVm1Gc2RXVTdDaUFnSUNBZ0lDQWdJQ0FnSUhSb2FYTXViR0Z1WjNWaFoyVWdQU0JzWVc1bmRXRm5aVHNLSUNBZ0lDQWdJQ0FnSUNBZ2RHaHBjeTV0YjI1aFkyOVFZWFJvSUQwZ2JXOXVZV052VUdGMGFDQjhmQ0FuYUhSMGNITTZMeTlqWkc1cWN5NWpiRzkxWkdac1lYSmxMbU52YlM5aGFtRjRMMnhwWW5NdmJXOXVZV052TFdWa2FYUnZjaTh3TGpVeExqQXZiV2x1TDNaekx5YzdDaUFnSUNBZ0lDQWdJQ0FnSUhSb2FYTXVaV1JwZEc5eUlEMGdiblZzYkRzS0lDQWdJQ0FnSUNBZ0lDQWdkR2hwY3k1cGJtbDBLQ2s3Q2lBZ0lDQWdJQ0FnZlFvS0lDQWdJQ0FnSUNCcGJtbDBLQ2tnZXdvZ0lDQWdJQ0FnSUNBZ0lDQnlaWEYxYVhKbExtTnZibVpwWnloN0lIQmhkR2h6T2lCN0lDZDJjeWM2SUhSb2FYTXViVzl1WVdOdlVHRjBhQ0I5SUgwcE93b2dJQ0FnSUNBZ0lDQWdJQ0J5WlhGMWFYSmxLRnNuZG5NdlpXUnBkRzl5TDJWa2FYUnZjaTV0WVdsdUoxMHNJQ2dwSUQwK0lIc0tJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIUm9hWE11WldScGRHOXlJRDBnYlc5dVlXTnZMbVZrYVhSdmNpNWpjbVZoZEdVb2RHaHBjeTVqYjI1MFlXbHVaWElzSUhzS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjJZV3gxWlRvZ2RHaHBjeTVwYm1sMGFXRnNWbUZzZFdVc0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiR0Z1WjNWaFoyVTZJSFJvYVhNdWJHRnVaM1ZoWjJVc0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdkR2hsYldVNklDZDJjeTFrWVhKckp5d2dMeThnNDRHSzVhVzk0NEcvNDRHbjQ0T0c0NE84NDRPZTQ0S1M1YVNKNXB1MDQ0R240NEdONDRHKzQ0R1pDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWVhWMGIyMWhkR2xqVEdGNWIzVjBPaUIwY25WbElDOHZJT09Eck9PQ3BPT0NvdU9DcHVPRGlPT0JydWlIcXVXTGxlaXF2K2FWdE9PQ2t1YWNpZVdLdWVPQnErT0JsK09CdnVPQm1Rb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZTazdDaUFnSUNBZ0lDQWdJQ0FnSUgwcE93b2dJQ0FnSUNBZ0lIMEtDaUFnSUNBZ0lDQWdaMlYwVm1Gc2RXVW9LU0I3Q2lBZ0lDQWdJQ0FnSUNBZ0lISmxkSFZ5YmlCMGFHbHpMbVZrYVhSdmNpQS9JSFJvYVhNdVpXUnBkRzl5TG1kbGRGWmhiSFZsS0NrZ09pQW5KenNLSUNBZ0lDQWdJQ0I5Q24wSycgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz48L3NjcmlwdD4KCgk8c2NyaXB0PgoJCWNvbnN0IHdyYXBwZXJfc3BhbiA9IGN1cnJlbnRTY3JpcHQucGFyZW50RWxlbWVudDsKCQljb25zdCBjb250YWluZXIgPSB3cmFwcGVyX3NwYW4ucXVlcnlTZWxlY3RvcigiI2VkaXRvci1jb250YWluZXIiKTsKCQljb25zdCB3ID0gbmV3IE1vbmFjb0VkaXRvcldyYXBwZXIoY29udGFpbmVyLCAiLy8hIERlcGVuZGVuY2llcyBjYW4gYmUgc3BlY2lmaWVkIGluIHRoZSBzY3JpcHQgZmlsZSBpdHNlbGYgYXMgZm9sbG93czpcbi8vIVxuLy8hIGBgYGNhcmdvXG4vLyEgbmFtZSA9IFwibWFpblwiXG4vLyEgdmVyc2lvbiA9IFwiMC4xLjBcIlxuLy8hIGVkaXRpb24gPSBcIjIwMjFcIlxuLy8hIFxuLy8hIFtkZXBlbmRlbmNpZXNdXG4vLyEgbmRhcnJheSA9IFwiMC4xNi4xXCJcbi8vIQlgYGBcbi8vISBcbmV4dGVybiBjcmF0ZSBuZGFycmF5O1xudXNlIG5kYXJyYXk6OmFycjI7XG5mbiBtYWluKCkge1xuICAgIGxldCBhID0gYXJyMigmW1sxLCAyLCAzXSxcbiAgICAgICAgICAgICAgICAgICBbNCwgNSwgNl1dKTtcbiAgICBsZXQgYiA9IGFycjIoJltbNiwgNSwgNF0sXG4gICAgICAgICAgICAgICAgICAgWzMsIDIsIDFdXSk7XG4gICAgbGV0IHN1bSA9ICZhICsgJmI7XG4gICAgcHJpbnRsbiEoXCJ7fVwiLCBhKTtcbiAgICBwcmludGxuIShcIitcIik7XG4gICAgcHJpbnRsbiEoXCJ7fVwiLCBiKTtcbiAgICBwcmludGxuIShcIj1cIik7XG4gICAgcHJpbnRsbiEoXCJ7fVwiLCBzdW0pO1xufVxuCSIsICJydXN0Iik7CgkJY29uc3QgcEUgPSB3LmNvbnRhaW5lci5wYXJlbnRFbGVtZW50OwoJCWZ1bmN0aW9uIHVwZGF0ZUVkaXRvclZhbHVlKCkgewoJCQlwRS5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgidXBkYXRlIikpOwoJCQlwRS52YWx1ZSA9IHcuZWRpdG9yID8gdy5lZGl0b3IuZ2V0VmFsdWUoKSA6ICIvLyEgRGVwZW5kZW5jaWVzIGNhbiBiZSBzcGVjaWZpZWQgaW4gdGhlIHNjcmlwdCBmaWxlIGl0c2VsZiBhcyBmb2xsb3dzOlxuLy8hXG4vLyEgYGBgY2FyZ29cbi8vISBuYW1lID0gXCJtYWluXCJcbi8vISB2ZXJzaW9uID0gXCIwLjEuMFwiXG4vLyEgZWRpdGlvbiA9IFwiMjAyMVwiXG4vLyEgXG4vLyEgW2RlcGVuZGVuY2llc11cbi8vISBuZGFycmF5ID0gXCIwLjE2LjFcIlxuLy8hCWBgYFxuLy8hIFxuZXh0ZXJuIGNyYXRlIG5kYXJyYXk7XG51c2UgbmRhcnJheTo6YXJyMjtcbmZuIG1haW4oKSB7XG4gICAgbGV0IGEgPSBhcnIyKCZbWzEsIDIsIDNdLFxuICAgICAgICAgICAgICAgICAgIFs0LCA1LCA2XV0pO1xuICAgIGxldCBiID0gYXJyMigmW1s2LCA1LCA0XSxcbiAgICAgICAgICAgICAgICAgICBbMywgMiwgMV1dKTtcbiAgICBsZXQgc3VtID0gJmEgKyAmYjtcbiAgICBwcmludGxuIShcInt9XCIsIGEpO1xuICAgIHByaW50bG4hKFwiK1wiKTtcbiAgICBwcmludGxuIShcInt9XCIsIGIpO1xuICAgIHByaW50bG4hKFwiPVwiKTtcbiAgICBwcmludGxuIShcInt9XCIsIHN1bSk7XG59XG4JIjsKCQl9CgoJCXcuY29udGFpbmVyLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IiwgZT0+ewoJCQl1cGRhdGVFZGl0b3JWYWx1ZSgpOwoJCX0pCgoJCXVwZGF0ZUVkaXRvclZhbHVlKCk7Cgk8L3NjcmlwdD4KPC9zcGFuPgo8L2JvbmQ+pG1pbWWpdGV4dC9odG1srHJvb3Rhc3NpZ25lZcCybGFzdF9ydW5fdGltZXN0YW1wy0HZwA9KLx8hsHBlcnNpc3RfanNfc3RhdGXCt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqdjZWxsX2lk2SRiZjIzMmQ5OS0zMDAxLTRhYWMtYWZiNy0xMzIxYzc0MDc2Nja5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4j1MRHtXB1Ymxpc2hlZF9vYmplY3Rfa2V5c5C4ZGVwZW5kc19vbl9za2lwcGVkX2NlbGxzwqdlcnJvcmVkwtkkMDdlYmRiYmUtNDliYi00ZDE4LTlmMmItMTRmOThkMTM3NTQ4iqZxdWV1ZWTCpGxvZ3ORiKRsaW5l/6Ntc2eS2gNIG1szMm0bWzFtICBBY3RpdmF0aW5nG1syMm0bWzM5bSBuZXcgcHJvamVjdCBhdCBgL3Zhci9mb2xkZXJzLzE0L2NnNDM4ZnZkMjhkZzl3cHZwd3QxbHowYzAwMDBnbi9UL2psX0tPYlJ1Q2AKG1szMm0bWzFtICAgUmVzb2x2aW5nG1syMm0bWzM5bSBwYWNrYWdlIHZlcnNpb25zLi4uChtbMzJtG1sxbSAgICBVcGRhdGluZxtbMjJtG1szOW0gYC9wcml2YXRlL3Zhci9mb2xkZXJzLzE0L2NnNDM4ZnZkMjhkZzl3cHZwd3QxbHowYzAwMDBnbi9UL2psX0tPYlJ1Qy9Qcm9qZWN0LnRvbWxgCiAgG1s5MG1bNWU5NDNlYWVdIBtbMzltG1s5Mm0rIFBsdXRvTW9uYWNvRWRpdG9yIHYwLjEuMSBgfi93b3JrL2F0ZWxpZXJhcml0aC9QbHV0b01vbmFjb0VkaXRvci5qbGAbWzM5bQobWzMybRtbMW0gICAgVXBkYXRpbmcbWzIybRtbMzltIGAvcHJpdmF0ZS92YXIvZm9sZGVycy8xNC9jZzQzOGZ2ZDI4ZGc5d3B2cHd0MWx6MGMwMDAwZ24vVC9qbF9LT2JSdUMvTWFuaWZlc3QudG9tbGAKICAbWzkwbVthYzExOTJhOF0gG1szOW0bWzkybSsgSHlwZXJ0ZXh0TGl0ZXJhbCB2MC45LjUbWzM5bQogIBtbOTBtWzZjNmUyZTZjXSAbWzM5bRtbOTJtKyBNSU1FcyB2MC4xLjQbWzM5bQogIBtbOTBtWzVlOTQzZWFlXSAbWzM5bRtbOTJtKyBQbHV0b01vbmFjb0VkaXRvciB2MC4xLjEgYH4vd29yay9hdGVsaWVyYXJpdGgvUGx1dG9Nb25hY29FZGl0b3IuamxgG1szOW0KICAbWzkwbVs0MTBhNGI0ZF0gG1szOW0bWzkybSsgVHJpY2tzIHYwLjEuORtbMzltCiAgG1s5MG1bNWMyNzQ3ZjhdIBtbMzltG1s5Mm0rIFVSSXMgdjEuNS4xG1szOW0KICAbWzkwbVsyYTBmNDRlM10gG1szOW0bWzkybSsgQmFzZTY0G1szOW0KqnRleHQvcGxhaW6nY2VsbF9pZNkkMDdlYmRiYmUtNDliYi00ZDE4LTlmMmItMTRmOThkMTM3NTQ4pmt3YXJnc5CiaWS0UGx1dG9SdW5uZXJfZDFhY2I4MWWkZmlsZdlcL1VzZXJzL3RlcmFzYWtpc2F0b3NoaS8uanVsaWEvcGFja2FnZXMvUGx1dG8vUnZlR0gvc3JjL3J1bm5lci9QbHV0b1J1bm5lci9zcmMvUGx1dG9SdW5uZXIuamylZ3JvdXCrUGx1dG9SdW5uZXKlbGV2ZWyuTG9nTGV2ZWwoLTU1NSmncnVubmluZ8Kmb3V0cHV0hqRib2R5oKRtaW1lqnRleHQvcGxhaW6scm9vdGFzc2lnbmVlwLJsYXN0X3J1bl90aW1lc3RhbXDLQdnAD0lYRyywcGVyc2lzdF9qc19zdGF0ZcK3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCp2NlbGxfaWTZJDA3ZWJkYmJlLTQ5YmItNGQxOC05ZjJiLTE0Zjk4ZDEzNzU0OLlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzwAAAAEFXNDPtXB1Ymxpc2hlZF9vYmplY3Rfa2V5c5C4ZGVwZW5kc19vbl9za2lwcGVkX2NlbGxzwqdlcnJvcmVkwqtzdGF0dXNfdHJlZYWkbmFtZahub3RlYm9va6hzdWJ0YXNrc4Smc2F2aW5nhaRuYW1lpnNhdmluZ6hzdWJ0YXNrc4CrZmluaXNoZWRfYXTLQdnAD0l6vCenc3VjY2Vzc8Oqc3RhcnRlZF9hdMtB2cAPSXq3Mal3b3Jrc3BhY2WFpG5hbWWpd29ya3NwYWNlqHN1YnRhc2tzgqxpbml0X3Byb2Nlc3OFpG5hbWWsaW5pdF9wcm9jZXNzqHN1YnRhc2tzhKE0haRuYW1loTSoc3VidGFza3OAq2ZpbmlzaGVkX2F0y0HZwA9HfRhhp3N1Y2Nlc3PDqnN0YXJ0ZWRfYXTLQdnAD0c/YYShMYWkbmFtZaExqHN1YnRhc2tzgKtmaW5pc2hlZF9hdMtB2cAPRzmS0adzdWNjZXNzw6pzdGFydGVkX2F0y0HZwA9HJR/WoTKFpG5hbWWhMqhzdWJ0YXNrc4CrZmluaXNoZWRfYXTLQdnAD0c/YVKnc3VjY2Vzc8Oqc3RhcnRlZF9hdMtB2cAPRzmfrqEzhaRuYW1loTOoc3VidGFza3OAq2ZpbmlzaGVkX2F0y0HZwA9HP2GAp3N1Y2Nlc3PDqnN0YXJ0ZWRfYXTLQdnAD0c/YWerZmluaXNoZWRfYXTLQdnAD0d9Jf+nc3VjY2Vzc8Oqc3RhcnRlZF9hdMtB2cAPRyUfo65jcmVhdGVfcHJvY2Vzc4WkbmFtZa5jcmVhdGVfcHJvY2Vzc6hzdWJ0YXNrc4LZIUxvYWRpbmcgbm90ZWJvb2sgYm9vdCBlbnZpcm9ubWVudIWkbmFtZdkhTG9hZGluZyBub3RlYm9vayBib290IGVudmlyb25tZW50qHN1YnRhc2tzgKtmaW5pc2hlZF9hdMtB2cAPRyS9oadzdWNjZXNzw6pzdGFydGVkX2F0y0HZwA9GhxtlsFN0YXJ0aW5nIHByb2Nlc3OFpG5hbWWwU3RhcnRpbmcgcHJvY2Vzc6hzdWJ0YXNrc4CrZmluaXNoZWRfYXTLQdnAD0aHG1Cnc3VjY2Vzc8Oqc3RhcnRlZF9hdMtB2cAPRgC9f6tmaW5pc2hlZF9hdMtB2cAPRyS9nadzdWNjZXNzw6pzdGFydGVkX2F0y0HZwA9GAL1mq2ZpbmlzaGVkX2F0y0HZwA9HfSYPp3N1Y2Nlc3PDqnN0YXJ0ZWRfYXTLQdnAD0YAvU2jcGtnhaRuYW1lo3BrZ6hzdWJ0YXNrc4GoYW5hbHlzaXOFpG5hbWWoYW5hbHlzaXOoc3VidGFza3OAq2ZpbmlzaGVkX2F0y0HZwA9F/5IUp3N1Y2Nlc3PDqnN0YXJ0ZWRfYXTLQdnAD0X/kdWrZmluaXNoZWRfYXTLQdnAD0X/khSnc3VjY2Vzc8Oqc3RhcnRlZF9hdMtB2cAPRf+RjqNydW6FpG5hbWWjcnVuqHN1YnRhc2tzgrByZXNvbHZlX3RvcG9sb2d5haRuYW1lsHJlc29sdmVfdG9wb2xvZ3moc3VidGFza3OAq2ZpbmlzaGVkX2F0y0HZwA9fhHH4p3N1Y2Nlc3PDqnN0YXJ0ZWRfYXTLQdnAD1+EcGGoZXZhbHVhdGWFpG5hbWWoZXZhbHVhdGWoc3VidGFza3OBoTGFpG5hbWWhMahzdWJ0YXNrc4CrZmluaXNoZWRfYXTLQdnAD1/Y83enc3VjY2Vzc8Oqc3RhcnRlZF9hdMtB2cAPX4SXnqtmaW5pc2hlZF9hdMtB2cAPX9j/HqdzdWNjZXNzw6pzdGFydGVkX2F0y0HZwA9fhHH8q2ZpbmlzaGVkX2F0y0HZwA9f2P8Zp3N1Y2Nlc3PDqnN0YXJ0ZWRfYXTLQdnAD1+EcDurZmluaXNoZWRfYXTAp3N1Y2Nlc3PAqnN0YXJ0ZWRfYXTLQdnAD0AbzsSxY2VsbF9kZXBlbmRlbmNpZXOE2SRkY2U2MTZkNy1mZGZlLTQ4NTQtOTE5ZC00MjA2MDNlYmM4NzWEtHByZWNlZGVuY2VfaGV1cmlzdGljCadjZWxsX2lk2SRkY2U2MTZkNy1mZGZlLTQ4NTQtOTE5ZC00MjA2MDNlYmM4NzW0ZG93bnN0cmVhbV9jZWxsc19tYXCAsnVwc3RyZWFtX2NlbGxzX21hcImocnVzdGNvZGWR2SRiZjIzMmQ5OS0zMDAxLTRhYWMtYWZiNy0xMzIxYzc0MDc2NjajcnVukKdjbWRfZ2VukKV3cml0ZZCkb3BlbpCoam9pbnBhdGiQpEBjbWSQqW1rdGVtcGRpcpCnbm90aGluZ5DZJDlhYTQwZjhjLWE5NTUtNDdhMy04ZTZkLTRhYzU0ZDFkYzMzMIS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDlhYTQwZjhjLWE5NTUtNDdhMy04ZTZkLTRhYzU0ZDFkYzMzMLRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgqdAbWRfc3RykKhnZXRpbmRleJDZJGJmMjMyZDk5LTMwMDEtNGFhYy1hZmI3LTEzMjFjNzQwNzY2NoS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJGJmMjMyZDk5LTMwMDEtNGFhYy1hZmI3LTEzMjFjNzQwNzY2NrRkb3duc3RyZWFtX2NlbGxzX21hcIKoaW5pdENvZGWQqHJ1c3Rjb2RlkdkkZGNlNjE2ZDctZmRmZS00ODU0LTkxOWQtNDIwNjAzZWJjODc1snVwc3RyZWFtX2NlbGxzX21hcIikQ29yZZCkQmFzZZC3UGx1dG9SdW5uZXIuY3JlYXRlX2JvbmSQq1BsdXRvUnVubmVykK9Db3JlLmFwcGxpY2FibGWQpUBiaW5kkKxNb25hY29FZGl0b3KR2SQwN2ViZGJiZS00OWJiLTRkMTgtOWYyYi0xNGY5OGQxMzc1NDioQmFzZS5nZXSQ2SQwN2ViZGJiZS00OWJiLTRkMTgtOWYyYi0xNGY5OGQxMzc1NDiEtHByZWNlZGVuY2VfaGV1cmlzdGljAadjZWxsX2lk2SQwN2ViZGJiZS00OWJiLTRkMTgtOWYyYi0xNGY5OGQxMzc1NDi0ZG93bnN0cmVhbV9jZWxsc19tYXCCo1BrZ5HZJDA3ZWJkYmJlLTQ5YmItNGQxOC05ZjJiLTE0Zjk4ZDEzNzU0OKxNb25hY29FZGl0b3KR2SRiZjIzMmQ5OS0zMDAxLTRhYWMtYWZiNy0xMzIxYzc0MDc2NjaydXBzdHJlYW1fY2VsbHNfbWFwhaNQa2eR2SQwN2ViZGJiZS00OWJiLTRkMTgtOWYyYi0xNGY5OGQxMzc1NDirUGtnLmRldmVsb3CQp2Rpcm5hbWWQrFBrZy5hY3RpdmF0ZZCoQF9fRElSX1+QtGNlbGxfZXhlY3V0aW9uX29yZGVylNkkMDdlYmRiYmUtNDliYi00ZDE4LTlmMmItMTRmOThkMTM3NTQ42SQ5YWE0MGY4Yy1hOTU1LTQ3YTMtOGU2ZC00YWM1NGQxZGMzMzDZJGJmMjMyZDk5LTMwMDEtNGFhYy1hZmI3LTEzMjFjNzQwNzY2NtkkZGNlNjE2ZDctZmRmZS00ODU0LTkxOWQtNDIwNjAzZWJjODc1tGxhc3RfaG90X3JlbG9hZF90aW1lywAAAAAAAAAAqXNob3J0cGF0aK5ydXN0X3NjcmlwdC5qbK5wcm9jZXNzX3N0YXR1c6VyZWFkeaRwYXRo2VUvVXNlcnMvdGVyYXNha2lzYXRvc2hpL3dvcmsvYXRlbGllcmFyaXRoL1BsdXRvTW9uYWNvRWRpdG9yLmpsL2V4YW1wbGVzL3J1c3Rfc2NyaXB0LmpsrXBsdXRvX3ZlcnNpb26odjAuMTkuNDaubGFzdF9zYXZlX3RpbWXLQdnAD0l6tzGqY2VsbF9vcmRlcpTZJDlhYTQwZjhjLWE5NTUtNDdhMy04ZTZkLTRhYzU0ZDFkYzMzMNkkMDdlYmRiYmUtNDliYi00ZDE4LTlmMmItMTRmOThkMTM3NTQ42SRiZjIzMmQ5OS0zMDAxLTRhYWMtYWZiNy0xMzIxYzc0MDc2NjbZJGRjZTYxNmQ3LWZkZmUtNDg1NC05MTlkLTQyMDYwM2ViYzg3NbFwdWJsaXNoZWRfb2JqZWN0c4ClbmJwa2eKr2luc3RhbGxfdGltZV9uc8CsaW5zdGFudGlhdGVkw7JpbnN0YWxsZWRfdmVyc2lvbnOAsHRlcm1pbmFsX291dHB1dHOAp2VuYWJsZWTCt3Jlc3RhcnRfcmVjb21tZW5kZWRfbXNnwLRyZXN0YXJ0X3JlcXVpcmVkX21zZ8CtYnVzeV9wYWNrYWdlc5C2d2FpdGluZ19mb3JfcGVybWlzc2lvbsLZLHdhaXRpbmdfZm9yX3Blcm1pc3Npb25fYnV0X3Byb2JhYmx5X2Rpc2FibGVkwqtjZWxsX2lucHV0c4TZJGRjZTYxNmQ3LWZkZmUtNDg1NC05MTlkLTQyMDYwM2ViYzg3NYSnY2VsbF9pZNkkZGNlNjE2ZDctZmRmZS00ODU0LTkxOWQtNDIwNjAzZWJjODc1pGNvZGXZ1m1rdGVtcGRpcigpIGRvIGQKCXNvdXJjZXBhdGggPSBqb2lucGF0aChkLCAibWFpbi5ycyIpCglvcGVuKHNvdXJjZXBhdGgsICJ3IikgZG8gaW8KCQl3cml0ZShpbywgcnVzdGNvZGUpCgllbmQJCglleGVjdXRhYmxlcGF0aCA9IGpvaW5wYXRoKGQsICJtYWluIikKCXRyeQoJCXJ1bihgcnVzdC1zY3JpcHQgJChzb3VyY2VwYXRoKWApCgljYXRjaCAKCWVuZAoJbm90aGluZwplbmSobWV0YWRhdGGDqXNob3dfbG9nc8OoZGlzYWJsZWTCrnNraXBfYXNfc2NyaXB0wqtjb2RlX2ZvbGRlZMPZJDlhYTQwZjhjLWE5NTUtNDdhMy04ZTZkLTRhYzU0ZDFkYzMzMISnY2VsbF9pZNkkOWFhNDBmOGMtYTk1NS00N2EzLThlNmQtNGFjNTRkMWRjMzMwpGNvZGXaAaBtZCIiIgojIFJ1c3QgRWRpdG9yIG9uIFBsdXRvIE5vdGVib29rCgpUbyBydW4gdGhpcyBub3RlYm9vaywgeW91IG5lZWQgdG8gaW5zdGFsbCB0aGUgUnVzdCBjb21waWxlciBmcm9tIFtoZXJlXShodHRwczovL3d3dy5ydXN0LWxhbmcub3JnL3Rvb2xzL2luc3RhbGwpLiBUaGlzIHdpbGwgaW5zdGFsbCBib3RoIGBydXN0Y2AgKHRoZSBSdXN0IGNvbXBpbGVyKSBhbmQgYGNhcmdvYCAodGhlIFJ1c3QgcGFja2FnZSBtYW5hZ2VyKS4KClRoZW4sIGluc3RhbGwgdGhlIGBydXN0LXNjcmlwdGAgcGFja2FnZSB3aXRoOgoKYGBgc2gKJCBjYXJnbyBpbnN0YWxsIHJ1c3Qtc2NyaXB0CmBgYAoKU2VlIFtydXN0LXNjcmlwdF0oaHR0cHM6Ly9naXRodWIuY29tL2Zvcm53YWxsL3J1c3Qtc2NyaXB0KSBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KCiIiIqhtZXRhZGF0YYOpc2hvd19sb2dzw6hkaXNhYmxlZMKuc2tpcF9hc19zY3JpcHTCq2NvZGVfZm9sZGVkw9kkYmYyMzJkOTktMzAwMS00YWFjLWFmYjctMTMyMWM3NDA3NjY2hKdjZWxsX2lk2SRiZjIzMmQ5OS0zMDAxLTRhYWMtYWZiNy0xMzIxYzc0MDc2NjakY29kZdoCbWJlZ2luCglpbml0Q29kZSA9ICIiIgovLyEgRGVwZW5kZW5jaWVzIGNhbiBiZSBzcGVjaWZpZWQgaW4gdGhlIHNjcmlwdCBmaWxlIGl0c2VsZiBhcyBmb2xsb3dzOgovLyEKLy8hIGBgYGNhcmdvCi8vISBuYW1lID0gIm1haW4iCi8vISB2ZXJzaW9uID0gIjAuMS4wIgovLyEgZWRpdGlvbiA9ICIyMDIxIgovLyEgCi8vISBbZGVwZW5kZW5jaWVzXQovLyEgbmRhcnJheSA9ICIwLjE2LjEiCi8vIQlgYGAKLy8hIApleHRlcm4gY3JhdGUgbmRhcnJheTsKdXNlIG5kYXJyYXk6OmFycjI7CmZuIG1haW4oKSB7CiAgICBsZXQgYSA9IGFycjIoJltbMSwgMiwgM10sCiAgICAgICAgICAgICAgICAgICBbNCwgNSwgNl1dKTsKICAgIGxldCBiID0gYXJyMigmW1s2LCA1LCA0XSwKICAgICAgICAgICAgICAgICAgIFszLCAyLCAxXV0pOwogICAgbGV0IHN1bSA9ICZhICsgJmI7CiAgICBwcmludGxuISgie30iLCBhKTsKICAgIHByaW50bG4hKCIrIik7CiAgICBwcmludGxuISgie30iLCBiKTsKICAgIHByaW50bG4hKCI9Iik7CiAgICBwcmludGxuISgie30iLCBzdW0pOwp9CgkiIiIKCUBiaW5kIHJ1c3Rjb2RlIE1vbmFjb0VkaXRvcigicnVzdCIsIGluaXRDb2RlLCB3aWR0aD03MDAsIGhlaWdodD01MDApCmVuZKhtZXRhZGF0YYOpc2hvd19sb2dzw6hkaXNhYmxlZMKuc2tpcF9hc19zY3JpcHTCq2NvZGVfZm9sZGVkw9kkMDdlYmRiYmUtNDliYi00ZDE4LTlmMmItMTRmOThkMTM3NTQ4hKdjZWxsX2lk2SQwN2ViZGJiZS00OWJiLTRkMTgtOWYyYi0xNGY5OGQxMzc1NDikY29kZdl5YmVnaW4KCXVzaW5nIFBrZwoJUGtnLmFjdGl2YXRlKHRlbXA9dHJ1ZSkKCVBrZy5kZXZlbG9wKHBhdGg9ZGlybmFtZShAX19ESVJfXykpCgl1c2luZyBQbHV0b01vbmFjb0VkaXRvcjogTW9uYWNvRWRpdG9yCmVuZKhtZXRhZGF0YYOpc2hvd19sb2dzw6hkaXNhYmxlZMKuc2tpcF9hc19zY3JpcHTCq2NvZGVfZm9sZGVkwqtub3RlYm9va19pZNkkZWY5N2JlODYtODI4My0xMWVmLTE1NWItYzMxMTQ1NGU4NzZiq2luX3RlbXBfZGlywqhtZXRhZGF0YYA=";
window.pluto_preamble_html = undefined;
</script>
<meta name="pluto-insertion-spot-parameters">
<script src="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.c1afbccf.js" type="module" defer="" integrity="sha384-XIOcriU0JO8TxoT9lqiatkgRqchSIByRjJRvQAwJ64OGriaQ9TL6ewp0bFxF1R7L" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/gh/fonsp/[email protected]/frontend-dist/editor.8a3292da.js" integrity="sha384-itp4oE2PRbSrrTHVpWh8sqAuVUsz7ja6L2Dgp/JRfMCD2AwVdTk56K96POF3oLmu" crossorigin="anonymous"></script><script type="text/javascript" id="MathJax-script" integrity="sha384-4kE/rQ11E8xT9QgrCBTyvenkuPfQo8rXYQvJZuMgxyPOoUfpatjQPlgdv6V5yhUK" crossorigin="" not-the-src-yet="https://cdn.jsdelivr.net/npm/[email protected]/es5/tex-svg-full.js" async=""></script>
<meta name="pluto-insertion-spot-preload">
</head><body class="loading no-MαθJax"> <div style="display:flex;min-height:100vh;"> <pluto-editor class="fullscreen"> <progress style="filter:grayscale(1)" class="delete-me-when-live statefile-fetch-progress" max="100"></progress> </pluto-editor> </div> </body></html>
@terasakisatoshi
Copy link
Author

terasakisatoshi commented Oct 4, 2024

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment