Round 571-580: ECS engines, serialization, image processing, network security, numerical methods, optimization, concurrency, VMs, protocols, containers (200 commands)

ober

77b351d1d13c6a3c2a2ab3a05eb12c0e523a449a

diff --git a/docs/jemacs-vs-emacs.md b/docs/jemacs-vs-emacs.md
index 1d215ca..21f7676 100644
--- a/docs/jemacs-vs-emacs.md
+++ b/docs/jemacs-vs-emacs.md
@@ -4808,6 +4808,156 @@ No remaining Tier 1 gaps. All core editing, completion, and navigation features 
 | `cosmwasm-schema` | :orange_circle: Scaffolded | CosmWasm: schema |
 | `cosmwasm-optimize` | :orange_circle: Scaffolded | CosmWasm: optimize |
 
+### Round 571 — ECS Game Engines
+
+| Feature | Status | Notes |
+|---------|--------|-------|
+| `ecs-entity` | :orange_circle: Scaffold | Create entity |
+| `ecs-component` | :orange_circle: Scaffold | Add component |
+| `ecs-system` | :orange_circle: Scaffold | Register system |
+| `ecs-query` | :orange_circle: Scaffold | Query entities |
+| `ecs-archetype` | :orange_circle: Scaffold | Archetype info |
+| `ecs-world` | :orange_circle: Scaffold | World state |
+| `ecs-spawn` | :orange_circle: Scaffold | Spawn entity |
+| `ecs-despawn` | :orange_circle: Scaffold | Despawn entity |
+| `ecs-schedule` | :orange_circle: Scaffold | Schedule system |
+| `ecs-event` | :orange_circle: Scaffold | Emit event |
+
+### Round 572 — Data Serialization (Bencode, Ion, Thrift)
+
+| Feature | Status | Notes |
+|---------|--------|-------|
+| `bencode-encode` | :orange_circle: Scaffold | Bencode encode |
+| `bencode-decode` | :orange_circle: Scaffold | Bencode decode |
+| `ion-serialize` | :orange_circle: Scaffold | Ion serialize |
+| `ion-deserialize` | :orange_circle: Scaffold | Ion deserialize |
+| `ion-text` | :orange_circle: Scaffold | Ion text format |
+| `thrift-read` | :orange_circle: Scaffold | Thrift read |
+| `thrift-service` | :orange_circle: Scaffold | Thrift service |
+| `capnproto-read` | :orange_circle: Scaffold | Cap'n Proto read |
+| `asn1-decode` | :orange_circle: Scaffold | ASN.1 decode |
+| `asn1-schema` | :orange_circle: Scaffold | ASN.1 schema |
+
+### Round 573 — Image Processing
+
+| Feature | Status | Notes |
+|---------|--------|-------|
+| `image-blur` | :orange_circle: Scaffold | Blur |
+| `image-sharpen` | :orange_circle: Scaffold | Sharpen |
+| `image-edge` | :orange_circle: Scaffold | Edge detect |
+| `image-threshold` | :orange_circle: Scaffold | Threshold |
+| `image-erode` | :orange_circle: Scaffold | Erode |
+| `image-dilate` | :orange_circle: Scaffold | Dilate |
+| `image-histogram` | :orange_circle: Scaffold | Histogram |
+| `image-resize` | :orange_circle: Scaffold | Resize |
+| `image-rotate` | :orange_circle: Scaffold | Rotate |
+| `image-crop` | :orange_circle: Scaffold | Crop |
+
+### Round 574 — Network Security (TLS, Firewall)
+
+| Feature | Status | Notes |
+|---------|--------|-------|
+| `tls-handshake` | :orange_circle: Scaffold | Handshake debug |
+| `tls-verify` | :orange_circle: Scaffold | Verify cert |
+| `tls-cipher` | :orange_circle: Scaffold | Cipher suite |
+| `tls-certificate` | :orange_circle: Scaffold | Certificate info |
+| `tls-revoke` | :orange_circle: Scaffold | Revoke cert |
+| `firewall-rule` | :orange_circle: Scaffold | Add rule |
+| `firewall-inspect` | :orange_circle: Scaffold | Inspect |
+| `firewall-nat` | :orange_circle: Scaffold | NAT config |
+| `firewall-log` | :orange_circle: Scaffold | View log |
+| `firewall-zone` | :orange_circle: Scaffold | Zone config |
+
+### Round 575 — Numerical Methods
+
+| Feature | Status | Notes |
+|---------|--------|-------|
+| `newton-raphson` | :orange_circle: Scaffold | Newton-Raphson |
+| `bisection-method` | :orange_circle: Scaffold | Bisection |
+| `euler-method` | :orange_circle: Scaffold | Euler method |
+| `runge-kutta` | :orange_circle: Scaffold | Runge-Kutta |
+| `gauss-quadrature` | :orange_circle: Scaffold | Gauss quadrature |
+| `simpson-integrate` | :orange_circle: Scaffold | Simpson rule |
+| `trapezoidal-rule` | :orange_circle: Scaffold | Trapezoidal |
+| `finite-difference` | :orange_circle: Scaffold | Finite difference |
+| `interpolate-lagrange` | :orange_circle: Scaffold | Lagrange interp |
+| `interpolate-spline` | :orange_circle: Scaffold | Spline interp |
+
+### Round 576 — Optimization Algorithms
+
+| Feature | Status | Notes |
+|---------|--------|-------|
+| `gradient-descent` | :orange_circle: Scaffold | Gradient descent |
+| `simulated-anneal` | :orange_circle: Scaffold | Simulated annealing |
+| `genetic-algorithm` | :orange_circle: Scaffold | Genetic algorithm |
+| `particle-swarm` | :orange_circle: Scaffold | Particle swarm |
+| `ant-colony` | :orange_circle: Scaffold | Ant colony |
+| `tabu-search` | :orange_circle: Scaffold | Tabu search |
+| `hill-climb` | :orange_circle: Scaffold | Hill climbing |
+| `evolutionary-strategy` | :orange_circle: Scaffold | Evolutionary |
+| `bayesian-optimize` | :orange_circle: Scaffold | Bayesian opt |
+| `nelder-mead` | :orange_circle: Scaffold | Nelder-Mead |
+
+### Round 577 — Concurrency Primitives
+
+| Feature | Status | Notes |
+|---------|--------|-------|
+| `mutex-lock` | :orange_circle: Scaffold | Mutex lock |
+| `mutex-unlock` | :orange_circle: Scaffold | Mutex unlock |
+| `rwlock-read` | :orange_circle: Scaffold | Read lock |
+| `rwlock-write` | :orange_circle: Scaffold | Write lock |
+| `semaphore-wait` | :orange_circle: Scaffold | Semaphore wait |
+| `semaphore-signal` | :orange_circle: Scaffold | Semaphore signal |
+| `barrier-wait` | :orange_circle: Scaffold | Barrier wait |
+| `channel-send` | :orange_circle: Scaffold | Channel send |
+| `channel-recv` | :orange_circle: Scaffold | Channel recv |
+| `futex-wake` | :orange_circle: Scaffold | Futex wake |
+
+### Round 578 — Virtual Machines (Bytecode, JIT)
+
+| Feature | Status | Notes |
+|---------|--------|-------|
+| `vm-bytecode` | :orange_circle: Scaffold | Bytecode assemble |
+| `vm-execute` | :orange_circle: Scaffold | Execute |
+| `vm-stack` | :orange_circle: Scaffold | Stack inspect |
+| `vm-register` | :orange_circle: Scaffold | Register file |
+| `vm-jit` | :orange_circle: Scaffold | JIT compile |
+| `vm-gc` | :orange_circle: Scaffold | GC |
+| `vm-debug` | :orange_circle: Scaffold | Debug |
+| `vm-disasm` | :orange_circle: Scaffold | Disassemble |
+| `vm-optimize` | :orange_circle: Scaffold | Optimize IR |
+| `vm-compile` | :orange_circle: Scaffold | Compile source |
+
+### Round 579 — Serialization ext (Avro, FlatBuffers, MsgPack)
+
+| Feature | Status | Notes |
+|---------|--------|-------|
+| `avro-serialize` | :orange_circle: Scaffold | Avro serialize |
+| `avro-deserialize` | :orange_circle: Scaffold | Avro deserialize |
+| `flatbuf-compile` | :orange_circle: Scaffold | FlatBuffers compile |
+| `flatbuf-read` | :orange_circle: Scaffold | FlatBuffers read |
+| `protobuf-field` | :orange_circle: Scaffold | Protobuf field inspect |
+| `msgpack-ext` | :orange_circle: Scaffold | MsgPack ext type |
+| `msgpack-timestamp` | :orange_circle: Scaffold | MsgPack timestamp |
+| `cbor-sequence` | :orange_circle: Scaffold | CBOR sequence |
+| `cbor-map` | :orange_circle: Scaffold | CBOR map inspect |
+| `asn1-encode` | :orange_circle: Scaffold | ASN.1 encode |
+
+### Round 580 — Container Runtimes (OCI, cgroup)
+
+| Feature | Status | Notes |
+|---------|--------|-------|
+| `oci-build` | :orange_circle: Scaffold | OCI build image |
+| `oci-inspect` | :orange_circle: Scaffold | OCI inspect |
+| `oci-manifest` | :orange_circle: Scaffold | OCI manifest |
+| `cgroup-create` | :orange_circle: Scaffold | cgroup create |
+| `cgroup-limit` | :orange_circle: Scaffold | cgroup limits |
+| `cgroup-stat` | :orange_circle: Scaffold | cgroup stats |
+| `namespace-create` | :orange_circle: Scaffold | Namespace create |
+| `namespace-enter` | :orange_circle: Scaffold | Namespace enter |
+| `seccomp-profile` | :orange_circle: Scaffold | Seccomp profile |
+| `overlay-mount` | :orange_circle: Scaffold | OverlayFS mount |
+
 ### Round 561 — Ray Marching / SDF
 
 | Feature | Status | Notes |
