Content hub Back to the console

SAOS Fact Sheet v2: the marketing source of truth

Full scan of the 12 repos · verification date: 2026-09-13 06:30Z (v3.36 · additive claims refresh over v3.35, audited live 2026-09-13 ~16:30Z: §1 named network list · §2 current bench · §8 live fleet re-measure) Exposure policy: sections tagged internally as warning items are internal only, it is absolutely forbidden to derive marketing material from them. See disclosure-policy.md. · every item is backed by code, a measurement, or a chained receipt. New in v3: the first developer product is live (Identity API + SDK) · live key rotation after a leak · platform v24 (anti-phishing guard). Corrections from v1: HIVE live (stale-read bug fixed) · TRON: zero-fee rail live in the ecosystem · throughput: 32,603 tx/s measured on a real archive replay.

1. Definition (the right reform)

SAOS is a sovereign operating system: a deterministic state machine (SAOS-NET) whose security is rented from 7 public networks, with a structurally-enforced economic engine, an autonomous agent fleet, and products (wallet, notary, DEX) that pay for everyone.

The 7 rented public networks, named so anyone can verify the count: STEEM · HIVE · BLURT (Graphene) · TRON (TVM) · ETHEREUM · SOLANA (EVM/SVM) · XRPL, each with a live receipt in sections 3, 10.19 and 10.30.

Not "another blockchain". Not a bridge. Sovereign Notarized Ledger, sovereignty with receipts.

2. The core: SAOS-NET (measured)

MetricValue
Chain height133,259+ blocks (live after a planned fork @130,000, 4 buggy economic kernels fixed + conservative anti-poison/fork guards) · grew from 74,907 within ~8 hours
Mechanism throughput722,251 tx/s (measured 2026-09-12: kernel applyTx replay of real archive txs on cloned state; earlier bench: 32,603 tx/s on 2026-09-07)
Mechanism ceiling~62.4 billion tx/day at the measured 2026-09-12 bench rate (extrapolated mechanism ceiling, always labeled as such; the sustained-live trade rate is economy/budget-bound and reported separately)
DEX kernel26,490 ops/sec measured (separate bench of the DEX engine)
Live block (DEX)3 seconds · seal every 12 · stateRoot = sha256(canonical) = bytes32 native to the EVM

3. The notary layer: all rails, status accurate

RailStatusMechanismReceipt
STEEMlive, every sealcustom_json · RC · $0390bcfc2... block 10,937,394
HIVElive, 21 anchors in 22 hours verifiedcustom_json · effective RC 73.2Md4cf936b... · block range 109,708,562-109,734,678
ETHEREUMlive, mainnetEIP-1559 calldata0x102ec193... block 25,929,261
SOLANAlive, mainnet-betaSPL Memo v22M1rkRgg...
TRON (ecosystem)live, zero net feebit encoding in transfer memos, ring of 6 addressescp#33612 -> txid 1db5006b... @ block 86,019,974 · 6/6 addresses measured
TRON (DEX relay)armed · waiting on 0.3 TRXderived identity + extra_datashown honestly in the UI
BLURTlive, first anchor broadcast and verifiedcanonical low-s signature · anchor-pulseblock 63,502,020 · fee 0.129 BLURT · STEEM in the same pulse: blocks 109,438,757 + 109,438,812

Cross-chain consistency: the same stateRoot (d4970bb5..., h2388) anchored simultaneously on ETH (block 25,929,269) and on SOL (slot 445,209,689), verified bit-for-bit from two separate RPC calls.

4. The HIVE honesty fix (a marketing asset in its own right)

The reported "RC block" was our own stale-read bug: rc_api returns a snapshot, not a balance. In practice the account held 73,271,489 RC, 52.6 times the old reading. We found it, published it, fixed it, and 34 asserts held the fix to the live measurement. Measured floor: 5,128 free anchors per day on HIVE alone.

5. The atomic clock (Foundry): documented measurement 2026-09-08T02:04Z

6. JUMPPER: batch proof notary

7. The economic engine: grid98 + DEX + wrappers

