73 lines
No EOL
37 KiB
HTML
73 lines
No EOL
37 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Fading Currents of Obscure Light — exploration</title>
|
|
<style>
|
|
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
body { background: #0a0a0f; color: #3a3a4a; font-family: ui-monospace, monospace; overflow: hidden; }
|
|
#grid { padding: 20px; font-size: 12px; line-height: 1.4; white-space: pre; }
|
|
.c { display: inline-block; transition: all 0.3s; }
|
|
.c.active { color: #fde68a; text-shadow: 0 0 6px rgba(253,230,138,0.5); }
|
|
.c.strong { color: #34d399; text-shadow: 0 0 10px rgba(52,211,153,0.6); font-weight: bold; }
|
|
.c.dead { color: #1a1a2a; }
|
|
#info { position: fixed; bottom: 10px; left: 20px; color: #3a3a4a; font-size: 11px; }
|
|
#controls { position: fixed; top: 10px; right: 20px; color: #666; font-size: 11px; }
|
|
#controls span { cursor: pointer; margin-left: 12px; color: #fde68a; }
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div id="grid"></div>
|
|
<div id="info">neurameba · physarum exploration</div>
|
|
<div id="controls"><span id="play-btn">play</span><span id="reset-btn">reset</span></div>
|
|
<script>
|
|
const text = "# Plugin Development\n\nmotd is API-first. Every feature is an API endpoint. That means you can build anything on top of it — custom clients, bots, bridges, tools.\n\nPlugins run on your machine, not on the server. There's no plugin registry, no sandboxing, no approval process. You call the API. That's it.\n\n## Authentication\n\n1. Register or log in via the API\n2. Store the returned token\n3. Send it with every request as `Authorization: Bearer <token>`\n\n```bash\n# Get a token\nTOKEN=$(curl -s -X POST http://localhost:3006/api/auth/login \\\n -H \"Content-Type: application/json\" \\\n -d '{\"username\":\"alice\",\"password\":\"hunter2pwd\"}' | jq -r '.data.token')\n\necho $TOKEN\n```\n\nTokens expire after 7 days. Re-authenticate when needed.\n\n## Example: Fetch Your Feed\n\n```bash\n#!/bin/bash\nTOKEN=\"your-token-here\"\n\ncurl -s http://localhost:3006/api/posts/feed \\\n -H \"Authorization: Bearer $TOKEN\" | jq '.data.posts[] | {user: .username, text: .content, id: .id}'\n```\n\nOutput:\n```json\n{ \"user\": \"alice\", \"text\": \"just shipped the wasm compiler [rust] [wasm]\", \"id\": \"a3kf9x\" }\n{ \"user\": \"bob\", \"text\": \"working on a new side project [coding]\", \"id\": \"c9xk4m\" }\n```\n\n## Example: Post From the Command Line\n\n```bash\n#!/bin/bash\nTOKEN=\"your-token-here\"\n\ncurl -s -X POST http://localhost:3006/api/posts \\\n -H \"Authorization: Bearer $TOKEN\" \\\n -H \"Content-Type: application/json\" \\\n -d \"{\\\"content\\\":\\\"$1\\\"}\" | jq '.data.id'\n```\n\nUsage:\n```bash\n./motd-post.sh \"automated post from my build pipeline [ci]\"\n```\n\n## Example: Upload and Post an Image\n\n```bash\n#!/bin/bash\nTOKEN=\"your-token-here\"\nIMAGE=\"$1\"\nCAPTION=\"$2\"\n\n# Upload the image\nMEDIA_ID=$(curl -s -X POST http://localhost:3006/api/media/upload \\\n -H \"Authorization: Bearer $TOKEN\" \\\n -F \"file=@$IMAGE\" | jq -r '.data.media_id')\n\n# Post with attachment\ncurl -s -X POST http://localhost:3006/api/posts \\\n -H \"Authorization: Bearer $TOKEN\" \\\n -H \"Content-Type: application/json\" \\\n -d \"{\\\"content\\\":\\\"$CAPTION /attach $MEDIA_ID\\\"}\" | jq '.'\n```\n\nUsage:\n```bash\n./motd-upload.sh screenshot.png \"new feature landed [showcase]\"\n```\n\n## Example: GitHub Bridge (Concept)\n\nSync your GitHub activity to motd. Watch for push events, post summaries.\n\n```bash\n#!/bin/bash\nTOKEN=\"your-token-here\"\n\n# Poll GitHub events (simplified)\nLATEST=$(curl -s https://api.github.com/users/alice/events?per_page=1 | jq -r '.[0]')\nTYPE=$(echo $LATEST | jq -r '.type')\nREPO=$(echo $LATEST | jq -r '.repo.name')\n\nif [ \"$TYPE\" = \"PushEvent\" ]; then\n curl -s -X POST http://localhost:3006/api/posts \\\n -H \"Authorization: Bearer $TOKEN\" \\\n -H \"Content-Type: application/json\" \\\n -d \"{\\\"content\\\":\\\"pushed to $REPO [coding] [github]\\\"}\"\nfi\n```\n\n## Example: Bookmark Monitor\n\nWatch your bookmarked tags for new posts.\n\n```bash\n#!/bin/bash\nTOKEN=\"your-token-here\"\n\n# Get bookmarked tags\nTAGS=$(curl -s \"http://localhost:3006/api/bookmarks?type=tag\" \\\n -H \"Authorization: Bearer $TOKEN\" | jq -r '.data.bookmarks[].id')\n\nfor TAG in $TAGS; do\n echo \"--- [$TAG] ---\"\n curl -s \"http://localhost:3006/api/posts/search?q=$TAG\" \\\n -H \"Authorization: Bearer $TOKEN\" | jq '.data.posts[:3][] | \"\\(.username): \\(.content)\"'\ndone\n```\n\n## Media Converters\n\nmotd accepts PNG, MP3, and MP4 only. Build converter plugins for other formats:\n\n```bash\n# JPG to PNG before upload\nconvert photo.jpg photo.png && ./motd-upload.sh photo.png \"converted from jpg\"\n\n# WAV to MP3 before upload\nffmpeg -i recording.wav -q:a 2 recording.mp3\n```\n\n## Ideas\n\nBuilding something? Post about it with the [ideas] tag. Found a bug? Use [bugs]. The community is on motd itself.\n\nSee `/read api` for the complete endpoint reference.\n";
|
|
const passes = [{"t":0,"r":99,"c":0,"a":"extend","s":0.32695870322846005,"ps":9,"e":70.88596873807937,"pr":1.1},{"t":0,"r":124,"c":0,"a":"died","s":0,"ps":8,"e":100,"pr":1},{"t":0,"r":64,"c":12,"a":"extend","s":0.48929364172381457,"ps":9,"e":71.79504439365336,"pr":1.1},{"t":0,"r":65,"c":10,"a":"extend","s":0.3621490656336644,"ps":9,"e":71.08303476754853,"pr":1.1},{"t":0,"r":101,"c":0,"a":"died","s":0,"ps":8,"e":100,"pr":1},{"t":1,"r":99,"c":0,"a":"extend","s":0.3393516920947804,"ps":8,"e":50.680547592386326,"pr":1.05},{"t":1,"r":64,"c":12,"a":"extend","s":0.47285995292332644,"ps":8,"e":52.064546811927976,"pr":1.05},{"t":1,"r":65,"c":10,"a":"extend","s":0.4117822705965724,"ps":9,"e":51.11910505262477,"pr":1.1},{"t":1,"r":64,"c":11,"a":"extend","s":0.37954324229985253,"ps":5,"e":23.138955474975177,"pr":1.2000000000000002},{"t":1,"r":65,"c":9,"a":"hold","s":0.23422896517890843,"ps":5,"e":31.58798947895206,"pr":1.2000000000000002},{"t":1,"r":66,"c":10,"a":"hold","s":0.1685566599910497,"ps":5,"e":31.06261103744919,"pr":1.2000000000000002},{"t":2,"r":99,"c":0,"a":"hold","s":0.32695870322846005,"ps":7,"e":52.24621721821401,"pr":1},{"t":2,"r":64,"c":12,"a":"extend","s":0.48929364172381457,"ps":7,"e":38.450227162002946,"pr":1},{"t":2,"r":65,"c":10,"a":"extend","s":0.4117822705965724,"ps":8,"e":37.24935425217814,"pr":1.05},{"t":2,"r":64,"c":11,"a":"extend","s":0.43335289629606755,"ps":5,"e":18.099045051740603,"pr":1.2000000000000002},{"t":2,"r":65,"c":9,"a":"hold","s":0.3046767728810015,"ps":5,"e":33.27540366200007,"pr":1.2000000000000002},{"t":2,"r":66,"c":10,"a":"hold","s":0.13567509956320672,"ps":4,"e":31.548011833954845,"pr":1.1500000000000001},{"t":2,"r":98,"c":0,"a":"hold","s":0.13157555874890864,"ps":5,"e":22.02283915244255,"pr":1.1500000000000001},{"t":2,"r":65,"c":12,"a":"hold","s":0.1876605593380005,"ps":5,"e":23.064661679815995,"pr":1.1500000000000001},{"t":2,"r":64,"c":10,"a":"hold","s":0.22491956805904456,"ps":5,"e":22.957544424168688,"pr":1.2000000000000002},{"t":3,"r":99,"c":0,"a":"extend","s":0.3842163772834482,"ps":7,"e":37.98896376553711,"pr":1},{"t":3,"r":64,"c":12,"a":"extend","s":0.49359019077407207,"ps":7,"e":28.94426408173686,"pr":1},{"t":3,"r":65,"c":10,"a":"hold","s":0.3621490656336644,"ps":8,"e":38.94654677724745,"pr":1.05},{"t":3,"r":64,"c":11,"a":"extend","s":0.43335289629606755,"ps":4,"e":30.74638885239448,"pr":1.1500000000000001},{"t":3,"r":65,"c":9,"a":"retracted","s":0.3046767728810015,"ps":4,"e":35.112817845048085,"pr":1.1500000000000001},{"t":3,"r":66,"c":10,"a":"retracted","s":0.1685566599910497,"ps":4,"e":32.296465113883244,"pr":1.1},{"t":3,"r":98,"c":0,"a":"hold","s":0.1238103206441832,"ps":5,"e":22.263321717596018,"pr":1.1500000000000001},{"t":3,"r":65,"c":12,"a":"hold","s":0.1887684441347537,"ps":4,"e":23.974809232894025,"pr":1.1},{"t":3,"r":64,"c":13,"a":"hold","s":0.24336969778385986,"ps":5,"e":17.675626365986428,"pr":1.1},{"t":4,"r":99,"c":0,"a":"hold","s":0.3842163772834482,"ps":6,"e":40.162694783804696,"pr":0.95},{"t":4,"r":64,"c":12,"a":"extend","s":0.49359019077407207,"ps":6,"e":22.395089925550604,"pr":0.95},{"t":4,"r":65,"c":10,"a":"hold","s":0.3621490656336644,"ps":7,"e":40.793739302316766,"pr":1},{"t":4,"r":64,"c":11,"a":"hold","s":0.37954324229985253,"ps":4,"e":33.182734790793305,"pr":1.1500000000000001},{"t":4,"r":98,"c":0,"a":"retracted","s":0.1238103206441832,"ps":4,"e":22.653804282749483,"pr":1.1},{"t":4,"r":65,"c":12,"a":"retracted","s":0.1876605593380005,"ps":4,"e":24.876093707598027,"pr":1.05},{"t":4,"r":64,"c":13,"a":"hold","s":0.3014428659972955,"ps":5,"e":19.33716929396479,"pr":1.1},{"t":4,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":5,"e":13.546131954818263,"pr":1.1},{"t":4,"r":99,"c":1,"a":"hold","s":0.2864801951633048,"ps":5,"e":17.822826032250912,"pr":1.1},{"t":4,"r":65,"c":11,"a":"hold","s":0.25004482022167274,"ps":5,"e":14.42738235565673,"pr":1.2500000000000002},{"t":5,"r":99,"c":0,"a":"hold","s":0.38740145353253613,"ps":6,"e":42.36190641206498,"pr":0.95},{"t":5,"r":64,"c":12,"a":"hold","s":0.2563798045349805,"ps":7,"e":23.39612836183045,"pr":1.05},{"t":5,"r":65,"c":10,"a":"retracted","s":0.3491402493997718,"ps":6,"e":57.11424365317167,"pr":0.95},{"t":5,"r":64,"c":11,"a":"hold","s":0.37954324229985253,"ps":4,"e":35.61908072919213,"pr":1.1},{"t":5,"r":64,"c":13,"a":"retracted","s":0.3014428659972955,"ps":4,"e":21.148712221943157,"pr":1.05},{"t":5,"r":100,"c":0,"a":"extend","s":0.44580318692721366,"ps":4,"e":11.558790215165178,"pr":1.05},{"t":5,"r":99,"c":1,"a":"hold","s":0.3597260466847821,"ps":5,"e":19.95063440572917,"pr":1.1},{"t":6,"r":99,"c":0,"a":"retracted","s":0.38740145353253613,"ps":5,"e":44.711118040325275,"pr":0.8999999999999999},{"t":6,"r":64,"c":12,"a":"hold","s":0.27429313826417984,"ps":7,"e":24.540473467943887,"pr":1.05},{"t":6,"r":64,"c":11,"a":"retracted","s":0.37954324229985253,"ps":4,"e":38.05542666759095,"pr":1.05},{"t":6,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":10.345595975772754,"pr":1},{"t":6,"r":99,"c":1,"a":"retracted","s":0.3597260466847821,"ps":4,"e":22.228442779207427,"pr":1.05},{"t":7,"r":64,"c":12,"a":"retracted","s":0.27429313826417984,"ps":6,"e":25.834818574057326,"pr":1},{"t":7,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":9.496360008198057,"pr":0.95},{"t":7,"r":100,"c":1,"a":"hold","s":0.27821653597618684,"ps":5,"e":5.909559134569246,"pr":1.1},{"t":8,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":8.901894830895769,"pr":0.8999999999999999},{"t":8,"r":100,"c":1,"a":"hold","s":0.24043872369051847,"ps":4,"e":7.233068924093394,"pr":1.05},{"t":9,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":8.485769206784168,"pr":0.8499999999999999},{"t":9,"r":100,"c":1,"a":"retracted","s":0.27821653597618684,"ps":4,"e":8.85880121190289,"pr":1},{"t":10,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":8.194481269906047,"pr":0.7999999999999998},{"t":10,"r":99,"c":0,"a":"hold","s":0.14774209187365225,"ps":5,"e":4.068694966468147,"pr":0.9499999999999998},{"t":15,"r":99,"c":0,"a":"hold","s":0.19897096555463167,"ps":5,"e":4.132338565448817,"pr":0.6999999999999996},{"t":16,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.59477213099057,"pr":0.4999999999999996},{"t":16,"r":99,"c":0,"a":"hold","s":0.191367549769452,"ps":4,"e":5.063278963604433,"pr":0.6499999999999996},{"t":17,"r":100,"c":2,"a":"extend","s":0.42167488062011416,"ps":5,"e":3.549414281671128,"pr":0.8499999999999996},{"t":18,"r":99,"c":0,"a":"extend","s":0.29432185320779697,"ps":4,"e":3.379750328057736,"pr":0.9499999999999996},{"t":19,"r":99,"c":0,"a":"extend","s":0.29432185320779697,"ps":4,"e":3.594027607604078,"pr":0.8999999999999996},{"t":19,"r":98,"c":0,"a":"hold","s":0.21771843521467293,"ps":5,"e":2.440211908027842,"pr":1.0499999999999996},{"t":19,"r":98,"c":2,"a":"extend","s":0.271837071059882,"ps":5,"e":1.7739779554549056,"pr":0.9499999999999995},{"t":20,"r":97,"c":1,"a":"hold","s":0.23548137346874085,"ps":4,"e":4.057292711294442,"pr":0.8999999999999995},{"t":20,"r":98,"c":2,"a":"extend","s":0.31631345560211516,"ps":4,"e":2.5931399201902785,"pr":0.8999999999999995},{"t":21,"r":98,"c":0,"a":"retracted","s":0.25429023664540384,"ps":4,"e":5.158855694354303,"pr":0.9999999999999996},{"t":21,"r":98,"c":2,"a":"hold","s":0.271837071059882,"ps":4,"e":4.167836488669334,"pr":0.8499999999999994},{"t":22,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.524216950506302,"pr":0.3},{"t":22,"r":99,"c":1,"a":"extend","s":0.339183430450253,"ps":4,"e":4.7934789486841005,"pr":0.4999999999999994},{"t":22,"r":98,"c":2,"a":"hold","s":0.271837071059882,"ps":4,"e":5.742533057148389,"pr":0.7999999999999994},{"t":23,"r":99,"c":0,"a":"retracted","s":0.29432185320779697,"ps":4,"e":9.007746180273644,"pr":0.6999999999999994},{"t":26,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.517068165939571,"pr":0.3},{"t":29,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.515584168011385,"pr":0.3},{"t":30,"r":99,"c":0,"a":"extend","s":0.3775313502989247,"ps":5,"e":3.843850812077393,"pr":0.4},{"t":31,"r":99,"c":1,"a":"extend","s":0.39186293756676743,"ps":5,"e":2.8225876939971157,"pr":0.5},{"t":32,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.515075156722017,"pr":0.3},{"t":32,"r":99,"c":1,"a":"extend","s":0.3808125098408512,"ps":4,"e":3.688361440906747,"pr":0.45},{"t":33,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.5149954348625405,"pr":0.3},{"t":36,"r":99,"c":0,"a":"extend","s":0.3775313502989247,"ps":4,"e":5.437786906891093,"pr":0.3},{"t":36,"r":98,"c":0,"a":"extend","s":0.269434551677507,"ps":5,"e":2.5882383516299456,"pr":0.4},{"t":37,"r":100,"c":2,"a":"extend","s":0.48390883222761083,"ps":4,"e":4.826016037196876,"pr":0.4000000000000001},{"t":38,"r":99,"c":0,"a":"extend","s":0.3775313502989247,"ps":4,"e":5.544614039222398,"pr":0.3},{"t":38,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":6.88559375594104,"pr":0.3},{"t":39,"r":99,"c":1,"a":"extend","s":0.39186293756676743,"ps":4,"e":5.7314201180331,"pr":0.3},{"t":39,"r":98,"c":1,"a":"extend","s":0.30721202202005304,"ps":5,"e":2.891239180880527,"pr":0.4},{"t":40,"r":99,"c":0,"a":"extend","s":0.3775313502989247,"ps":4,"e":5.596959334064737,"pr":0.3},{"t":41,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.442394018958151,"pr":0.3},{"t":42,"r":97,"c":1,"a":"hold","s":0.20324322457453026,"ps":5,"e":2.4502849674173817,"pr":0.45000000000000007},{"t":43,"r":98,"c":1,"a":"hold","s":0.30721202202005304,"ps":4,"e":5.729504145147249,"pr":0.30000000000000004},{"t":44,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514813095367607,"pr":0.3},{"t":44,"r":99,"c":0,"a":"extend","s":0.3775313502989247,"ps":4,"e":5.63517663382913,"pr":0.3},{"t":44,"r":97,"c":1,"a":"retracted","s":0.20324322457453026,"ps":4,"e":4.592081181145511,"pr":0.3500000000000001},{"t":45,"r":99,"c":1,"a":"extend","s":0.39186293756676743,"ps":4,"e":5.893203335532672,"pr":0.3},{"t":45,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.66328837864503,"pr":0.3},{"t":45,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.029713526827744,"pr":0.3},{"t":45,"r":98,"c":0,"a":"hold","s":0.16740874606411255,"ps":5,"e":3.0043456687253847,"pr":0.4},{"t":46,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.684226687275436,"pr":0.3},{"t":47,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514810678805202,"pr":0.3},{"t":48,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.709143274545619,"pr":0.3},{"t":49,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.716325114405849,"pr":0.3},{"t":50,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.721352402308009,"pr":0.3},{"t":51,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809720104136,"pr":0.3},{"t":51,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.148663548983208,"pr":0.3},{"t":52,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.72733487491158,"pr":0.3},{"t":55,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.160715790601199,"pr":0.3},{"t":56,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809468101136,"pr":0.3},{"t":58,"r":98,"c":0,"a":"extend","s":0.20193701321848606,"ps":4,"e":2.8298394571007215,"pr":0.35000000000000003},{"t":59,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.732609379279064,"pr":0.3},{"t":59,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":5.990012559515139,"pr":0.3},{"t":59,"r":98,"c":0,"a":"hold","s":0.20193701321848606,"ps":4,"e":3.84533556284861,"pr":0.30000000000000004},{"t":60,"r":98,"c":0,"a":"hold","s":0.20193701321848606,"ps":4,"e":4.860831668596498,"pr":0.3},{"t":60,"r":99,"c":1,"a":"extend","s":0.3856668714219545,"ps":5,"e":3.431738247817487,"pr":0.4},{"t":61,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809425746992,"pr":0.3},{"t":61,"r":98,"c":0,"a":"retracted","s":0.20193701321848606,"ps":4,"e":5.876327774344387,"pr":0.3},{"t":62,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164210238575716,"pr":0.3},{"t":62,"r":99,"c":1,"a":"extend","s":0.3353648590871193,"ps":4,"e":4.086725199939944,"pr":0.35000000000000003},{"t":64,"r":98,"c":2,"a":"retracted","s":0.2054809074034333,"ps":4,"e":3.738459867595707,"pr":0.49999999999999994},{"t":65,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.51480941924486,"pr":0.3},{"t":65,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733027050243115,"pr":0.3},{"t":66,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809418628531,"pr":0.3},{"t":68,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417895099,"pr":0.3},{"t":68,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164486952623643,"pr":0.3},{"t":69,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417683698,"pr":0.3},{"t":69,"r":99,"c":1,"a":"retracted","s":0.3856668714219545,"ps":4,"e":12.843975072378626,"pr":0.3},{"t":70,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417535717,"pr":0.3},{"t":70,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733073380843499,"pr":0.3},{"t":70,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.1645057695307734,"pr":0.3},{"t":71,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164511193227534,"pr":0.3},{"t":72,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417359619,"pr":0.3},{"t":72,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.73307815439397,"pr":0.3},{"t":72,"r":98,"c":0,"a":"hold","s":0.19441203204595525,"ps":5,"e":3.783453027812904,"pr":0.4},{"t":74,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417273332,"pr":0.3},{"t":75,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164520809984262,"pr":0.3},{"t":76,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733081639563169,"pr":0.3},{"t":76,"r":99,"c":1,"a":"extend","s":0.2931527692112629,"ps":4,"e":4.606934073861965,"pr":0.30000000000000004},{"t":77,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733081969918134,"pr":0.3},{"t":77,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":6.164277816242896,"pr":0.3},{"t":78,"r":98,"c":0,"a":"extend","s":0.2266278511752516,"ps":4,"e":2.4168370953591416,"pr":0.5},{"t":79,"r":98,"c":1,"a":"extend","s":0.3341170296347105,"ps":4,"e":4.502411386344388,"pr":0.3},{"t":79,"r":97,"c":3,"a":"extend","s":0.38554054126377524,"ps":4,"e":3.36621333837807,"pr":0.7499999999999999},{"t":79,"r":97,"c":4,"a":"hold","s":0.12478892453433953,"ps":5,"e":1.2445479109487543,"pr":0.8999999999999999},{"t":80,"r":97,"c":2,"a":"extend","s":0.361682633251574,"ps":4,"e":4.380603174668734,"pr":0.6499999999999999},{"t":80,"r":97,"c":3,"a":"extend","s":0.3909440116889411,"ps":4,"e":4.125635802322719,"pr":0.6999999999999998},{"t":80,"r":97,"c":1,"a":"extend","s":0.2636665726260765,"ps":5,"e":2.6229541092589996,"pr":0.4},{"t":80,"r":97,"c":0,"a":"extend","s":0.22757622512468964,"ps":5,"e":1.4657502760781067,"pr":0.5},{"t":81,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417197258,"pr":0.3},{"t":81,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082555670522,"pr":0.3},{"t":81,"r":98,"c":1,"a":"extend","s":0.3341170296347105,"ps":4,"e":4.672975701431194,"pr":0.3},{"t":81,"r":96,"c":3,"a":"hold","s":0.21451371694501628,"ps":4,"e":2.7969894698209172,"pr":0.8499999999999999},{"t":82,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.51480941719521,"pr":0.3},{"t":82,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":6.077228063591453,"pr":0.3},{"t":82,"r":99,"c":1,"a":"extend","s":0.2931527692112629,"ps":4,"e":4.13509771609389,"pr":0.3},{"t":82,"r":97,"c":1,"a":"extend","s":0.28661084092754296,"ps":4,"e":3.2098411874253694,"pr":0.35000000000000003},{"t":83,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417193776,"pr":0.3},{"t":83,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.16452367335444,"pr":0.3},{"t":83,"r":99,"c":1,"a":"extend","s":0.2931527692112629,"ps":4,"e":4.116223908848794,"pr":0.3},{"t":83,"r":97,"c":1,"a":"extend","s":0.28661084092754296,"ps":4,"e":3.431909540391999,"pr":0.30000000000000004},{"t":83,"r":98,"c":3,"a":"hold","s":0.270214032876347,"ps":4,"e":4.550927012771841,"pr":0.44999999999999984},{"t":83,"r":96,"c":2,"a":"extend","s":0.33113309158681564,"ps":4,"e":4.235930141513196,"pr":0.6999999999999998},{"t":83,"r":97,"c":0,"a":"retracted","s":0.22757622512468964,"ps":4,"e":4.727074093221514,"pr":0.45},{"t":84,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.7330826772653625,"pr":0.3},{"t":85,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.51480941719207,"pr":0.3},{"t":85,"r":95,"c":2,"a":"hold","s":0.31835947354981997,"ps":4,"e":4.9992498611808145,"pr":0.7499999999999998},{"t":85,"r":96,"c":3,"a":"hold","s":0.2814732078312942,"ps":5,"e":3.847000422568772,"pr":0.5999999999999998},{"t":86,"r":95,"c":2,"a":"hold","s":0.31835947354981997,"ps":4,"e":6.946125649579374,"pr":0.6999999999999997},{"t":86,"r":94,"c":1,"a":"hold","s":0.30189569223638163,"ps":5,"e":2.640174386089558,"pr":0.9999999999999998},{"t":87,"r":97,"c":3,"a":"extend","s":0.3909440116889411,"ps":4,"e":5.751690905541214,"pr":0.34999999999999976},{"t":88,"r":97,"c":2,"a":"retracted","s":0.361682633251574,"ps":4,"e":12.068628991116011,"pr":0.3},{"t":89,"r":99,"c":0,"a":"hold","s":0.39962367354581974,"ps":4,"e":8.658700288387475,"pr":0.3},{"t":89,"r":97,"c":3,"a":"hold","s":0.3909440116889411,"ps":4,"e":10.806795092564272,"pr":0.3},{"t":91,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164523838422032,"pr":0.3},{"t":92,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190564,"pr":0.3},{"t":92,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":6.951118931282835,"pr":0.3},{"t":92,"r":99,"c":1,"a":"extend","s":0.5687678741813774,"ps":4,"e":7.720289149328253,"pr":0.35000000000000003},{"t":92,"r":98,"c":0,"a":"hold","s":0.14396741595497717,"ps":5,"e":3.544530976268131,"pr":0.4},{"t":93,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082738184695,"pr":0.3},{"t":93,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":6.683675823754574,"pr":0.3},{"t":95,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.16452384609546,"pr":0.3},{"t":96,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164523846822815,"pr":0.3},{"t":97,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740131322,"pr":0.3},{"t":100,"r":98,"c":2,"a":"extend","s":0.22742923453342856,"ps":4,"e":2.793068343192551,"pr":0.4000000000000001},{"t":100,"r":97,"c":0,"a":"extend","s":0.25095213779455605,"ps":4,"e":2.1429641712925194,"pr":0.5499999999999999},{"t":101,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190435,"pr":0.3},{"t":102,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164523848320307,"pr":0.3},{"t":102,"r":98,"c":1,"a":"extend","s":0.27057746539857813,"ps":4,"e":3.8685438477627527,"pr":0.3},{"t":102,"r":98,"c":2,"a":"extend","s":0.22742923453342856,"ps":4,"e":2.8197298009225893,"pr":0.3000000000000001},{"t":103,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":6.077269319813522,"pr":0.3},{"t":103,"r":98,"c":1,"a":"extend","s":0.27057746539857813,"ps":4,"e":3.803214499665964,"pr":0.3},{"t":103,"r":98,"c":0,"a":"hold","s":0.2439210931955038,"ps":5,"e":3.9673972084896816,"pr":0.5},{"t":104,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.16452384842214,"pr":0.3},{"t":104,"r":98,"c":1,"a":"hold","s":0.27057746539857813,"ps":4,"e":5.367834222854588,"pr":0.3},{"t":104,"r":97,"c":0,"a":"hold","s":0.24619870565334254,"ps":4,"e":5.419043412206637,"pr":0.35},{"t":104,"r":96,"c":1,"a":"hold","s":0.2231059708396073,"ps":4,"e":4.465350992943361,"pr":0.44999999999999996},{"t":104,"r":95,"c":2,"a":"hold","s":0.13112507469212578,"ps":5,"e":1.1881855069570082,"pr":0.7499999999999999},{"t":105,"r":98,"c":1,"a":"hold","s":0.27057746539857813,"ps":4,"e":6.932453946043213,"pr":0.3},{"t":106,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190431,"pr":0.3},{"t":106,"r":98,"c":3,"a":"retracted","s":0.27075236296426103,"ps":4,"e":6.9852015448127815,"pr":0.3},{"t":106,"r":95,"c":0,"a":"extend","s":0.38200042853926286,"ps":4,"e":3.3544619210417803,"pr":0.6999999999999998},{"t":107,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.73308274072901,"pr":0.3},{"t":107,"r":99,"c":1,"a":"extend","s":0.5687678741813774,"ps":4,"e":9.209894589716239,"pr":0.3},{"t":107,"r":95,"c":0,"a":"hold","s":0.3479620895087771,"ps":4,"e":5.538158637111997,"pr":0.6499999999999998},{"t":108,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.1645238484964855,"pr":0.3},{"t":109,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740737871,"pr":0.3},{"t":109,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164523848503533,"pr":0.3},{"t":109,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":6.061715753774188,"pr":0.3},{"t":110,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740740425,"pr":0.3},{"t":110,"r":98,"c":1,"a":"retracted","s":0.1927480348014722,"ps":4,"e":6.798793498843072,"pr":0.35000000000000003},{"t":111,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":7.878986171355113,"pr":0.3},{"t":111,"r":99,"c":1,"a":"extend","s":0.5687678741813774,"ps":4,"e":9.215294232678868,"pr":0.3},{"t":112,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164523848514337,"pr":0.3},{"t":113,"r":98,"c":1,"a":"hold","s":0.3503988343712462,"ps":5,"e":6.9929985783009725,"pr":0.4},{"t":114,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740744952,"pr":0.3},{"t":115,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190431,"pr":0.3},{"t":115,"r":98,"c":0,"a":"retracted","s":0.16406887236495793,"ps":4,"e":4.958838195972135,"pr":0.35000000000000003},{"t":116,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740745682,"pr":0.3},{"t":116,"r":99,"c":1,"a":"extend","s":0.5687678741813774,"ps":4,"e":9.21671357628365,"pr":0.3},{"t":116,"r":98,"c":1,"a":"hold","s":0.21754951116572172,"ps":4,"e":8.718124655941207,"pr":0.30000000000000004},{"t":117,"r":99,"c":1,"a":"extend","s":0.5687678741813774,"ps":4,"e":9.216799598814267,"pr":0.3},{"t":117,"r":97,"c":1,"a":"retracted","s":0.15931507524502053,"ps":4,"e":5.056272251233912,"pr":0.4000000000000001},{"t":118,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.73308274074604,"pr":0.3},{"t":120,"r":98,"c":1,"a":"hold","s":0.16094239802198954,"ps":4,"e":5.176648946407016,"pr":0.35000000000000003},{"t":121,"r":98,"c":1,"a":"retracted","s":0.1611283730689392,"ps":4,"e":5.865675930958529,"pr":0.30000000000000004},{"t":124,"r":99,"c":1,"a":"extend","s":0.5687678741813774,"ps":4,"e":9.216983787960023,"pr":0.3},{"t":125,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190431,"pr":0.3},{"t":126,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":6.068279354995274,"pr":0.3},{"t":127,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.16452384851995,"pr":0.3},{"t":127,"r":98,"c":1,"a":"retracted","s":0.2426616728268102,"ps":4,"e":7.787555413589414,"pr":0.30000000000000004},{"t":129,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190431,"pr":0.3},{"t":129,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740746378,"pr":0.3},{"t":130,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740746379,"pr":0.3},{"t":131,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190431,"pr":0.3},{"t":131,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740746381,"pr":0.3},{"t":133,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":7.333182893702899,"pr":0.3},{"t":133,"r":98,"c":0,"a":"hold","s":0.2419109127622997,"ps":5,"e":4.561995662412464,"pr":0.4},{"t":134,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":6.951120597448619,"pr":0.3},{"t":134,"r":99,"c":1,"a":"extend","s":0.5687678741813774,"ps":4,"e":9.216999851118182,"pr":0.3},{"t":135,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740746382,"pr":0.3},{"t":135,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":6.683676990070624,"pr":0.3},{"t":136,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":6.496466464906027,"pr":0.3},{"t":136,"r":99,"c":1,"a":"extend","s":0.5687678741813774,"ps":4,"e":9.21700008925462,"pr":0.3},{"t":137,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164523848519976,"pr":0.3},{"t":138,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190431,"pr":0.3},{"t":138,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":6.273685939960156,"pr":0.3},{"t":138,"r":99,"c":1,"a":"extend","s":0.5687678741813774,"ps":4,"e":9.217000205941476,"pr":0.3},{"t":139,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":6.2094727298287,"pr":0.3},{"t":140,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190431,"pr":0.3},{"t":140,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":6.16452348273668,"pr":0.3},{"t":140,"r":97,"c":1,"a":"extend","s":0.2933319030748033,"ps":4,"e":2.8704818875987197,"pr":0.45},{"t":141,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190431,"pr":0.3},{"t":142,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190431,"pr":0.3},{"t":142,"r":97,"c":0,"a":"retracted","s":0.1769321874782103,"ps":4,"e":2.8613258057810347,"pr":0.5499999999999999},{"t":143,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190431,"pr":0.3},{"t":143,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":6.0956162869446135,"pr":0.3},{"t":143,"r":98,"c":0,"a":"extend","s":0.2670170057272524,"ps":4,"e":3.0414739872632053,"pr":0.35000000000000003},{"t":144,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740746382,"pr":0.3},{"t":144,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164523848519976,"pr":0.3},{"t":145,"r":97,"c":1,"a":"extend","s":0.29171352638072956,"ps":4,"e":3.847864258884562,"pr":0.3},{"t":145,"r":98,"c":1,"a":"hold","s":0.21180365781539967,"ps":5,"e":2.317118211644046,"pr":0.4},{"t":146,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190431,"pr":0.3},{"t":146,"r":98,"c":0,"a":"hold","s":0.26676948039245313,"ps":4,"e":4.850123550234749,"pr":0.3},{"t":147,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164523848519976,"pr":0.3},{"t":148,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164523848519976,"pr":0.3},{"t":149,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190431,"pr":0.3},{"t":150,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740746382,"pr":0.3},{"t":151,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164523848519976,"pr":0.3},{"t":151,"r":98,"c":0,"a":"hold","s":0.18069251637344744,"ps":5,"e":3.731972699812925,"pr":0.4},{"t":153,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740746382,"pr":0.3},{"t":154,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740746382,"pr":0.3},{"t":154,"r":98,"c":1,"a":"hold","s":0.24398823645270992,"ps":4,"e":6.2721645992148645,"pr":0.35000000000000003},{"t":155,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164523848519976,"pr":0.3},{"t":156,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190431,"pr":0.3},{"t":156,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740746382,"pr":0.3},{"t":157,"r":99,"c":1,"a":"extend","s":0.5687678741813774,"ps":4,"e":9.217000317924581,"pr":0.3},{"t":157,"r":98,"c":0,"a":"retracted","s":0.15012015504973897,"ps":4,"e":5.027399567607239,"pr":0.30000000000000004},{"t":158,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740746382,"pr":0.3},{"t":158,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164523848519976,"pr":0.3},{"t":158,"r":99,"c":1,"a":"extend","s":0.5687678741813774,"ps":4,"e":9.217000317962919,"pr":0.3},{"t":160,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190431,"pr":0.3},{"t":162,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190431,"pr":0.3},{"t":162,"r":98,"c":1,"a":"hold","s":0.17303318068968462,"ps":5,"e":4.584408438955345,"pr":0.4},{"t":163,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164523848519976,"pr":0.3},{"t":164,"r":98,"c":2,"a":"hold","s":0.17001798817529162,"ps":5,"e":2.3084419775940432,"pr":0.5},{"t":165,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740746382,"pr":0.3},{"t":165,"r":97,"c":1,"a":"hold","s":0.14384554345834683,"ps":5,"e":1.9575485387060785,"pr":0.45000000000000007},{"t":166,"r":98,"c":2,"a":"retracted","s":0.17001798817529162,"ps":4,"e":4.048525495494538,"pr":0.4},{"t":168,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":6.068279355008154,"pr":0.3},{"t":169,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740746382,"pr":0.3},{"t":170,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164523848519976,"pr":0.3},{"t":170,"r":98,"c":0,"a":"retracted","s":0.2261007855683308,"ps":4,"e":5.96853393047366,"pr":0.30000000000000004},{"t":171,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":6.06260455113373,"pr":0.3},{"t":171,"r":99,"c":1,"a":"extend","s":0.5687678741813774,"ps":4,"e":9.21700031805151,"pr":0.3},{"t":171,"r":98,"c":1,"a":"hold","s":0.2603419746738633,"ps":4,"e":6.731258166964522,"pr":0.35000000000000003},{"t":172,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740746382,"pr":0.3},{"t":172,"r":99,"c":0,"a":"extend","s":0.39962367354581974,"ps":4,"e":6.061715757650202,"pr":0.3},{"t":174,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164523848519976,"pr":0.3},{"t":174,"r":98,"c":0,"a":"hold","s":0.2190388770091755,"ps":4,"e":4.749867199897336,"pr":0.35000000000000003},{"t":175,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164523848519976,"pr":0.3},{"t":175,"r":99,"c":1,"a":"extend","s":0.5687678741813774,"ps":4,"e":9.217000318052166,"pr":0.3},{"t":177,"r":100,"c":0,"a":"extend","s":0.477579075920916,"ps":4,"e":7.514809417190431,"pr":0.3},{"t":178,"r":99,"c":1,"a":"extend","s":0.5687678741813774,"ps":4,"e":9.217000318052303,"pr":0.3},{"t":179,"r":100,"c":2,"a":"extend","s":0.4588137775992846,"ps":4,"e":7.164523848519976,"pr":0.3},{"t":179,"r":99,"c":1,"a":"extend","s":0.5687678741813774,"ps":4,"e":9.217000318052325,"pr":0.3},{"t":179,"r":98,"c":0,"a":"retracted","s":0.21197771766686874,"ps":4,"e":5.875442286083693,"pr":0.35000000000000003},{"t":180,"r":100,"c":1,"a":"extend","s":0.4892722896828421,"ps":4,"e":7.733082740746382,"pr":0.3}];
|
|
const lines = text.split('\n');
|
|
const gridEl = document.getElementById('grid');
|
|
const charEls = [];
|
|
for (let r = 0; r < lines.length; r++) {
|
|
const row = [];
|
|
for (let c = 0; c < lines[r].length; c++) {
|
|
const s = document.createElement('span');
|
|
s.className = 'c';
|
|
s.textContent = lines[r][c];
|
|
row.push(s);
|
|
gridEl.appendChild(s);
|
|
}
|
|
charEls.push(row);
|
|
gridEl.appendChild(document.createTextNode('\n'));
|
|
}
|
|
let tick = -1, playing = false, iv;
|
|
function apply(t) {
|
|
for (const r of charEls) for (const e of r) e.className = 'c';
|
|
const active = new Map();
|
|
for (const p of passes) {
|
|
if (p.t > t) break;
|
|
const k = p.r+','+p.c;
|
|
if (p.a === 'died' || p.a === 'retracted') active.set(k, 'dead');
|
|
else if (p.ps > 16) active.set(k, 'strong');
|
|
else active.set(k, 'active');
|
|
}
|
|
for (const [k, cls] of active) {
|
|
const [r, c] = k.split(',').map(Number);
|
|
if (charEls[r]?.[c]) charEls[r][c].className = 'c ' + cls;
|
|
}
|
|
document.getElementById('info').textContent = 'tick ' + t + ' · ' + [...active.values()].filter(v=>v!=='dead').length + ' alive';
|
|
}
|
|
function play() {
|
|
if (playing) return;
|
|
playing = true;
|
|
document.getElementById('play-btn').textContent = 'pause';
|
|
const max = passes.length > 0 ? passes[passes.length-1].t : 0;
|
|
iv = setInterval(() => { tick++; if (tick > max) { pause(); return; } apply(tick); }, 900);
|
|
}
|
|
function pause() { playing = false; clearInterval(iv); document.getElementById('play-btn').textContent = 'play'; }
|
|
function reset() { pause(); tick = -1; for (const r of charEls) for (const e of r) e.className = 'c'; document.getElementById('info').textContent = 'neurameba'; }
|
|
document.getElementById('play-btn').addEventListener('click', () => playing ? pause() : play());
|
|
document.getElementById('reset-btn').addEventListener('click', reset);
|
|
setTimeout(play, 1000);
|
|
</script>
|
|
</body>
|
|
</html> |