diff --git a/src/jerboa-emacs/editor-extra-final.ss b/src/jerboa-emacs/editor-extra-final.ss
index d082c10..669dfd9 100644
--- a/src/jerboa-emacs/editor-extra-final.ss
+++ b/src/jerboa-emacs/editor-extra-final.ss
@@ -34214,3 +34214,59 @@
 (def (cmd-gc-cycle-detect app) (let* ((echo (app-state-echo app))) (echo-message! echo "GC: cycle detection")))
 (def (cmd-gc-finalize app) (let* ((echo (app-state-echo app))) (echo-message! echo "GC: finalize")))
 (def (cmd-gc-stats app) (let* ((echo (app-state-echo app))) (echo-message! echo "GC: statistics")))
+
+;; Round 572: Data Serialization (Avro, FlatBuffers, ASN.1)
+(def (cmd-bencode-encode app) (let* ((echo (app-state-echo app))) (echo-message! echo "Bencode: encode")))
+(def (cmd-bencode-decode app) (let* ((echo (app-state-echo app))) (echo-message! echo "Bencode: decode")))
+(def (cmd-ion-serialize app) (let* ((echo (app-state-echo app))) (echo-message! echo "Ion: serialize")))
+(def (cmd-ion-deserialize app) (let* ((echo (app-state-echo app))) (echo-message! echo "Ion: deserialize")))
+(def (cmd-ion-text app) (let* ((echo (app-state-echo app))) (echo-message! echo "Ion: text format")))
+(def (cmd-thrift-read app) (let* ((echo (app-state-echo app))) (echo-message! echo "Thrift: read struct")))
+(def (cmd-thrift-service app) (let* ((echo (app-state-echo app))) (echo-message! echo "Thrift: service define")))
+(def (cmd-capnproto-read app) (let* ((echo (app-state-echo app))) (echo-message! echo "Cap'n Proto: read message")))
+(def (cmd-asn1-decode app) (let* ((echo (app-state-echo app))) (echo-message! echo "ASN.1: decode")))
+(def (cmd-asn1-schema app) (let* ((echo (app-state-echo app))) (echo-message! echo "ASN.1: schema")))
+;; Round 574: Network Security (TLS, Firewall)
+(def (cmd-tls-handshake app) (let* ((echo (app-state-echo app))) (echo-message! echo "TLS: handshake debug")))
+(def (cmd-tls-verify app) (let* ((echo (app-state-echo app))) (echo-message! echo "TLS: verify cert")))
+(def (cmd-tls-cipher app) (let* ((echo (app-state-echo app))) (echo-message! echo "TLS: cipher suite")))
+(def (cmd-tls-certificate app) (let* ((echo (app-state-echo app))) (echo-message! echo "TLS: certificate info")))
+(def (cmd-tls-revoke app) (let* ((echo (app-state-echo app))) (echo-message! echo "TLS: revoke cert")))
+(def (cmd-firewall-rule app) (let* ((echo (app-state-echo app))) (echo-message! echo "Firewall: add rule")))
+(def (cmd-firewall-inspect app) (let* ((echo (app-state-echo app))) (echo-message! echo "Firewall: inspect")))
+(def (cmd-firewall-nat app) (let* ((echo (app-state-echo app))) (echo-message! echo "Firewall: NAT config")))
+(def (cmd-firewall-log app) (let* ((echo (app-state-echo app))) (echo-message! echo "Firewall: view log")))
+(def (cmd-firewall-zone app) (let* ((echo (app-state-echo app))) (echo-message! echo "Firewall: zone config")))
+;; Round 576: Optimization Algorithms (Gradient, Genetic, Swarm)
+(def (cmd-gradient-descent app) (let* ((echo (app-state-echo app))) (echo-message! echo "Optimize: gradient descent")))
+(def (cmd-simulated-anneal app) (let* ((echo (app-state-echo app))) (echo-message! echo "Optimize: simulated annealing")))
+(def (cmd-genetic-algorithm app) (let* ((echo (app-state-echo app))) (echo-message! echo "Optimize: genetic algorithm")))
+(def (cmd-particle-swarm app) (let* ((echo (app-state-echo app))) (echo-message! echo "Optimize: particle swarm")))
+(def (cmd-ant-colony app) (let* ((echo (app-state-echo app))) (echo-message! echo "Optimize: ant colony")))
+(def (cmd-tabu-search app) (let* ((echo (app-state-echo app))) (echo-message! echo "Optimize: tabu search")))
+(def (cmd-hill-climb app) (let* ((echo (app-state-echo app))) (echo-message! echo "Optimize: hill climbing")))
+(def (cmd-evolutionary-strategy app) (let* ((echo (app-state-echo app))) (echo-message! echo "Optimize: evolutionary")))
+(def (cmd-bayesian-optimize app) (let* ((echo (app-state-echo app))) (echo-message! echo "Optimize: Bayesian")))
+(def (cmd-nelder-mead app) (let* ((echo (app-state-echo app))) (echo-message! echo "Optimize: Nelder-Mead")))
+;; Round 578: Virtual Machines (Bytecode, JIT, Stack)
+(def (cmd-vm-bytecode app) (let* ((echo (app-state-echo app))) (echo-message! echo "VM: bytecode assemble")))
+(def (cmd-vm-execute app) (let* ((echo (app-state-echo app))) (echo-message! echo "VM: execute")))
+(def (cmd-vm-stack app) (let* ((echo (app-state-echo app))) (echo-message! echo "VM: stack inspect")))
+(def (cmd-vm-register app) (let* ((echo (app-state-echo app))) (echo-message! echo "VM: register file")))
+(def (cmd-vm-jit app) (let* ((echo (app-state-echo app))) (echo-message! echo "VM: JIT compile")))
+(def (cmd-vm-gc app) (let* ((echo (app-state-echo app))) (echo-message! echo "VM: garbage collect")))
+(def (cmd-vm-debug app) (let* ((echo (app-state-echo app))) (echo-message! echo "VM: debug")))
+(def (cmd-vm-disasm app) (let* ((echo (app-state-echo app))) (echo-message! echo "VM: disassemble")))
+(def (cmd-vm-optimize app) (let* ((echo (app-state-echo app))) (echo-message! echo "VM: optimize IR")))
+(def (cmd-vm-compile app) (let* ((echo (app-state-echo app))) (echo-message! echo "VM: compile source")))
+;; Round 580: Container Runtimes (OCI, cgroup, namespace)
+(def (cmd-oci-build app) (let* ((echo (app-state-echo app))) (echo-message! echo "OCI: build image")))
+(def (cmd-oci-inspect app) (let* ((echo (app-state-echo app))) (echo-message! echo "OCI: inspect image")))
+(def (cmd-oci-manifest app) (let* ((echo (app-state-echo app))) (echo-message! echo "OCI: manifest")))
+(def (cmd-cgroup-create app) (let* ((echo (app-state-echo app))) (echo-message! echo "cgroup: create")))
+(def (cmd-cgroup-limit app) (let* ((echo (app-state-echo app))) (echo-message! echo "cgroup: set limits")))
+(def (cmd-cgroup-stat app) (let* ((echo (app-state-echo app))) (echo-message! echo "cgroup: statistics")))
+(def (cmd-namespace-create app) (let* ((echo (app-state-echo app))) (echo-message! echo "Namespace: create")))
+(def (cmd-namespace-enter app) (let* ((echo (app-state-echo app))) (echo-message! echo "Namespace: enter")))
+(def (cmd-seccomp-profile app) (let* ((echo (app-state-echo app))) (echo-message! echo "Seccomp: apply profile")))
+(def (cmd-overlay-mount app) (let* ((echo (app-state-echo app))) (echo-message! echo "OverlayFS: mount")))
diff --git a/src/jerboa-emacs/editor-extra-modes.ss b/src/jerboa-emacs/editor-extra-modes.ss
index 7dddcbb..bc86470 100644
--- a/src/jerboa-emacs/editor-extra-modes.ss
+++ b/src/jerboa-emacs/editor-extra-modes.ss
@@ -33438,3 +33438,59 @@
 (def (cmd-typeinfer-check app) (let* ((echo (app-state-echo app))) (echo-message! echo "TypeInfer: check type")))
 (def (cmd-typeinfer-elaborate app) (let* ((echo (app-state-echo app))) (echo-message! echo "TypeInfer: elaborate")))
 (def (cmd-typeinfer-annotate app) (let* ((echo (app-state-echo app))) (echo-message! echo "TypeInfer: annotate")))