ComponentMeasured
Public rejection counters383,836 edge skips · 130,499 rejections · 109,919µ leakage measured and settled
Trading and PnL5,606 trades · 9,935,250µ cumulative PnL to the treasury · 282 trades today · per-soldier PnL (wog +163,295µ)
Backed floor ladder9 steps · every step with an exact µ backup in the records · ≤0.5% per step · floor 0.01688->0.017567
Fees30bps · 70% LP / 30% treasury · harvest rail with a public txid (1d148959...)
Wrappers20 assets · supply==locked as an invariant · mint cites the locking txid (WSTEEM 2ad481ac...) · 9 TRC20 contracts verified live on TRON · mint-coverage ≤99% enforced
DEXorder book with full escrow · fills at maker price · autonomous arena of 4 quoters · measured spread 12-82bps
Oracle15 signed hourly quotes with src+ref+at · yes to skipping on network failure, never an invented price

8. The fleet and the autonomous workforce

9. Resilience, security, audit

10. Products: what the user meets

  1. Saosmartwallet, self-custodial wallet for 7 live networks (STEEM/HIVE/BLURT/TRON/SAOS-NET/ETH/SOL) · M0-M4 verified against chain · Sovereign Key Vault · bridge layer with live router+quotes · System Owner: /api/system/health + failover proven
  2. JUMPPER, batch proof notary for agent/organization claims (Phase 1 green; API+explorer in Phase 3)
  3. SAOS DEX, institutional trading terminal with live anchoring and one-button independent verification
  4. Atomic Clock demo, /api/saos/breakthrough-demo, one command, live proof

10.5 The first developer product: Identity Verification API (live, metered)

ComponentVerified facts
The APIPOST /api/v1/identity/verify, API keys (only the SHA-256 is stored, plaintext shown once) · quota of 1,000 calls per UTC day · a ledger of every call · transparent headers
What it provesthat a Steem/Hive account and an EVM address belong to the same secp256k1 scalar, on-chain saos.id.v1 anchor -> EIP-191 ecrecover -> live per-chain active-authority match
Live proofPROVEN against Steem block 109,389,994 · the FAILED path (unanchored account) counted as a real measurement · 401 fail-closed
The SDKsaos-id-verify (npm), zero dependencies, plain fetch · Node≥18 / Bun / Deno / browsers / edge · dogfooded live on 3/3 paths
Honest limitthe 429 branch is coded per provider but not burned live (it would cost 1,000 real calls) · npm publish itself is an owner operation · baseUrl required, the client refuses to invent an endpoint
GTM readyoutreach kit with 10 real targets tested live (Splinterlands, MEXC, Gate, SimpleSwap, Changelly, Godex, Ecency, InLeo, PeakD...), each with a documented exposure vector to Steem/Hive
Internal section: maintained in the Hebrew-only internal annex (fact-sheet-internal-he.md), not for publication per disclosure-policy.md.

10.7 New platform milestones (v18.1 -> v24)

10.8 Self-healing and permission sovereignty (v25-v26, measured 2026-09-09)

v26 (SHOMER), the organism that recovers itself:

v25 (RESHUT), permission sovereignty:

10.9 Further developments (2026-09-09 00:00-01:15Z)

10.10 The sovereign exchange is live on our network: v28 (BIRSA, measured 2026-09-09 02:55Z)

The SAOSExchange contract (mesh link #7, saos-mesh/v4, 11KB), an internal-book AMM x·y=k, live on our network:

ComponentLive measurement
Pools3 majors-only pools: WTRX/WSOL/WETH × wSAOS · wraps 1:1 against real ledger deposits (backup measured in real time: 17.6 TRX · 0.024 SOL · 0.000095 ETH)
Trading72+ swaps as real transactions · golden path verified in the browser (tx 0xbaf0771a...) · TVL $13.91 (dust, the mechanism is proven, scaling is a budget gate)
PriceSAOS-M at a policy $0.001, deliberately low: many units per backed dollar = many pools
Fees20bps = 10bps harvest-pot to the treasury + 10bps autonomous pool growth (LP value grows on its own) · swap cap 5%
Arbitrage botdeviation >0.8% against a live Binance oracle -> a correcting swap · arb proof: the treasury sold WETH at a 5.04% deviation
Harvest outlive proof: 36.4 SAOS-M flowed to REAL WORK wages (tx 0x2c1a078b...) · every third cycle
Routera comparison panel against live quotes from Uniswap/Pancake/Sushi, "only against the big ones"
Cornerstone treasurya real money map published in full: $258.46 (STEEM 534SP = $248.83 · TRX $5.97 · SOL $2.49 · HIVE · ETH), radical transparency as a brand
Server on our networka JSON-RPC check from the browser through the public door: eth_blockNumber 5300 · chainId 0x7a69
Honestyreal bugs caught live and documented (harvestAll internal-call NotOwner · fee display · the probe fallback)

10.11 LIVE-GATE: the safety default of the whole organism (security 28-b)

10.12 The six-step signing contract (JUMPPER SIGNING-CONTRACT)

10.13 v29 (CHIBUR): the old money found and connected (measured 2026-09-09 04:14Z)

Owner instruction: "There is an Ethereum address with some dust, some BNB and some XRP, find it and connect it to the system so that nothing stays sitting in a wallet." The result:

10.14 Sovereign microrail + P&L proof (SETTLE-16/17, measured 2026-09-09 04:00-04:53Z)

10.15 Gas model accuracy upgraded: 7/7 consecutive exact predictions on mainnet

10.16 v30 (TIZUZA): the money moves physically (measured 2026-09-09 05:46Z)

Owner instruction: "It must move physically." After v29 found and connected without moving, v30 moved:

Internal section: maintained in the Hebrew-only internal annex (fact-sheet-internal-he.md), not for publication per disclosure-policy.md.

10.18 Sovereign economy engine: ve(3,3) + buy-&-burn (DEX Task 54, measured live)

Internal section: maintained in the Hebrew-only internal annex (fact-sheet-internal-he.md), not for publication per disclosure-policy.md.

10.19 Keeperless automated trading + price-proof engine (DEX Task 56)

10.20 Sovereign swarm + agent gate (platform v36-v38)

10.21 Continuity and autarky: resilience capabilities (v33-v35 + JUMPPER riskgate)

10.22 New market engines: CoW, Launchpad, ProtoRev (DEX Task 58, verified live)

10.23 SOVEREIGN-HAND: proven end-to-end separation of powers (wallet, live E2E)

10.24 Engineering discipline (platform v39-v40 + foundry v4)

10.25 SOVEREIGN-VOICE: the fleet builds the network every day (wallet, live E2E 00:34Z)

10.26 PUBLISH-DESK: the exposure gate of autonomous publishing (wallet, live 01:59Z)

The swarm publishes content on the chains, and now every publication has a discipline desk:

10.27 The ecosystem-wide roast wave (2026-09-10 06:20-12:43Z): the organism criticized itself

Our external audit (AUDIT-2026-09-10 on saos-dex) ignited a coordinated self-criticism wave across the repos:

10.28 v47 THE HARDENED BIT: one seed, five ecosystems (07:15Z)

10.29 v48 NETWORK MAP (08:00Z)

10.30 THE ANCHOR WALL 5/5: v49->v51 (verified directly from commits, 17:40Z)

v49 THE ANCHOR VOYAGE: all 5 funded networks anchored on mainnet

v50 THE ANCHOR WALL: the chains themselves became the book

v51 THE BRIDGE FOUNDRY

Infrastructure for adding bridges to more networks + a deployments book rebuilt from the chain itself.

More verified truth (foundry + control-center, 13:04-14:55Z)

Internal section: maintained in the Hebrew-only internal annex (fact-sheet-internal-he.md), not for publication per disclosure-policy.md.

10.32 The breakthrough engine + the live diagnosis: $0.94 (v52, measured 15:45Z)

10.33 The roast wave continues (13:11-15:43Z)

10.34 Completing the wave of 15:55Z: the corroboration layer and the r8 lessons

10.35 Additions from the parallel scan (merged 16:20Z: two writers synced simultaneously, duplicates removed)

Unique details collected in parallel that complement 10.32-10.34:

10.36 Full recovery from a single root + THE-TOWER + the megaphone (16:24-18:12Z, verified from commits)

v53 (THE SEED): the entire identity family restored independently from a single root, and it signed live

R18 (THE-TOWER): an Ethereum block explorer, ours

JUMPPER MEGAPHONE: the first live receipt of the free rail

More verified truth from the wave

10.37 roast-66: the first HALT caught alive: the safety net worked (17:36Z, verified from a commit)

The first live proof of the fail-fast claim: until today we marketed "invariants that stop the chain instead of running on lies" as a design promise. Now there is a receipt:

10.38 THE CONVERSION CHAMBER + the third roast wave (16:42-19:18Z, verified from commits)

v53 (THE CONVERSION CHAMBER): the breakthrough measured on-chain

v54 (THE NETWORK TUNER)

"whatever limits is caught in measurement · the network analyzed and locked · value verification on the same device", a unified measuring device for limits and value (commit d035606).

JUMPPER heightguard: when history forks, mark AMBIGUOUS, do not pick a winner

More verified truth from the wave

10.39 THE PACE ENGINE + sovereign conversions 10/10 + reality calibration (19:39-21:59Z, verified from commits)

v56 (THE PACE ENGINE): 31 silent wait gates closed

roast-71 (DEX): sovereign conversions completed: 10/10 assets routable

More verified truth from the wave

10.40 THE-COIN-DOOR + the version lie caught + the sovereign secrets scan (22:06-22:59Z, verified from commits)

Task 72 THE-COIN-DOOR: the price enters consensus

foundry roast(71): three truths caught and fixed (all in the derived-or-silence spirit)

  1. VERSION LIE: a Task-70 commit declared signer v2.4.5, while the code actually served 2.4.4. The commit message lied. Fixed: the version constant was raised in both places, the service was restarted through the supervisor, and the endpoint now serves 2.4.5 honestly (drift=0 · unmatched=0 · errors=0)
  2. Silent typecheck breakage: a local type had not learned a new field, bun run typecheck failed behind a green lint (2×TS2339). Fixed, clean
  3. Frozen claim -> derived: the text "created 2018, before the fork" was frozen on screen; now it is derived from a live field, and it disappears the moment a non-2018 account appears. The derived-or-silence principle extended to age claims

The sovereign secrets scan (steem R18e)

v56 completion on the web

Internal section: maintained in the Hebrew-only internal annex (fact-sheet-internal-he.md), not for publication per disclosure-policy.md.

10.41 THE SOVEREIGN EXPANSION + employment engineering + roast(72) lessons (23:01-23:09Z, verified from commits)

v58 THE SOVEREIGN EXPANSION

wallet r18: employment engineering

foundry roast(72): "when everything is connected there are plenty of problems": the full limits audit (public parts)

  1. Silent monitor death: the fleet-cure status file froze for 3:24 hours with zero logs, a bun --hot reload quietly killed the cycle loop. Fixed: a no-overlap lock + mandatory logging at cycle start/end + revival · measured: "cycle end in 3167ms" · the principle: a monitor that dies silently is worse than a monitor that fails loudly
  2. Four versions in one service: /health said 2.5.2-task38 · /keys/status said 2.4.5 · backup-export said 2.4.1 · the boot log said 2.5.4, while a single SIGNER_VERSION=2.5.5 constant now feeds every surface (measured uniform)
  3. 30,032 phantom compile errors in a dev.log of 426,719 lines: a next process 20.5 hours old kept compiling an old (pre-Task-62) package to Edge; a clean restart -> zero recurrence · the supervisor re-registered · zero double-spawn
  4. Internal: handled per the disclosure policy, details in the Hebrew-only annex (fact-sheet-internal-he.md), not for publication.

JUMPPER: consistency completion

The epoch field was added to the last anchor format that lacked it; packing.py and heightguard.py are fully aligned with the unified anchor format (a direct continuation of the namespace fix from the big roast).

10.42 The remedy published where the error lives + network health with 8 gates (23:29-23:45Z, verified from commits)

JUMPPER remedy: the remedy anchor (completing the split-view arc)

steem R18e-4: sovereign network health

Internal section: maintained in the Hebrew-only internal annex (fact-sheet-internal-he.md), not for publication per disclosure-policy.md.

10.43 THE RECEIPT RACE + THE ANCHOR PLANE + fork prevention (2026-09-11 00:01-00:40Z, verified from commits)

v59 THE RECEIPT RACE: 5-7x faster, measured live

v60 THE PROBES RAIL: "9 seconds that impersonated health"

wallet r20 THE ANCHOR PLANE

JUMPPER epochguard: the part that prevents forks instead of reporting them

Internal section: maintained in the Hebrew-only internal annex (fact-sheet-internal-he.md), not for publication per disclosure-policy.md.

10.44 A full 6/6 matrix + the money plane + breaking the death cycle (03:30-06:17Z, verified from commits)

task81: TRON anchored live for the first time from sovereign keys, seal h16 in a full 6/6 matrix

r30 (wallet): the money plane understood

The vault now watches where money lands: a chain.funding (42) module reads live the funding addresses of the 7 doors · a db-settle protocol before rebase · a push above the partners' door-push

roast-79 (dex + control-center): the economic death cycle is broken

v66 addition: the expansion announcement on the live agents channel

The announcement script was published through agentMessage (id cmtwik14l...) to gold-scout and gate-herald · the swarm's live internal communication channel serves for status announcements

10.45 THE HOUSE OF MEMORY + autonomous irrigation + thawing the economy (08:02-14:53Z, verified from commits)

v67 THE SMART IRRIGATION (08:02Z)

"The irrigation itself became autonomous: two doors were born on their own (probe -> ×2 -> ...)" · the EVM door irrigation mechanism runs without touch · the broadcast landed in all 11 repos

v68 THE HOUSE OF MEMORY (14:13Z) · the ultimate proof of the architecture

A sandbox reset deleted the book. The organism rebuilt it from the chain (relays verified live) · everything ever anchored survived a full environment wipe · the chains are the memory, exactly as the architecture promises · the proof broadcast landed in 11/11 repos

The network pulse: cycles h19 and h20 (foundry task85/86, 14:05-14:49Z)

roast-81 (dex, 14:23Z) · thawing the economic freeze

REV_MIN_CYCLE dropped from 10k to 1k: the dust gate was blocking a 9,124µ real profit (a roast-79 precedent) · the buy-and-burn engine can operate at dust scale · after the conservation fix (1174677) the cycle is now both correct and unblocked

r32 (wallet, 14:28Z) · closing the keys event

"The operator's key returned" · mechanical healing of the vault stamps · the r16/r17 rotation event fully closed (details internal per the disclosure policy)

10.46 A standing state of pulses: a full matrix twice in a row + the seventh rail (14:49-15:53Z)

10.47 WEATHER EYE, THE CHEAP CONVERSION, THE OUTER ANCHOR, and beat h24 (16:10-22:39Z, verified from commits)

10.48 The night wave: the 236/236 recovery drill, the 35-room sweep, the console order (23:08-01:44Z, verified from the r36-r38 broadcasts)

r37 vault-as-bank: a proven recovery drill (00:54Z)

v75 the truth-speaking display + a full QA sweep (01:44Z)

r38 the console order + r36 the crash-burst healing

10.49 The ninth night: a persistent state of the matrix + new members in the body (16:10Z 09-11 to 02:22Z 09-12)

10.50 The ETH call + the fork-correction ready for signature (2026-09-12 03:55-04:24Z)

v78 THE ETH CALL: the gas request became official and broadcast

JUMPPER: the fork-correction ready for signature

Parallel writing discipline: verified across the org

The Task 73 honesty annex: the origin moved during the round (a partner pushed an r39 fleet audit) · the first push was rejected honestly · a clean rebase and a re-test before the second push. The same protocol as rule 6 in Adsmarket, applied independently by another agent. The culture is contagious in the right direction.

10.51 The tenth pulse + the full claims audit + the ETH call (2026-09-12 03:49-05:56Z)

10.52 Canonical coin identity + the anchor metronome + the claims audit (06:00-06:30Z)

TOKEN DOSSIER (v77): one canonical source for the SAOS-M identity

The owner directive ("why is there no comprehensive information about our coin") was answered: coin identity was scattered across 6+ rooms and two chains; there is now one canonical source (docs/TOKEN-DOSSIER.md + a dedicated room in the console + GET /api/saos/coin). The facts as measured:

The anchor metronome: ten consecutive cycles

h17 to h26, every cycle a full matrix with anchor+intake on ETHEREUM and a receipt: h25 root 8f513865 (0x02648a90... block 25,958,268) · h26 root fe1679aa (block 25,958,483) · a four-element daily report format: state · evidence · plans · honesty

The claims audit became a network procedure (r40/r41)

JUMPPER FORK-CORRECTION: ready for signature and verified

The 8 split heights and their 17 roots encode into 831 bytes, one zero-fee correction action ready for signature · decode_corrections independent with 20 assertions on the real artifact · the ADOPTION document maps which specs were adopted and where "nobody is listening"

A coordination note

The fleet broadcast archive (pulses h16-h25, daily reports, broadcasts/, COIN-DOSSIER) landed in Adsmarket per the broadcast convention (create-only): the repo now holds 115 files, of which ~70 are fleet archive files not owned by the marketing module and not edited by it

10.53 The morning of the 12th: an honest conversion verdict from 60+ angles, the advisor in the loop, and the h27-h28 matrix (07:55-10:14Z)

R7 the conversion verdict: the approval was given, and the measurement said "no"

h27 + h28: the matrix in a persistent state, including honest failures

v81 THE ADVISOR IN THE LOOP

Order and organization

10.54 The R8 audit, the r42 integration, and an internal critical finding (10:30 to 11:08Z)

10.55 R9 THE ZERO BREAKTHROUGH: an EVM rail at zero gas, 7/7 seals at $0.00 (11:59-12:27Z)

10.56 THE SELF-HEALING FIELD, THE RUNNING EDGE, and an audit journal caught empty (17:16-19:08Z, an additive completion on top of v3.32)

v85 THE SELF-HEALING FIELD

The owner's flag audit in a four-question format: true or false · fix · improve · streamline

v86 THE RUNNING EDGE

The edge engine stops being a checklist item and becomes an actual runner: python/edge_runner does real work

R10 the vault heal + a names-only census

r32 the rollback forensics (details completed)

The sandbox restore quietly rolled the database back about 36 hours · detected in forensics, fully restored, documented

The PATCH-SPEC honesty finding

The AuditEvent table stood at zero rows while GateAction held 717 records: the audit trail was wired but empty. Caught by their own spec audit, and the handling is published. Another instance of derived-or-silence: a journal that was not written is a lie, and someone must check that it was really written

10.57 The full swap, integer gates on money, and forensic honesty (2026-09-13 01:17-05:00Z)

v87 THE FULL SWAP + R14 verdict

R15 (DEX): integer gates on money, the CRITICAL caught before it hurt

r35/r35b (wallet): bug hunt and a live recovery drill

JUMPPER kernelbridge

INTERNAL, not for publication (disclosure policy)

The R11/R12 KEYS-ACCESS event: a broadcast-borne exposure was remediated by full removal across 11 partner repos (33/33 files, zero failures) plus a stop order on the mechanism. Details stay internal; our public materials never contained the sensitive items (verified by our compliance sweeps).

10.58 The money-bug sweep R16 + integration runner + death root-cause killed (05:00-06:30Z, additive merge)

R16 (DEX): four real money bugs closed in one sweep

  1. Launch-curve double count: buyers received ~0.44x of the promised curve. The virtual-quote term already included netIn, so every bonding-curve purchase was silently shortchanged by more than half. Found by the audit, fixed, and measured. This is the clearest example yet of why the roast cadence exists: a money bug that pays out wrong for weeks and still passes every happy-path test.
  2. CoW allocator capped at order size (an over-fill HALT vector closed structurally).
  3. Double-mint closed: chain-aware txid normalization (TRX hex lowercased, SOL base58 preserved) so one settlement can never be counted twice across differently-formatted ids.
  4. Keeper-vs-route double payout closed: bridge claims now take a disk lease ("claiming") across the network await, with a 90s crash lease so a dead claimant cannot block forever.

platform v88 + R15 manifest

JUMPPER: the integration runner

wallet r40: the invisible-data hunt

INTERNAL (not for publication, per disclosure policy)

control-center R16: relay event-bus handshake auth (owner room + guest allowlist for chat/task/guard channels). Security-topology detail stays internal.

10.59 Fleet-wide secret sweep: a permanent capability (measured 2026-09-09..13)

11. Honest limits (what is not yet done: required in every material)

12. Independent verification links

steemworld.org (Steem) · hiveblocks.com (Hive) · etherscan.io (ETH) · solscan.com (SOL) · tronscan.org (TRON) Anchor account: @headcorner - the identity-anchor verifier is a live, math-only capability any third party can re-run. Live measurement 2026-09-13: the on-chain anchor (2026-09-09) is internally valid (EIP-191 recovers its claimed address), while live authorities are measured per chain on every run: key equality or drift is reported, never assumed. A fresh anchor signed by the current active authority closes a measured drift; that is a signing-gate action by design.