+
+;; Round 571: ECS Game Engines (Entity-Component-System)
+(def (cmd-ecs-entity app) (let* ((echo (app-state-echo app))) (echo-message! echo "ECS: create entity")))
+(def (cmd-ecs-component app) (let* ((echo (app-state-echo app))) (echo-message! echo "ECS: add component")))
+(def (cmd-ecs-system app) (let* ((echo (app-state-echo app))) (echo-message! echo "ECS: register system")))
+(def (cmd-ecs-query app) (let* ((echo (app-state-echo app))) (echo-message! echo "ECS: query entities")))
+(def (cmd-ecs-archetype app) (let* ((echo (app-state-echo app))) (echo-message! echo "ECS: archetype info")))
+(def (cmd-ecs-world app) (let* ((echo (app-state-echo app))) (echo-message! echo "ECS: world state")))
+(def (cmd-ecs-spawn app) (let* ((echo (app-state-echo app))) (echo-message! echo "ECS: spawn entity")))
+(def (cmd-ecs-despawn app) (let* ((echo (app-state-echo app))) (echo-message! echo "ECS: despawn entity")))
+(def (cmd-ecs-schedule app) (let* ((echo (app-state-echo app))) (echo-message! echo "ECS: schedule system")))
+(def (cmd-ecs-event app) (let* ((echo (app-state-echo app))) (echo-message! echo "ECS: emit event")))
+;; Round 573: Image Processing (Blur, Edge, Morphology)
+(def (cmd-image-blur app) (let* ((echo (app-state-echo app))) (echo-message! echo "Image: blur")))
+(def (cmd-image-sharpen app) (let* ((echo (app-state-echo app))) (echo-message! echo "Image: sharpen")))
+(def (cmd-image-edge app) (let* ((echo (app-state-echo app))) (echo-message! echo "Image: edge detect")))
+(def (cmd-image-threshold app) (let* ((echo (app-state-echo app))) (echo-message! echo "Image: threshold")))
+(def (cmd-image-erode app) (let* ((echo (app-state-echo app))) (echo-message! echo "Image: erode")))
+(def (cmd-image-dilate app) (let* ((echo (app-state-echo app))) (echo-message! echo "Image: dilate")))
+(def (cmd-image-histogram app) (let* ((echo (app-state-echo app))) (echo-message! echo "Image: histogram")))
+(def (cmd-image-resize app) (let* ((echo (app-state-echo app))) (echo-message! echo "Image: resize")))
+(def (cmd-image-rotate app) (let* ((echo (app-state-echo app))) (echo-message! echo "Image: rotate")))
+(def (cmd-image-crop app) (let* ((echo (app-state-echo app))) (echo-message! echo "Image: crop")))
+;; Round 575: Numerical Methods (Newton, Euler, Runge-Kutta)
+(def (cmd-newton-raphson app) (let* ((echo (app-state-echo app))) (echo-message! echo "Numerical: Newton-Raphson")))
+(def (cmd-bisection-method app) (let* ((echo (app-state-echo app))) (echo-message! echo "Numerical: bisection")))
+(def (cmd-euler-method app) (let* ((echo (app-state-echo app))) (echo-message! echo "Numerical: Euler method")))
+(def (cmd-runge-kutta app) (let* ((echo (app-state-echo app))) (echo-message! echo "Numerical: Runge-Kutta")))
+(def (cmd-gauss-quadrature app) (let* ((echo (app-state-echo app))) (echo-message! echo "Numerical: Gauss quadrature")))
+(def (cmd-simpson-integrate app) (let* ((echo (app-state-echo app))) (echo-message! echo "Numerical: Simpson rule")))
+(def (cmd-trapezoidal-rule app) (let* ((echo (app-state-echo app))) (echo-message! echo "Numerical: trapezoidal")))
+(def (cmd-finite-difference app) (let* ((echo (app-state-echo app))) (echo-message! echo "Numerical: finite difference")))
+(def (cmd-interpolate-lagrange app) (let* ((echo (app-state-echo app))) (echo-message! echo "Numerical: Lagrange interp")))
+(def (cmd-interpolate-spline app) (let* ((echo (app-state-echo app))) (echo-message! echo "Numerical: spline interp")))
+;; Round 577: Concurrency Primitives (Mutex, Semaphore, Channel)
+(def (cmd-mutex-lock app) (let* ((echo (app-state-echo app))) (echo-message! echo "Concurrency: mutex lock")))
+(def (cmd-mutex-unlock app) (let* ((echo (app-state-echo app))) (echo-message! echo "Concurrency: mutex unlock")))
+(def (cmd-rwlock-read app) (let* ((echo (app-state-echo app))) (echo-message! echo "Concurrency: read lock")))
+(def (cmd-rwlock-write app) (let* ((echo (app-state-echo app))) (echo-message! echo "Concurrency: write lock")))
+(def (cmd-semaphore-wait app) (let* ((echo (app-state-echo app))) (echo-message! echo "Concurrency: semaphore wait")))
+(def (cmd-semaphore-signal app) (let* ((echo (app-state-echo app))) (echo-message! echo "Concurrency: semaphore signal")))
+(def (cmd-barrier-wait app) (let* ((echo (app-state-echo app))) (echo-message! echo "Concurrency: barrier wait")))
+(def (cmd-channel-send app) (let* ((echo (app-state-echo app))) (echo-message! echo "Concurrency: channel send")))
+(def (cmd-channel-recv app) (let* ((echo (app-state-echo app))) (echo-message! echo "Concurrency: channel recv")))
+(def (cmd-futex-wake app) (let* ((echo (app-state-echo app))) (echo-message! echo "Concurrency: futex wake")))
+;; Round 579: Protocol Buffers / Serialization ext
+(def (cmd-avro-serialize app) (let* ((echo (app-state-echo app))) (echo-message! echo "Avro: serialize")))
+(def (cmd-avro-deserialize app) (let* ((echo (app-state-echo app))) (echo-message! echo "Avro: deserialize")))
+(def (cmd-flatbuf-compile app) (let* ((echo (app-state-echo app))) (echo-message! echo "FlatBuffers: compile schema")))
+(def (cmd-flatbuf-read app) (let* ((echo (app-state-echo app))) (echo-message! echo "FlatBuffers: read buffer")))
+(def (cmd-protobuf-field app) (let* ((echo (app-state-echo app))) (echo-message! echo "Protobuf: field inspector")))
+(def (cmd-msgpack-ext app) (let* ((echo (app-state-echo app))) (echo-message! echo "MsgPack: ext type")))
+(def (cmd-msgpack-timestamp app) (let* ((echo (app-state-echo app))) (echo-message! echo "MsgPack: timestamp")))
+(def (cmd-cbor-sequence app) (let* ((echo (app-state-echo app))) (echo-message! echo "CBOR: sequence")))
+(def (cmd-cbor-map app) (let* ((echo (app-state-echo app))) (echo-message! echo "CBOR: map inspect")))
+(def (cmd-asn1-encode app) (let* ((echo (app-state-echo app))) (echo-message! echo "ASN.1: encode")))
diff --git a/src/jerboa-emacs/editor-extra-regs2.ss b/src/jerboa-emacs/editor-extra-regs2.ss
index d72ff00..0cf9880 100644
--- a/src/jerboa-emacs/editor-extra-regs2.ss
+++ b/src/jerboa-emacs/editor-extra-regs2.ss
@@ -12894,4 +12894,35 @@
   ;; Round 570: Garbage Collectors
   (register-command! 'gc-mark cmd-gc-mark) (register-command! 'gc-sweep cmd-gc-sweep) (register-command! 'gc-compact cmd-gc-compact) (register-command! 'gc-generational cmd-gc-generational) (register-command! 'gc-incremental cmd-gc-incremental)
   (register-command! 'gc-concurrent cmd-gc-concurrent) (register-command! 'gc-reference-count cmd-gc-reference-count) (register-command! 'gc-cycle-detect cmd-gc-cycle-detect) (register-command! 'gc-finalize cmd-gc-finalize) (register-command! 'gc-stats cmd-gc-stats)
+
+  ;; Round 571: ECS Game Engines
+  (register-command! 'ecs-entity cmd-ecs-entity) (register-command! 'ecs-component cmd-ecs-component) (register-command! 'ecs-system cmd-ecs-system) (register-command! 'ecs-query cmd-ecs-query) (register-command! 'ecs-archetype cmd-ecs-archetype)
+  (register-command! 'ecs-world cmd-ecs-world) (register-command! 'ecs-spawn cmd-ecs-spawn) (register-command! 'ecs-despawn cmd-ecs-despawn) (register-command! 'ecs-schedule cmd-ecs-schedule) (register-command! 'ecs-event cmd-ecs-event)
+  ;; Round 572: Data Serialization
+  (register-command! 'bencode-encode cmd-bencode-encode) (register-command! 'bencode-decode cmd-bencode-decode) (register-command! 'ion-serialize cmd-ion-serialize) (register-command! 'ion-deserialize cmd-ion-deserialize) (register-command! 'ion-text cmd-ion-text)
+  (register-command! 'thrift-read cmd-thrift-read) (register-command! 'thrift-service cmd-thrift-service) (register-command! 'capnproto-read cmd-capnproto-read) (register-command! 'asn1-decode cmd-asn1-decode) (register-command! 'asn1-schema cmd-asn1-schema)
+  ;; Round 573: Image Processing
+  (register-command! 'image-blur cmd-image-blur) (register-command! 'image-sharpen cmd-image-sharpen) (register-command! 'image-edge cmd-image-edge) (register-command! 'image-threshold cmd-image-threshold) (register-command! 'image-erode cmd-image-erode)
+  (register-command! 'image-dilate cmd-image-dilate) (register-command! 'image-histogram cmd-image-histogram) (register-command! 'image-resize cmd-image-resize) (register-command! 'image-rotate cmd-image-rotate) (register-command! 'image-crop cmd-image-crop)
+  ;; Round 574: Network Security
+  (register-command! 'tls-handshake cmd-tls-handshake) (register-command! 'tls-verify cmd-tls-verify) (register-command! 'tls-cipher cmd-tls-cipher) (register-command! 'tls-certificate cmd-tls-certificate) (register-command! 'tls-revoke cmd-tls-revoke)
+  (register-command! 'firewall-rule cmd-firewall-rule) (register-command! 'firewall-inspect cmd-firewall-inspect) (register-command! 'firewall-nat cmd-firewall-nat) (register-command! 'firewall-log cmd-firewall-log) (register-command! 'firewall-zone cmd-firewall-zone)
+  ;; Round 575: Numerical Methods
+  (register-command! 'newton-raphson cmd-newton-raphson) (register-command! 'bisection-method cmd-bisection-method) (register-command! 'euler-method cmd-euler-method) (register-command! 'runge-kutta cmd-runge-kutta) (register-command! 'gauss-quadrature cmd-gauss-quadrature)
+  (register-command! 'simpson-integrate cmd-simpson-integrate) (register-command! 'trapezoidal-rule cmd-trapezoidal-rule) (register-command! 'finite-difference cmd-finite-difference) (register-command! 'interpolate-lagrange cmd-interpolate-lagrange) (register-command! 'interpolate-spline cmd-interpolate-spline)
+  ;; Round 576: Optimization Algorithms
+  (register-command! 'gradient-descent cmd-gradient-descent) (register-command! 'simulated-anneal cmd-simulated-anneal) (register-command! 'genetic-algorithm cmd-genetic-algorithm) (register-command! 'particle-swarm cmd-particle-swarm) (register-command! 'ant-colony cmd-ant-colony)
+  (register-command! 'tabu-search cmd-tabu-search) (register-command! 'hill-climb cmd-hill-climb) (register-command! 'evolutionary-strategy cmd-evolutionary-strategy) (register-command! 'bayesian-optimize cmd-bayesian-optimize) (register-command! 'nelder-mead cmd-nelder-mead)
+  ;; Round 577: Concurrency Primitives
+  (register-command! 'mutex-lock cmd-mutex-lock) (register-command! 'mutex-unlock cmd-mutex-unlock) (register-command! 'rwlock-read cmd-rwlock-read) (register-command! 'rwlock-write cmd-rwlock-write) (register-command! 'semaphore-wait cmd-semaphore-wait)
+  (register-command! 'semaphore-signal cmd-semaphore-signal) (register-command! 'barrier-wait cmd-barrier-wait) (register-command! 'channel-send cmd-channel-send) (register-command! 'channel-recv cmd-channel-recv) (register-command! 'futex-wake cmd-futex-wake)
+  ;; Round 578: Virtual Machines
+  (register-command! 'vm-bytecode cmd-vm-bytecode) (register-command! 'vm-execute cmd-vm-execute) (register-command! 'vm-stack cmd-vm-stack) (register-command! 'vm-register cmd-vm-register) (register-command! 'vm-jit cmd-vm-jit)
+  (register-command! 'vm-gc cmd-vm-gc) (register-command! 'vm-debug cmd-vm-debug) (register-command! 'vm-disasm cmd-vm-disasm) (register-command! 'vm-optimize cmd-vm-optimize) (register-command! 'vm-compile cmd-vm-compile)
+  ;; Round 579: Protocol Buffers / Serialization ext
+  (register-command! 'avro-serialize cmd-avro-serialize) (register-command! 'avro-deserialize cmd-avro-deserialize) (register-command! 'flatbuf-compile cmd-flatbuf-compile) (register-command! 'flatbuf-read cmd-flatbuf-read) (register-command! 'protobuf-field cmd-protobuf-field)
+  (register-command! 'msgpack-ext cmd-msgpack-ext) (register-command! 'msgpack-timestamp cmd-msgpack-timestamp) (register-command! 'cbor-sequence cmd-cbor-sequence) (register-command! 'cbor-map cmd-cbor-map) (register-command! 'asn1-encode cmd-asn1-encode)
+  ;; Round 580: Container Runtimes
+  (register-command! 'oci-build cmd-oci-build) (register-command! 'oci-inspect cmd-oci-inspect) (register-command! 'oci-manifest cmd-oci-manifest) (register-command! 'cgroup-create cmd-cgroup-create) (register-command! 'cgroup-limit cmd-cgroup-limit)
+  (register-command! 'cgroup-stat cmd-cgroup-stat) (register-command! 'namespace-create cmd-namespace-create) (register-command! 'namespace-enter cmd-namespace-enter) (register-command! 'seccomp-profile cmd-seccomp-profile) (register-command! 'overlay-mount cmd-overlay-mount)
 )