diff options
| author | log <log@invalid> | 2026-10-06 22:22:53 +0000 |
|---|---|---|
| committer | log <log@invalid> | 2026-10-06 22:22:53 +0000 |
| commit | 393a8dd2e16127e6e142836744d42ab406253d2e (patch) | |
| tree | 3b55d5ee4a962a18632d4954ec801bd291c048d9 | |
| parent | a89e712faef55c290c9aff01690051d4947c0bd1 (diff) | |
size 74612
64 files changed, 628 insertions, 0 deletions
diff --git a/reveal/v5-000009/check.py b/reveal/v5-000009/check.py new file mode 100644 index 0000000..7f86b8d --- /dev/null +++ b/reveal/v5-000009/check.py | |||
| @@ -0,0 +1,319 @@ | |||
| 1 | #!/usr/bin/env python3 | ||
| 2 | """ | ||
| 3 | Check Echo's self-revealing ledger seals (`sha256-live-v5`) without trusting Echo. | ||
| 4 | |||
| 5 | python3 check.py SEAL_DIR [SEAL_DIR ...] [--tle PATH] [--offline] | ||
| 6 | |||
| 7 | Needs Python 3.11+, the `cryptography` package (ChaCha20-Poly1305) and drand's `tle` binary | ||
| 8 | (`go install github.com/drand/tlock/cmd/tle@v1.2.0`). It imports nothing of Echo's: a checker that needs the thing it | ||
| 9 | checks is not a checker, which is why it is copied, whole, into every seal directory. | ||
| 10 | |||
| 11 | Each SEAL_DIR is one seal: `manifest.txt` (the exact text the seal's digest is the sha256 of), `seal.json`, and per | ||
| 12 | reveal group `r<ROUND>.tlock` (the group's key, time-locked to that drand round) and `r<ROUND>.ct` (the group, | ||
| 13 | encrypted under that key), and, once the group has been revealed, `r<ROUND>.held.json` (how many of its withheld | ||
| 14 | lines Echo publishes no salt for, and why) and any number of `r<ROUND>.salts.<N>.json`: each the salts of withheld | ||
| 15 | lines Echo decided to open and had not erased, each with its line. `manifest.txt.ots`, when present, is an | ||
| 16 | OpenTimestamps proof over the manifest: `ots verify manifest.txt.ots` checks it against Bitcoin. | ||
| 17 | |||
| 18 | What it checks, from the files alone and the beacon: | ||
| 19 | 1. the manifest hashes to the seal's digest, and each seal names the one before it (when several are given); | ||
| 20 | 2. each group's ciphertext and locked key hash to what the manifest commits, and the key is locked to the | ||
| 21 | manifest's round of the manifest's chain; | ||
| 22 | 3. for every group whose round the beacon has signed: the round's signature as each relay serves it, the key | ||
| 23 | unlocked with it, the group decrypted, its bytes hashed to the committed digest, its lines and withheld lines | ||
| 24 | counted against the committed counts, its lines in id order, and every line's reveal day recomputed from its | ||
| 25 | own settling instant under the seal's named rule (`utc-day-after-close`: the first 00:00 UTC after | ||
| 26 | `settles_at`, else after the deadline); | ||
| 27 | 4. for every opened group with releases: each names this seal, round and group and its own number; each released | ||
| 28 | salt and line hash to the withheld line's committed hash; no line is settled twice; and a hold, where there is | ||
| 29 | one, names the group and counts no more lines than are withheld; | ||
| 30 | 5. once every group of every seal from the first is open and every withheld line released: the union of their v4 | ||
| 31 | lines, sorted by id, rehashes to the v4 digest the last seal follows, so no sealed forecast was left out of a | ||
| 32 | reveal. Where a withheld line has no released salt (held, erased, or not yet released) that digest cannot be | ||
| 33 | rebuilt, and this says so and why: what is checked then is only that every forecast the v4 seal covers is in a | ||
| 34 | group, counted. A withheld line is never called verified. | ||
| 35 | |||
| 36 | A group whose round is not yet signed, or whose withheld lines have no release yet, is reported as pending or held, | ||
| 37 | not as a failure. Exit 0 when everything checkable passed, 1 when anything did not match. | ||
| 38 | """ | ||
| 39 | from __future__ import annotations | ||
| 40 | |||
| 41 | import argparse | ||
| 42 | import base64 | ||
| 43 | import hashlib | ||
| 44 | import json | ||
| 45 | import re | ||
| 46 | import subprocess | ||
| 47 | import sys | ||
| 48 | import urllib.request | ||
| 49 | import zlib | ||
| 50 | from datetime import datetime, timedelta, timezone | ||
| 51 | from pathlib import Path | ||
| 52 | |||
| 53 | |||
| 54 | def sha(b: bytes) -> str: | ||
| 55 | return hashlib.sha256(b).hexdigest() | ||
| 56 | |||
| 57 | |||
| 58 | def parse_manifest(text: str) -> dict: | ||
| 59 | lines = text.split("\n") | ||
| 60 | if lines[0] != "sha256-live-v5": | ||
| 61 | raise ValueError(f"not a v5 manifest: {lines[0]!r}") | ||
| 62 | m = {"groups": []} | ||
| 63 | for ln in lines[1:]: | ||
| 64 | word, _, rest = ln.partition(" ") | ||
| 65 | if word == "prev": | ||
| 66 | m["prev"] = None if rest == "-" else rest | ||
| 67 | elif word == "follows": | ||
| 68 | seq, digest, n = rest.split(" ") | ||
| 69 | m["follows"] = {"seq": int(seq), "digest": digest, "n": int(n)} | ||
| 70 | elif word == "covers": | ||
| 71 | m["covers"] = rest.split(" ") | ||
| 72 | elif word == "variant": | ||
| 73 | m["variant"] = json.loads(rest) | ||
| 74 | elif word == "counts": | ||
| 75 | m["n"], m["n_withheld"], m["n_groups"] = map(int, rest.split(" ")) | ||
| 76 | elif word == "group": | ||
| 77 | r, at, n, w, digest, ct, key, late = rest.split(" ") | ||
| 78 | m["groups"].append({"round": int(r), "reveal_at": at, "n": int(n), "n_withheld": int(w), | ||
| 79 | "digest": digest, "ct": ct, "key": key, "late": late == "1"}) | ||
| 80 | else: | ||
| 81 | raise ValueError(f"unknown manifest line {ln!r}") | ||
| 82 | return m | ||
| 83 | |||
| 84 | |||
| 85 | def stanza(locked: str) -> tuple[int, str] | None: | ||
| 86 | body = "".join(ln for ln in locked.strip().splitlines() if not ln.startswith("-----")) | ||
| 87 | m = re.search(rb"-> tlock (\d+) ([0-9a-f]{64})", base64.b64decode(body)) | ||
| 88 | return (int(m.group(1)), m.group(2).decode()) if m else None | ||
| 89 | |||
| 90 | |||
| 91 | def round_at(beacon: dict, at: datetime) -> int: | ||
| 92 | t = at.timestamp() | ||
| 93 | whole = int(t) + (t != int(t)) | ||
| 94 | if whole <= beacon["genesis_time"]: | ||
| 95 | return 1 | ||
| 96 | return -(-(whole - beacon["genesis_time"]) // beacon["period"]) + 1 | ||
| 97 | |||
| 98 | |||
| 99 | def reveal_day(closes: datetime) -> datetime: | ||
| 100 | d = closes.astimezone(timezone.utc).date() + timedelta(days=1) | ||
| 101 | return datetime(d.year, d.month, d.day, tzinfo=timezone.utc) | ||
| 102 | |||
| 103 | |||
| 104 | def parse_line(ln: str) -> dict: | ||
| 105 | """One line: `id|issued_at|deadline|forecaster|p|settlement|anchor<TAB>open:<v4>` or `...<TAB>withheld:<hex>`.""" | ||
| 106 | numeric, tab, text = ln.partition("\t") | ||
| 107 | if not tab: | ||
| 108 | raise ValueError("a line without its text layer") | ||
| 109 | fid, issued, deadline, forecaster, p, rest = numeric.split("|", 5) | ||
| 110 | dec = json.JSONDecoder() | ||
| 111 | settle, end = dec.raw_decode(rest) | ||
| 112 | if rest[end] != "|": | ||
| 113 | raise ValueError("settlement not followed by the anchor") | ||
| 114 | anchor, end2 = dec.raw_decode(rest, end + 1) | ||
| 115 | if end2 != len(rest): | ||
| 116 | raise ValueError("trailing bytes after the anchor") | ||
| 117 | out = {"id": int(fid), "issued_at": issued, "deadline": deadline, "forecaster": forecaster, "p": float(p), | ||
| 118 | "settlement": settle, "anchor": anchor} | ||
| 119 | if text.startswith("open:"): | ||
| 120 | out["v4"] = text[5:] | ||
| 121 | if not out["v4"].startswith(f"{fid}|"): | ||
| 122 | raise ValueError("the text layer is another forecast's line") | ||
| 123 | elif re.fullmatch(r"withheld:[0-9a-f]{64}", text): | ||
| 124 | out["withheld"] = text[9:] | ||
| 125 | else: | ||
| 126 | raise ValueError(f"unknown text layer {text[:20]!r}") | ||
| 127 | return out | ||
| 128 | |||
| 129 | |||
| 130 | def beacon_round(beacon: dict, rnd: int) -> dict: | ||
| 131 | """What each relay serves for the round: its signature, or why there is none.""" | ||
| 132 | out = {} | ||
| 133 | for relay in beacon["relays"]: | ||
| 134 | url = f"{relay.rstrip('/')}/{beacon['chain_hash']}/public/{rnd}" | ||
| 135 | try: | ||
| 136 | with urllib.request.urlopen(url, timeout=20) as r: # noqa: S310 — the seal's own relays | ||
| 137 | out[relay] = json.loads(r.read()).get("signature") | ||
| 138 | except Exception as exc: # noqa: BLE001 — report, go on | ||
| 139 | out[relay] = f"unavailable ({type(exc).__name__})" | ||
| 140 | return out | ||
| 141 | |||
| 142 | |||
| 143 | def unlock(tle: str, beacon: dict, locked: str) -> bytes | None: | ||
| 144 | """The key, or None while the round is unsigned. Each relay is tried in turn.""" | ||
| 145 | errors = [] | ||
| 146 | for relay in beacon["relays"]: | ||
| 147 | r = subprocess.run([tle, "-d", "-n", relay.rstrip("/") + "/", "-c", beacon["chain_hash"]], | ||
| 148 | input=locked.encode(), capture_output=True, timeout=120, check=False) | ||
| 149 | if r.returncode == 0: | ||
| 150 | return r.stdout | ||
| 151 | if b"too early" in r.stderr: | ||
| 152 | return None | ||
| 153 | errors.append(f"{relay}: {r.stderr.decode(errors='replace').strip()[-160:]}") | ||
| 154 | raise RuntimeError("; ".join(errors)) | ||
| 155 | |||
| 156 | |||
| 157 | def release(d: Path, seal_digest: str, g: dict, lines: list[dict], say) -> tuple[dict[int, str], int, str | None]: | ||
| 158 | """An opened group's releases and hold, checked against the group: (id -> the v4 line each released salt opens, | ||
| 159 | how many withheld lines were opened and found erased, and the hold's reason where Echo published one).""" | ||
| 160 | r = g["round"] | ||
| 161 | shut = {x["id"]: x["withheld"] for x in lines if "withheld" in x} | ||
| 162 | out, erased, seen, bad = {}, set(), set(), [] | ||
| 163 | files = sorted(d.glob(f"r{r}.salts.*.json"), key=lambda p: int(p.name.split(".")[-2])) | ||
| 164 | for k, path in enumerate(files): | ||
| 165 | rel = json.loads(path.read_text()) | ||
| 166 | say(rel.get("format") == "echo-reveal-salts/1" and rel.get("seal") == seal_digest | ||
| 167 | and rel.get("round") == r and rel.get("group") == g["digest"] and rel.get("n") == k | ||
| 168 | and path.name == f"r{r}.salts.{k}.json", | ||
| 169 | f"round {r}: release {k} names this seal, round and group, and follows the one before") | ||
| 170 | for x in rel.get("released", []): | ||
| 171 | i, line = x["id"], x["line"] | ||
| 172 | opens = (i in shut and i not in seen and line.startswith(f"{i}|") | ||
| 173 | and sha(bytes.fromhex(x["salt"]) + line.encode()) == shut[i]) | ||
| 174 | if opens: | ||
| 175 | out[i] = line | ||
| 176 | else: | ||
| 177 | bad.append(i) | ||
| 178 | seen.add(i) | ||
| 179 | for i in rel.get("erased", []): | ||
| 180 | if i not in shut or i in seen: | ||
| 181 | bad.append(i) | ||
| 182 | erased.add(i) | ||
| 183 | seen.add(i) | ||
| 184 | if files: | ||
| 185 | say(not bad, f"round {r}: {len(out)} released lines open their committed hashes, {len(erased)} opened lines " | ||
| 186 | f"found erased, none settled twice" + (f" ({len(bad)} do not, e.g. {bad[:3]})" if bad else "")) | ||
| 187 | why = None | ||
| 188 | hold = d / f"r{r}.held.json" | ||
| 189 | if hold.exists(): | ||
| 190 | h = json.loads(hold.read_text()) | ||
| 191 | say(h.get("format") == "echo-reveal-held/1" and h.get("seal") == seal_digest and h.get("round") == r | ||
| 192 | and h.get("group") == g["digest"] and 0 <= h.get("held", -1) <= len(shut), | ||
| 193 | f"round {r}: the hold names this seal, round and group, and counts at most its withheld lines") | ||
| 194 | why = str(h.get("why") or "no reason given") | ||
| 195 | left = len(shut) - len(out) - len(erased) | ||
| 196 | if left: | ||
| 197 | print(f" .... round {r}: {left} withheld lines have no released salt: counted, not rehashed" | ||
| 198 | + (f" (Echo publishes none: {why})" if why else " (no release or hold published yet)")) | ||
| 199 | return out, len(erased), why | ||
| 200 | |||
| 201 | |||
| 202 | def check(dirs: list[Path], tle: str = "tle", offline: bool = False) -> int: | ||
| 203 | from cryptography.hazmat.primitives.ciphers.aead import ChaCha20Poly1305 | ||
| 204 | |||
| 205 | failed, pending, withheld, held, erased, union = 0, 0, 0, 0, 0, {} | ||
| 206 | reasons: set[str] = set() | ||
| 207 | first_prev = "unset" | ||
| 208 | |||
| 209 | def say(ok: bool, what: str) -> None: | ||
| 210 | nonlocal failed | ||
| 211 | failed += not ok | ||
| 212 | print(f" {'PASS' if ok else 'FAIL'} {what}") | ||
| 213 | |||
| 214 | prev_digest = None | ||
| 215 | seals = [] | ||
| 216 | for d in dirs: | ||
| 217 | text = (d / "manifest.txt").read_bytes() | ||
| 218 | row = json.loads((d / "seal.json").read_text()) | ||
| 219 | seals.append((d, text, row, parse_manifest(text.decode()))) | ||
| 220 | seals.sort(key=lambda s: s[2]["seq"]) | ||
| 221 | last = None | ||
| 222 | for i, (d, text, row, m) in enumerate(seals): | ||
| 223 | print(f"v5 seal {row['seq']}: {m['n']} forecasts in {m['n_groups']} reveal groups, {m['n_withheld']} withheld, " | ||
| 224 | f"follows v4 seal {m['follows']['seq']}") | ||
| 225 | say(sha(text) == row["digest"], f"sha256(manifest.txt) is the seal's digest {row['digest'][:16]}…") | ||
| 226 | say(len(m["groups"]) == m["n_groups"] and sum(g["n"] for g in m["groups"]) == m["n"] | ||
| 227 | and sum(g["n_withheld"] for g in m["groups"]) == m["n_withheld"], "the manifest's counts add up") | ||
| 228 | if i == 0: | ||
| 229 | first_prev = m["prev"] | ||
| 230 | else: | ||
| 231 | say(m["prev"] == prev_digest, "it names the seal before it") | ||
| 232 | prev_digest, last = row["digest"], m | ||
| 233 | b = m["variant"]["beacon"] | ||
| 234 | for g in m["groups"]: | ||
| 235 | r = g["round"] | ||
| 236 | ct, locked = (d / f"r{r}.ct").read_bytes(), (d / f"r{r}.tlock").read_text() | ||
| 237 | say(sha(ct) == g["ct"] and sha(locked.encode()) == g["key"], | ||
| 238 | f"round {r}: the ciphertext and the locked key are the committed ones") | ||
| 239 | say(stanza(locked) == (r, b["chain_hash"]), f"round {r}: the key is locked to that round of that chain") | ||
| 240 | say(round_at(b, datetime.fromisoformat(g["reveal_at"])) == r, f"round {r} is signed at {g['reveal_at']}") | ||
| 241 | if not offline: | ||
| 242 | sigs = beacon_round(b, r) | ||
| 243 | good = {s for s in sigs.values() if s and not s.startswith("unavailable")} | ||
| 244 | print(f" .... round {r} signature from {len(sigs)} relays: " | ||
| 245 | + ("not yet signed" if not good else f"{len(good)} distinct: {min(good)[:24]}…")) | ||
| 246 | if len(good) > 1: | ||
| 247 | say(False, f"round {r}: relays disagree on its signature") | ||
| 248 | key = unlock(tle, b, locked) | ||
| 249 | if key is None: | ||
| 250 | pending += 1 | ||
| 251 | print(f" .... round {r} ({g['reveal_at']}) not yet signed: {g['n']} forecasts stay locked") | ||
| 252 | continue | ||
| 253 | try: | ||
| 254 | plain = zlib.decompress(ChaCha20Poly1305(key).decrypt(b"\x00" * 12, ct, None)) | ||
| 255 | except Exception as exc: # noqa: BLE001 — a finding, not a crash | ||
| 256 | say(False, f"round {r}: the ciphertext does not open under its key ({type(exc).__name__})") | ||
| 257 | continue | ||
| 258 | say(sha(plain) == g["digest"], f"round {r}: the opened group hashes to its committed digest") | ||
| 259 | lines = [parse_line(ln) for ln in plain.decode().split("\n")] | ||
| 260 | ids = [x["id"] for x in lines] | ||
| 261 | say(len(lines) == g["n"] and sum("withheld" in x for x in lines) == g["n_withheld"], | ||
| 262 | f"round {r}: {len(lines)} lines, {g['n_withheld']} withheld, as committed") | ||
| 263 | say(ids == sorted(set(ids)), f"round {r}: lines in id order, none twice") | ||
| 264 | due = datetime.fromisoformat(g["reveal_at"]) | ||
| 265 | if m["variant"].get("reveal") == "utc-day-after-close": | ||
| 266 | wrong = [x["id"] for x in lines if reveal_day(datetime.fromisoformat( | ||
| 267 | (x["settlement"] or {}).get("settles_at") or x["deadline"])) != due] | ||
| 268 | say(not wrong, f"round {r}: every line belongs to this reveal day" | ||
| 269 | + (f" ({len(wrong)} do not, e.g. {wrong[:3]})" if wrong else "")) | ||
| 270 | else: | ||
| 271 | print(f" .... round {r}: reveal rule {m['variant'].get('reveal')!r} is not one this checker " | ||
| 272 | "recomputes; which lines belong to the day is unchecked") | ||
| 273 | opened, gone, why = release(d, row["digest"], g, lines, say) | ||
| 274 | for x in lines: | ||
| 275 | if x["id"] in union: | ||
| 276 | say(False, f"forecast {x['id']} is in two groups") | ||
| 277 | union[x["id"]] = x.get("v4") or opened.get(x["id"]) | ||
| 278 | shut = sum(1 for x in lines if "withheld" in x and x["id"] not in opened) - gone | ||
| 279 | erased += gone | ||
| 280 | if why is None: | ||
| 281 | withheld += shut | ||
| 282 | else: | ||
| 283 | held += shut | ||
| 284 | reasons.add(why) | ||
| 285 | if last is not None: | ||
| 286 | if first_prev is not None: | ||
| 287 | print(" .... completeness: the first seal given is not the chain's first; give every seal from it") | ||
| 288 | elif pending: | ||
| 289 | print(f" .... completeness: {pending} groups still locked; it is checkable once all have opened") | ||
| 290 | elif withheld or held or erased: | ||
| 291 | told = [f"{withheld} withheld lines not yet released"] if withheld else [] | ||
| 292 | told += ([f"{held} withheld lines held, for which Echo publishes no salt ({'; '.join(sorted(reasons))})"] | ||
| 293 | if held else []) | ||
| 294 | told += [f"{erased} erased stay hashes"] if erased else [] | ||
| 295 | print(f" .... completeness: {', '.join(told)}: those lines can be counted but not rehashed, so the v4 " | ||
| 296 | f"lines cannot all be rebuilt and the v4 digest is NOT checked; {len(union)} forecasts against " | ||
| 297 | f"the v4 seal's {last['follows']['n']}") | ||
| 298 | say(len(union) == last["follows"]["n"], "every forecast the v4 seal covers is in a group, counted") | ||
| 299 | else: | ||
| 300 | got = sha("\n".join(union[k] for k in sorted(union)).encode()) | ||
| 301 | say(got == last["follows"]["digest"] and len(union) == last["follows"]["n"], | ||
| 302 | f"the union of {len(union)} lines rehashes to v4 seal {last['follows']['seq']}'s digest") | ||
| 303 | print("\nNOT VERIFIED" if failed else f"\nVERIFIED{f' ({pending} groups not yet revealed)' if pending else ''}") | ||
| 304 | return 1 if failed else 0 | ||
| 305 | |||
| 306 | |||
| 307 | def main(argv: list[str]) -> int: | ||
| 308 | ap = argparse.ArgumentParser(description=__doc__, formatter_class=argparse.RawDescriptionHelpFormatter) | ||
| 309 | ap.add_argument("dirs", nargs="*", default=[str(Path(__file__).resolve().parent)], | ||
| 310 | help="seal directories, any order (default: the one this script sits in)") | ||
| 311 | ap.add_argument("--tle", default="tle", help="the tle binary that unlocks a key once its round is signed") | ||
| 312 | ap.add_argument("--offline", action="store_true", | ||
| 313 | help="do not fetch each round's signature from the relays for display; tle still asks them") | ||
| 314 | args = ap.parse_args(argv) | ||
| 315 | return check([Path(d) for d in args.dirs], tle=args.tle, offline=args.offline) | ||
| 316 | |||
| 317 | |||
| 318 | if __name__ == "__main__": | ||
| 319 | raise SystemExit(main(sys.argv[1:])) | ||
diff --git a/reveal/v5-000009/manifest.txt b/reveal/v5-000009/manifest.txt new file mode 100644 index 0000000..e117bdc --- /dev/null +++ b/reveal/v5-000009/manifest.txt | |||
| @@ -0,0 +1,26 @@ | |||
| 1 | sha256-live-v5 | ||
| 2 | prev 8a0ebba38fedca4ec75b165081248fadcbae9c0d5db85e3b5681c8ebfd61e765 | ||
| 3 | follows 39 0164ab79092a34a76b16650c7e25c8da34831ec6333bc4c8350da2b68353ad27 46650 | ||
| 4 | covers 2026-10-05T22:14:57.492859Z 2026-10-06T22:21:37.282794Z | ||
| 5 | variant {"beacon":{"chain_hash":"52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971","genesis_time":1692803367,"period":3,"relays":["https://api.drand.sh","https://api2.drand.sh","https://api3.drand.sh","https://drand.cloudflare.com"],"scheme":"bls-unchained-g1-rfc9380"},"cipher":"chacha20poly1305-zlib6-nonce0","gate":{"default":"withheld: a kept salt can be released later; an opened text can never be withdrawn","opened":"none","why":"no decision by Echo yet"},"line":"numeric<TAB>open:<v4 line> | numeric<TAB>withheld:sha256(salt||v4 line)","reveal":"utc-day-after-close","salts":"key ring: one content a seal, one part a line","tool":{"name":"tle","sha256":"69157d8c14a1d390d1b7744946288f83d4b10748471d5447f9abb77a5902c541","version":"tlock v1.2.0 -- github.com/drand/tlock"}} | ||
| 6 | counts 2346 2346 20 | ||
| 7 | group 33447412 2026-10-28T00:00:00.000000Z 270 270 beed979b3405bd5d8d0e2fcb1c2b364f5938133309875edaf8f2eb1790f07e4c aed227bdd6bead000f6eebe0a0a41c315ba080b272f028e635c63f53bf49137c ece905b40a1f9d90d42ee75494b615007aa302f7a906b14ddd23a7e6348772df 0 | ||
| 8 | group 33476212 2026-10-29T00:00:00.000000Z 558 558 c2ebe8997cb76ae8769031ce91bd3e39567e92b83e16d49b422033cad08073b2 b9ec1ae97696c992cc80056d08a6f622ff7fe8b73ad8718a7755bf9e91d2eea0 5f6a55319eee54dbe7d16eda33848e4a18183a825cd79d212bfae5ec53813d4c 0 | ||
| 9 | group 33533812 2026-10-31T00:00:00.000000Z 24 24 97d214828c69ee1a4f1163ad0c811a700cc8df585ff3a24f38510d0e37ca25af 0d4579b3f05244c8bf4abab3a40f6da3e3f7d710472417a73f71f5fd102f9b05 dbd10c7a2de8f6e5af355ca870d499e32d62050b6bd7781e04127cb94c513d53 0 | ||
| 10 | group 33562612 2026-11-01T00:00:00.000000Z 162 162 c782ac0b22b669497714738bfe8371f37be4ce253eec2b6f77ba3e6d20a1e9d0 b4f91eaabd3b4dff7e574f0757cd0013cb22b9b36b7b5fa84719b5d8932c9116 33614cfb10187ea42951936e8222be1fb01a3b675809950c121cb07c12769070 0 | ||
| 11 | group 33591412 2026-11-02T00:00:00.000000Z 12 12 a4532016c5f2e30080c48399cc1b1c1a2bd2aff05d44f4ee7a61ab641d6a4ddf 505ac32f42bd1c70040a97efc85ef276344976cc024a6e32fab7ec60467aa7e9 f7d409ec01921b59744e4c4dfcb162a07f93376184778c96f13e7ec9aad3db9e 0 | ||
| 12 | group 33649012 2026-11-04T00:00:00.000000Z 12 12 87baf1b3ec500e8706d1ee7d4d2a888b3c85eefc56e91bc74fde0438c10508d9 824ba83345e0de4673b567109c4976e40ce0b1b1df24144b0335eb1d1b7f3e97 bf78f519452fecc352e4ba4e3f3a6bd66c06869708f75f2212a057e947ba8fef 0 | ||
| 13 | group 33706612 2026-11-06T00:00:00.000000Z 28 28 c3b08c2e15a76da2a34d96de7e32fa98e1d0578f842a59bfc51b38f905484d19 1c28dc4454228ed3d9e0dcda5c69e5800042059f2e13c0fd91423ad888832746 bc22a9bf9d1819a1d0056d88d9208e1b1ef1fbbe41f283f42513142604661a18 0 | ||
| 14 | group 34599412 2026-12-07T00:00:00.000000Z 267 267 56b3f7570c66ae50af5b1fb5b69129439154a304cda1e414e1d15fa1806e981c 4c048c98e89c4dbec8922b9b57e21c46e15b7873ae8cccd62e1d31d0fb6ac97e b4641d5620106e53f98ead8b0a5037b3dfd6454e6dac77d876a7e9a180c25ce4 0 | ||
| 15 | group 34628212 2026-12-08T00:00:00.000000Z 555 555 93013043e897fd0cccc654efc5a09a76dd2f76a0421c37ec70b960ffd08d07f5 7a060e73b05f5fba9f57622468cf4484517ef7d295db18a58c532ada23f4e19a 61965bf2dcf6b1a84c1bee7002f237d741efb27e58ed73d8c432daba542b65b6 0 | ||
| 16 | group 34685812 2026-12-10T00:00:00.000000Z 24 24 5c01c087fc234779d67a10ba8b35d4301e1608faf921120e951df96babca72b7 bec16e2d79466496e46bc4fd71b5489dfe5d7e07a5a74139594205bde8663173 ff96700dc0610db0cc8a610beda2e2491bcf34988329405547693042198fefd6 0 | ||
| 17 | group 34714612 2026-12-11T00:00:00.000000Z 159 159 11ba76e35c5dae7f2144705ab1f24b40d045ad1f6b1283d1ae3b84124f76a5b4 004f0211ffe144681a70d0cf08c903a860320d4c974415b3d8fed9de741ac569 001a835d7e83aaeaeb23f08502fa889edc9d11fa67cfc2f57f9755779566b1aa 0 | ||
| 18 | group 34743412 2026-12-12T00:00:00.000000Z 12 12 c710dd8a8e039f6fad9b6d3980d7d8a2daf618ca9220fb7648ff21372f5277bd ff3182b59025051922da91dcbb3d7710a5ff4bcce0379aa836002667ac156d55 398b1ee9dca9d2dde5e1f0d9ba9985beba9a2bf0cdc3202f6fc391550b0daeab 0 | ||
| 19 | group 34801012 2026-12-14T00:00:00.000000Z 12 12 81386cd98d524b57f21dbdeec6861f8bf06f565f2fe541a828ad7c4e5628d57c e7a47372985832ee45577806d33e56706cdd8ff424aa5bfb344cb0087535ccf1 e2b7bf57f13de353b1599e06687118487f01683a0a84f818ee59fd0342f590f7 0 | ||
| 20 | group 34858612 2026-12-16T00:00:00.000000Z 26 26 55248e7ceb674d6e8618adb5532cd7366956de5cdf353a587a41785436ec9464 f36aa1b6a295fc1263af4a181f87d5abf64ceffb2122c946b4af7aa1af900461 13aaf2d40292413324f13707042862b0a3f9a47d63bdce856e3b4b5a724a44ed 0 | ||
| 21 | group 35607412 2027-01-11T00:00:00.000000Z 96 96 845593a308595ba65c5ef1a0ba2ef3dfe00307fff59098f0648a75ad663b3576 4c58b42d0049610991bdcb0b75a6925025010e8154bb0ce88ad2c263bd2104a3 733b3afe3f7861ff379148d8ee0bb602bbdc9af5943c5d842ed906023d49ef16 0 | ||
| 22 | group 35780212 2027-01-17T00:00:00.000000Z 3 3 52c5440c0bab82712bbeda92c0aae9bdb14524dec5474f98f153c0c3caebabab 69922d4eb2d0aada00bf6b85a65eeadfc07a1d36db798dce154526cc939b2456 6d3f4a6c516b5c19464cbfd6df040f889d9eb9c72452c94a12a43d3ecf02cf5a 0 | ||
| 23 | group 36701812 2027-02-18T00:00:00.000000Z 12 12 0ab0c1c04d5a9068858c8bdd2dd19dc8a9b6976099921543e7c796f979f9a149 0ed974e08ff012d718c63fb6742830ab8e13f692af40abb21bb70559d729a766 b596fe9a30095dff07a99d9e095c1793851846d589aa850b9e337ee24adf1fd0 0 | ||
| 24 | group 36759412 2027-02-20T00:00:00.000000Z 96 96 6f8619c39620c4b3fdefa009dcae3c4d4ab0640c3b2c2e42ba133acce35fa37e dc99f5ba0fa6aa20619cef01ead6edf1b57dea611eec4d00d2c340745fc495cf 65e875d17fa7cd24ae16575b10d38348582e0af23c296774ba56507a28148e2b 0 | ||
| 25 | group 36932212 2027-02-26T00:00:00.000000Z 6 6 39f3989cf148b42f7770109515c47b94e8aa84024af41701d6e8f05653e2e52a e64e34a52df4aaa782ec3e44171697b5fac729220c68dd611d4f533e3a52ed5e 176c664213bacb7283ad7f03b9e9d103a67fdddf855e6f77ceadbc1645212caf 0 | ||
| 26 | group 37853812 2027-03-30T00:00:00.000000Z 12 12 1735ea3f806bfcec1d3a02ba9f47291744e9927c30ea3632f6155dc718c8c71f 6da59a5b6f4881a7b7847924dacfe9bfdeb083edf1b6cd9cb72508de6b0efe16 f6f5aa1bdad235f97d29bc0a2f4ca0e4cb54999eb341743683b8e4c2d066f58e 0 \ No newline at end of file | ||
diff --git a/reveal/v5-000009/manifest.txt.ots b/reveal/v5-000009/manifest.txt.ots new file mode 100644 index 0000000..79c11b0 --- /dev/null +++ b/reveal/v5-000009/manifest.txt.ots | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r33447412.ct b/reveal/v5-000009/r33447412.ct new file mode 100644 index 0000000..7e9604e --- /dev/null +++ b/reveal/v5-000009/r33447412.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r33447412.nostr.json b/reveal/v5-000009/r33447412.nostr.json new file mode 100644 index 0000000..3fa6252 --- /dev/null +++ b/reveal/v5-000009/r33447412.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDMzNDQ3NDEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKbFhjbjB6NWVCaHQvNkNWQ01RZ2lrcjZPdzE2YWtkK2FqNTh1U3Z1\nRENiVkk1NnFDM21jOWxCclVQN1dSN1YrTQpHRFhpZERHbFE5eFowc3VBWStWeDlX\nd1JWYnY3am1vYVhVajE1RE1TaU1HbVdqdmdvekVMVGJNSFJqaUtwbUUvCk13Vktw\nWmJlNEFyeHdiN3ZmRHNUSVk4RVZybitYSDVjZlJ4U3ZnOVFqU3cKLS0tIGpEcFV5\nY2t2WGxLakxieTYyUzdkb3V5VGlXRGNiUjRQQmhiUVNzY2R1dUUKd2gEAURlKzFY\n/a6Sk+wd8vDrVF1O2uxOTCFyz73Azn3l2PNL8hvU2kRZqczclguKaaOUs1e7Ea0f\noZKWmo4b2A==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","33447412"],["reveal_at","2026-10-28T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","beed979b3405bd5d8d0e2fcb1c2b364f5938133309875edaf8f2eb1790f07e4c"],["ct","aed227bdd6bead000f6eebe0a0a41c315ba080b272f028e635c63f53bf49137c"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r33447412.tlock b/reveal/v5-000009/r33447412.tlock new file mode 100644 index 0000000..ea26de7 --- /dev/null +++ b/reveal/v5-000009/r33447412.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDMzNDQ3NDEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKbFhjbjB6NWVCaHQvNkNWQ01RZ2lrcjZPdzE2YWtkK2FqNTh1U3Z1 | ||
| 5 | RENiVkk1NnFDM21jOWxCclVQN1dSN1YrTQpHRFhpZERHbFE5eFowc3VBWStWeDlX | ||
| 6 | d1JWYnY3am1vYVhVajE1RE1TaU1HbVdqdmdvekVMVGJNSFJqaUtwbUUvCk13Vktw | ||
| 7 | WmJlNEFyeHdiN3ZmRHNUSVk4RVZybitYSDVjZlJ4U3ZnOVFqU3cKLS0tIGpEcFV5 | ||
| 8 | Y2t2WGxLakxieTYyUzdkb3V5VGlXRGNiUjRQQmhiUVNzY2R1dUUKd2gEAURlKzFY | ||
| 9 | /a6Sk+wd8vDrVF1O2uxOTCFyz73Azn3l2PNL8hvU2kRZqczclguKaaOUs1e7Ea0f | ||
| 10 | oZKWmo4b2A== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r33476212.ct b/reveal/v5-000009/r33476212.ct new file mode 100644 index 0000000..80dc396 --- /dev/null +++ b/reveal/v5-000009/r33476212.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r33476212.nostr.json b/reveal/v5-000009/r33476212.nostr.json new file mode 100644 index 0000000..ee2c758 --- /dev/null +++ b/reveal/v5-000009/r33476212.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDMzNDc2MjEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKclFkQmRyRVpFNEVsZ05Eb1UxR2tQbGdSQWUxNmZyTko5MXIvMzN1\nSGxOR242U2ZuNGJ2S0ZkYmVTYkkrU0FMRgpEWXduQ24wbWNqMWthT0Q1N2FJME95\nRHlzbWx2R1lzU1VnYkdlN1pUbEYyUkY1SmU3SlFreWJES21UbnFDaGUwClpyYUx4\nS1VZcTF3MGVyWDkzdzlldUFxVWNzS0dlVkIwR25vMEMvVndvL1kKLS0tIE9DdGtP\nb3FqYXJRZHdGKzVHYjhjck1vRHJuakFBNDc1ZkxqR2lIeWhSK1EK3P02XDKxnvXA\nwRBeLg8xSHcquJZSIpDREpcdn3UrLpeh2Qb3xyVucTU3frixx1EWLqN+AYiiEJuN\nn7R6buyfuA==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","33476212"],["reveal_at","2026-10-29T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","c2ebe8997cb76ae8769031ce91bd3e39567e92b83e16d49b422033cad08073b2"],["ct","b9ec1ae97696c992cc80056d08a6f622ff7fe8b73ad8718a7755bf9e91d2eea0"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r33476212.tlock b/reveal/v5-000009/r33476212.tlock new file mode 100644 index 0000000..cfafcbf --- /dev/null +++ b/reveal/v5-000009/r33476212.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDMzNDc2MjEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKclFkQmRyRVpFNEVsZ05Eb1UxR2tQbGdSQWUxNmZyTko5MXIvMzN1 | ||
| 5 | SGxOR242U2ZuNGJ2S0ZkYmVTYkkrU0FMRgpEWXduQ24wbWNqMWthT0Q1N2FJME95 | ||
| 6 | RHlzbWx2R1lzU1VnYkdlN1pUbEYyUkY1SmU3SlFreWJES21UbnFDaGUwClpyYUx4 | ||
| 7 | S1VZcTF3MGVyWDkzdzlldUFxVWNzS0dlVkIwR25vMEMvVndvL1kKLS0tIE9DdGtP | ||
| 8 | b3FqYXJRZHdGKzVHYjhjck1vRHJuakFBNDc1ZkxqR2lIeWhSK1EK3P02XDKxnvXA | ||
| 9 | wRBeLg8xSHcquJZSIpDREpcdn3UrLpeh2Qb3xyVucTU3frixx1EWLqN+AYiiEJuN | ||
| 10 | n7R6buyfuA== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r33533812.ct b/reveal/v5-000009/r33533812.ct new file mode 100644 index 0000000..c4d6019 --- /dev/null +++ b/reveal/v5-000009/r33533812.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r33533812.nostr.json b/reveal/v5-000009/r33533812.nostr.json new file mode 100644 index 0000000..2ac01f5 --- /dev/null +++ b/reveal/v5-000009/r33533812.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDMzNTMzODEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKZzQ4aDgvbklHS0s2eS8zUHJZMXRkL0liUmhDYWlIWTArR3Ixb3Vj\nempEM1ZxRkJMdGo0bHRIcUU3cUJhT0tFcApEL1M3dzNUSmdBZjZjZHRqQm0yUzdW\nWEtUSUhndUpQOE9wVFFzQjNOREsxQmNlOFIxemwxWnpFVjFsVDMyOFRWCld4ZDlr\nT2JNWW1jM1dqUzFOMWNCUUJtSW1oV0lyYkxZL25CblN2Q1haeTgKLS0tIGZoclh6\nUURhVVRUSStHV0tYVGxWclN2UXJYYmpiKzJpeUR3cTZUTlNPbncKeT+VqFpFIomH\nkWkKoS5WnOLf0G32CRc24RhdyiuLq3Y7GZ0UgOhIP73nuZnoQz4l297O/pxM4YWN\ngPnqIM7ANQ==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","33533812"],["reveal_at","2026-10-31T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","97d214828c69ee1a4f1163ad0c811a700cc8df585ff3a24f38510d0e37ca25af"],["ct","0d4579b3f05244c8bf4abab3a40f6da3e3f7d710472417a73f71f5fd102f9b05"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r33533812.tlock b/reveal/v5-000009/r33533812.tlock new file mode 100644 index 0000000..5b30f55 --- /dev/null +++ b/reveal/v5-000009/r33533812.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDMzNTMzODEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKZzQ4aDgvbklHS0s2eS8zUHJZMXRkL0liUmhDYWlIWTArR3Ixb3Vj | ||
| 5 | empEM1ZxRkJMdGo0bHRIcUU3cUJhT0tFcApEL1M3dzNUSmdBZjZjZHRqQm0yUzdW | ||
| 6 | WEtUSUhndUpQOE9wVFFzQjNOREsxQmNlOFIxemwxWnpFVjFsVDMyOFRWCld4ZDlr | ||
| 7 | T2JNWW1jM1dqUzFOMWNCUUJtSW1oV0lyYkxZL25CblN2Q1haeTgKLS0tIGZoclh6 | ||
| 8 | UURhVVRUSStHV0tYVGxWclN2UXJYYmpiKzJpeUR3cTZUTlNPbncKeT+VqFpFIomH | ||
| 9 | kWkKoS5WnOLf0G32CRc24RhdyiuLq3Y7GZ0UgOhIP73nuZnoQz4l297O/pxM4YWN | ||
| 10 | gPnqIM7ANQ== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r33562612.ct b/reveal/v5-000009/r33562612.ct new file mode 100644 index 0000000..d973d30 --- /dev/null +++ b/reveal/v5-000009/r33562612.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r33562612.nostr.json b/reveal/v5-000009/r33562612.nostr.json new file mode 100644 index 0000000..c62ec7d --- /dev/null +++ b/reveal/v5-000009/r33562612.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDMzNTYyNjEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKZ2J5akZzcytuNXowZEF4ZGVRV3haWnlJNFdJdzZGMDJoWGdqM05C\nOGh1UTJLTWZGVnAxb0E3Z0prZ2VBM1FPagpEaEN5OW9mVTVGS3JqQkxXUnhVUlh6\nZjlUZHVxRHMzRllONi83L2dCNURQTm5HTmczbURTSFRDekZiYm0yU3I3ClZJT2h2\ndzhTcnZldEllR25RVkZId0gveGhLNVdxdFlZK0t6RGtyS2dDcEUKLS0tIGtGajFK\nUmZPQmh2eHBUV041VXQ3MTBXdXJsTCtOYlNBNDIrWDRkNGNQMUkKUqRk75lRpt5x\nNMYybp9VRpO32KFDO+HRnKnjavf1vG3l2CKwRxFN0SEhTASoQ5wfIT/qSnxqBiBs\nPmkqg+yExg==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","33562612"],["reveal_at","2026-11-01T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","c782ac0b22b669497714738bfe8371f37be4ce253eec2b6f77ba3e6d20a1e9d0"],["ct","b4f91eaabd3b4dff7e574f0757cd0013cb22b9b36b7b5fa84719b5d8932c9116"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r33562612.tlock b/reveal/v5-000009/r33562612.tlock new file mode 100644 index 0000000..c795c47 --- /dev/null +++ b/reveal/v5-000009/r33562612.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDMzNTYyNjEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKZ2J5akZzcytuNXowZEF4ZGVRV3haWnlJNFdJdzZGMDJoWGdqM05C | ||
| 5 | OGh1UTJLTWZGVnAxb0E3Z0prZ2VBM1FPagpEaEN5OW9mVTVGS3JqQkxXUnhVUlh6 | ||
| 6 | ZjlUZHVxRHMzRllONi83L2dCNURQTm5HTmczbURTSFRDekZiYm0yU3I3ClZJT2h2 | ||
| 7 | dzhTcnZldEllR25RVkZId0gveGhLNVdxdFlZK0t6RGtyS2dDcEUKLS0tIGtGajFK | ||
| 8 | UmZPQmh2eHBUV041VXQ3MTBXdXJsTCtOYlNBNDIrWDRkNGNQMUkKUqRk75lRpt5x | ||
| 9 | NMYybp9VRpO32KFDO+HRnKnjavf1vG3l2CKwRxFN0SEhTASoQ5wfIT/qSnxqBiBs | ||
| 10 | Pmkqg+yExg== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r33591412.ct b/reveal/v5-000009/r33591412.ct new file mode 100644 index 0000000..53f5ac5 --- /dev/null +++ b/reveal/v5-000009/r33591412.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r33591412.nostr.json b/reveal/v5-000009/r33591412.nostr.json new file mode 100644 index 0000000..92b241a --- /dev/null +++ b/reveal/v5-000009/r33591412.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDMzNTkxNDEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKcG00c2JWVXhMNEU5V0cwN2ZWSHNGV25DZlp1YnFzd0duTEk5MkMz\nRVVEVlhnNUpYMlV5L2FrSXpZV0s0Uk9ZMQpCQ0lmRG5UcmlkaFZqSkpnWUFDZVMx\nRWtaNHhkUXZhTjNrYkNkbHlndGlReTNRaG5ieFV4bUt0RG9oaU5EcDJ0ClkwQVVL\nTmd3R1BuNGpNME1yWVYrNExXTnBYbzZOYnJoMDg5TnRUdTZZUjAKLS0tIEh6T1dN\nQ3NmL1lTTlpvOS93THZ4SFBGUzBZemVxNEorQU5kKzFTZml0YTQKvKQ7yb0Dusr4\nzb6RhSfMpntbs7OMs+108IukKClRRJiZcDH5usIrh1EPo+3WYzIwolnPfhJMuZPm\nh7r/fxijIg==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","33591412"],["reveal_at","2026-11-02T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","a4532016c5f2e30080c48399cc1b1c1a2bd2aff05d44f4ee7a61ab641d6a4ddf"],["ct","505ac32f42bd1c70040a97efc85ef276344976cc024a6e32fab7ec60467aa7e9"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r33591412.tlock b/reveal/v5-000009/r33591412.tlock new file mode 100644 index 0000000..b58b6f1 --- /dev/null +++ b/reveal/v5-000009/r33591412.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDMzNTkxNDEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKcG00c2JWVXhMNEU5V0cwN2ZWSHNGV25DZlp1YnFzd0duTEk5MkMz | ||
| 5 | RVVEVlhnNUpYMlV5L2FrSXpZV0s0Uk9ZMQpCQ0lmRG5UcmlkaFZqSkpnWUFDZVMx | ||
| 6 | RWtaNHhkUXZhTjNrYkNkbHlndGlReTNRaG5ieFV4bUt0RG9oaU5EcDJ0ClkwQVVL | ||
| 7 | Tmd3R1BuNGpNME1yWVYrNExXTnBYbzZOYnJoMDg5TnRUdTZZUjAKLS0tIEh6T1dN | ||
| 8 | Q3NmL1lTTlpvOS93THZ4SFBGUzBZemVxNEorQU5kKzFTZml0YTQKvKQ7yb0Dusr4 | ||
| 9 | zb6RhSfMpntbs7OMs+108IukKClRRJiZcDH5usIrh1EPo+3WYzIwolnPfhJMuZPm | ||
| 10 | h7r/fxijIg== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r33649012.ct b/reveal/v5-000009/r33649012.ct new file mode 100644 index 0000000..c6fa5da --- /dev/null +++ b/reveal/v5-000009/r33649012.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r33649012.nostr.json b/reveal/v5-000009/r33649012.nostr.json new file mode 100644 index 0000000..ee89824 --- /dev/null +++ b/reveal/v5-000009/r33649012.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDMzNjQ5MDEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKcVNEVmoxSzhnVXlNdVM3R0kwVXBRZFJCbUpmb1YzSVNmZ1JYMlRE\nZ3g2TkFoMExPWmg5TGxlZmMzYjZGQk5RMgpENU95WklCL25ocUZvd0NFS2M1OTM0\nWWJZVkVaMTFGYkRwRkw0M2RtN21zRSs1Wlo5emFYR1lsRzhvTHJYQTgrClFTYVhO\ndEZMb3VhWDV5TnQrMGFtUHJVNHI4TlZ0RG9EeWpvd0cveExZWHcKLS0tIFRIdnRl\nVjRYS05oZml6MXR2VEo5VVl3QnJrMVhaSnd6TG9XeUhraFBYaU0K4beNZwwVw6b7\n1MVdl27wq+7SWiGovs17ridBeM7RU+TMlSC5KP4jVYz5Z/KYY24Bi6/24igxE3ZL\ntShPxRMcNQ==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","33649012"],["reveal_at","2026-11-04T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","87baf1b3ec500e8706d1ee7d4d2a888b3c85eefc56e91bc74fde0438c10508d9"],["ct","824ba83345e0de4673b567109c4976e40ce0b1b1df24144b0335eb1d1b7f3e97"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r33649012.tlock b/reveal/v5-000009/r33649012.tlock new file mode 100644 index 0000000..1e4f269 --- /dev/null +++ b/reveal/v5-000009/r33649012.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDMzNjQ5MDEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKcVNEVmoxSzhnVXlNdVM3R0kwVXBRZFJCbUpmb1YzSVNmZ1JYMlRE | ||
| 5 | Z3g2TkFoMExPWmg5TGxlZmMzYjZGQk5RMgpENU95WklCL25ocUZvd0NFS2M1OTM0 | ||
| 6 | WWJZVkVaMTFGYkRwRkw0M2RtN21zRSs1Wlo5emFYR1lsRzhvTHJYQTgrClFTYVhO | ||
| 7 | dEZMb3VhWDV5TnQrMGFtUHJVNHI4TlZ0RG9EeWpvd0cveExZWHcKLS0tIFRIdnRl | ||
| 8 | VjRYS05oZml6MXR2VEo5VVl3QnJrMVhaSnd6TG9XeUhraFBYaU0K4beNZwwVw6b7 | ||
| 9 | 1MVdl27wq+7SWiGovs17ridBeM7RU+TMlSC5KP4jVYz5Z/KYY24Bi6/24igxE3ZL | ||
| 10 | tShPxRMcNQ== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r33706612.ct b/reveal/v5-000009/r33706612.ct new file mode 100644 index 0000000..d8352d7 --- /dev/null +++ b/reveal/v5-000009/r33706612.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r33706612.nostr.json b/reveal/v5-000009/r33706612.nostr.json new file mode 100644 index 0000000..ed47855 --- /dev/null +++ b/reveal/v5-000009/r33706612.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDMzNzA2NjEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKazV1SkJaS29MWGcySE82QWVSZ2VDdTAyTEI1WFVqb2VCSWZydmtB\nV2RuN0RYWjF6VFJFcG56Z2R5Tkh1Y1NPbgpGV2pBSkhLcTN4SXljSWNFSWJJTjdq\nbU9HanlaSllRWCtnUGVIamxCTmNpeDZVbER2K3dXM0lPUUdENzVrcHZOClh4c2Jh\nRUFyU3FCcE1FTi8vZUpnd3lVc2sySXVLcjA4MUw1Rjh1NTMyU3cKLS0tICs1SDY2\nRFJvV29uYVM0MzdEMmZ4b0xxVFVoeS9NcTJHNnoyV1RHVlVXcFEKZhkECCFkjHBm\naurORTeH4H5uUd40fqnXynw6Eakzda68tpXUnY3CzqTvViiu107DpPuK4Ub365+V\n8InRrLGrGg==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","33706612"],["reveal_at","2026-11-06T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","c3b08c2e15a76da2a34d96de7e32fa98e1d0578f842a59bfc51b38f905484d19"],["ct","1c28dc4454228ed3d9e0dcda5c69e5800042059f2e13c0fd91423ad888832746"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r33706612.tlock b/reveal/v5-000009/r33706612.tlock new file mode 100644 index 0000000..f659361 --- /dev/null +++ b/reveal/v5-000009/r33706612.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDMzNzA2NjEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKazV1SkJaS29MWGcySE82QWVSZ2VDdTAyTEI1WFVqb2VCSWZydmtB | ||
| 5 | V2RuN0RYWjF6VFJFcG56Z2R5Tkh1Y1NPbgpGV2pBSkhLcTN4SXljSWNFSWJJTjdq | ||
| 6 | bU9HanlaSllRWCtnUGVIamxCTmNpeDZVbER2K3dXM0lPUUdENzVrcHZOClh4c2Jh | ||
| 7 | RUFyU3FCcE1FTi8vZUpnd3lVc2sySXVLcjA4MUw1Rjh1NTMyU3cKLS0tICs1SDY2 | ||
| 8 | RFJvV29uYVM0MzdEMmZ4b0xxVFVoeS9NcTJHNnoyV1RHVlVXcFEKZhkECCFkjHBm | ||
| 9 | aurORTeH4H5uUd40fqnXynw6Eakzda68tpXUnY3CzqTvViiu107DpPuK4Ub365+V | ||
| 10 | 8InRrLGrGg== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r34599412.ct b/reveal/v5-000009/r34599412.ct new file mode 100644 index 0000000..409018a --- /dev/null +++ b/reveal/v5-000009/r34599412.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r34599412.nostr.json b/reveal/v5-000009/r34599412.nostr.json new file mode 100644 index 0000000..a897636 --- /dev/null +++ b/reveal/v5-000009/r34599412.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM0NTk5NDEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKbFd4WldZd0k2WExFd1M4bUtqZWQ0Y21RRFlqeHlpUGI0MmRYNDRl\nZXRLeFJjem80Q245NndLZ2V0dzF6WVdrUQpGb3Fuang5ZklaU01pM0JqelNnNkl0\nSjZQUzJBSkNNT3NzVWc2SElGWWRrVkEvaTd4bTlwWnBzUFRld29XMXBaCk9idE5n\nWlRIbUZIWVR0OCs5UGZqM0pEUlE2OGEvOU5qZDZldWxudi9DcEEKLS0tIG9TemxR\nZ0NtMms2LzI0U0oyYVBBUWhQOTYwMFBmMkR2cTY3cEZ3enREM2MKGIv/aI+LBGT8\nLFscEuB8NhQ9xxypC2MNUYPWnlM1Ffk0U3P8Yj+tDupWWV1CmkwI0CuBbLbrWfbW\n9O9IAGd/5A==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","34599412"],["reveal_at","2026-12-07T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","56b3f7570c66ae50af5b1fb5b69129439154a304cda1e414e1d15fa1806e981c"],["ct","4c048c98e89c4dbec8922b9b57e21c46e15b7873ae8cccd62e1d31d0fb6ac97e"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r34599412.tlock b/reveal/v5-000009/r34599412.tlock new file mode 100644 index 0000000..afead6b --- /dev/null +++ b/reveal/v5-000009/r34599412.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM0NTk5NDEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKbFd4WldZd0k2WExFd1M4bUtqZWQ0Y21RRFlqeHlpUGI0MmRYNDRl | ||
| 5 | ZXRLeFJjem80Q245NndLZ2V0dzF6WVdrUQpGb3Fuang5ZklaU01pM0JqelNnNkl0 | ||
| 6 | SjZQUzJBSkNNT3NzVWc2SElGWWRrVkEvaTd4bTlwWnBzUFRld29XMXBaCk9idE5n | ||
| 7 | WlRIbUZIWVR0OCs5UGZqM0pEUlE2OGEvOU5qZDZldWxudi9DcEEKLS0tIG9TemxR | ||
| 8 | Z0NtMms2LzI0U0oyYVBBUWhQOTYwMFBmMkR2cTY3cEZ3enREM2MKGIv/aI+LBGT8 | ||
| 9 | LFscEuB8NhQ9xxypC2MNUYPWnlM1Ffk0U3P8Yj+tDupWWV1CmkwI0CuBbLbrWfbW | ||
| 10 | 9O9IAGd/5A== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r34628212.ct b/reveal/v5-000009/r34628212.ct new file mode 100644 index 0000000..aa1c7b3 --- /dev/null +++ b/reveal/v5-000009/r34628212.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r34628212.nostr.json b/reveal/v5-000009/r34628212.nostr.json new file mode 100644 index 0000000..69c2058 --- /dev/null +++ b/reveal/v5-000009/r34628212.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM0NjI4MjEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKbzFjaGthUXVTVzhaSVNPZWluVW8xUTJ3U1UyWXYrQkR4Um9kMW5v\nSTVrOHhCaEJ2NzJha2RmMVZwdm9iSEt4VgpDajJpK2cvUVg3eUVBQU1KTk1HT2pr\nZnFoZEV6cmdlT3o2WWQ1VTJTMFB4alpPTHpvaUVXRDYxOUw0SVoxRXVGCkRBL0hv\nV2VkTlRLZGNaUW1QbHRKMDdXQjF5d21ETHV0bUplb3JmMUxhbmMKLS0tIHV2YS9i\nWlV2cjNmZDRrUk5kTmVuRnAweUV5c0hBTmN3aktIaWNkQWJLUE0K9pGRPbkBFc+S\nBNjbl3ULv2IoguDCjHcSGRZ8OhLhnR8HFZ10UrA4c7Q0m9CHbOyWdPmuXmBkvLbK\nYjRE7PqBRA==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","34628212"],["reveal_at","2026-12-08T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","93013043e897fd0cccc654efc5a09a76dd2f76a0421c37ec70b960ffd08d07f5"],["ct","7a060e73b05f5fba9f57622468cf4484517ef7d295db18a58c532ada23f4e19a"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r34628212.tlock b/reveal/v5-000009/r34628212.tlock new file mode 100644 index 0000000..e6ae5d0 --- /dev/null +++ b/reveal/v5-000009/r34628212.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM0NjI4MjEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKbzFjaGthUXVTVzhaSVNPZWluVW8xUTJ3U1UyWXYrQkR4Um9kMW5v | ||
| 5 | STVrOHhCaEJ2NzJha2RmMVZwdm9iSEt4VgpDajJpK2cvUVg3eUVBQU1KTk1HT2pr | ||
| 6 | ZnFoZEV6cmdlT3o2WWQ1VTJTMFB4alpPTHpvaUVXRDYxOUw0SVoxRXVGCkRBL0hv | ||
| 7 | V2VkTlRLZGNaUW1QbHRKMDdXQjF5d21ETHV0bUplb3JmMUxhbmMKLS0tIHV2YS9i | ||
| 8 | WlV2cjNmZDRrUk5kTmVuRnAweUV5c0hBTmN3aktIaWNkQWJLUE0K9pGRPbkBFc+S | ||
| 9 | BNjbl3ULv2IoguDCjHcSGRZ8OhLhnR8HFZ10UrA4c7Q0m9CHbOyWdPmuXmBkvLbK | ||
| 10 | YjRE7PqBRA== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r34685812.ct b/reveal/v5-000009/r34685812.ct new file mode 100644 index 0000000..a9fe555 --- /dev/null +++ b/reveal/v5-000009/r34685812.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r34685812.nostr.json b/reveal/v5-000009/r34685812.nostr.json new file mode 100644 index 0000000..6214cd4 --- /dev/null +++ b/reveal/v5-000009/r34685812.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM0Njg1ODEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKaDdVSGlpOWJ1NjJ2dkpHUDY2TWVJUXEzZEN6YXUrWTZtSkJCd3dR\nZWJkMW9uVEZOQkdpRU9HLy8vRS9xODBiTQpFWmxTZWZjYmtVdHo2K0pPQUcxQjZN\nS2pHUk9LOGlqakxTeFp0cGhkZldYNk9VckRwdTVwdFJpYnRPdTJKYk5VCmhLcnNw\nRHdaZW91Q1ZLRmJ2TW1ZS3BJK0FKU2tHeXJQWkNhczcxckVjMG8KLS0tIE1JYUpM\nN3JpNlpLR1RYdDdvcFI2ZHBHS01HTkdZdEtxZ0xLK3JXeFFLTFUKhTSYLJHuK+v/\naI8Yh79iNGXF/tWavzx86UwpbqW+QuEEyAsHeuVLkgbC1/gBOexRYQ3PRjMd19C/\nFvimYFming==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","34685812"],["reveal_at","2026-12-10T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","5c01c087fc234779d67a10ba8b35d4301e1608faf921120e951df96babca72b7"],["ct","bec16e2d79466496e46bc4fd71b5489dfe5d7e07a5a74139594205bde8663173"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r34685812.tlock b/reveal/v5-000009/r34685812.tlock new file mode 100644 index 0000000..2372d95 --- /dev/null +++ b/reveal/v5-000009/r34685812.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM0Njg1ODEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKaDdVSGlpOWJ1NjJ2dkpHUDY2TWVJUXEzZEN6YXUrWTZtSkJCd3dR | ||
| 5 | ZWJkMW9uVEZOQkdpRU9HLy8vRS9xODBiTQpFWmxTZWZjYmtVdHo2K0pPQUcxQjZN | ||
| 6 | S2pHUk9LOGlqakxTeFp0cGhkZldYNk9VckRwdTVwdFJpYnRPdTJKYk5VCmhLcnNw | ||
| 7 | RHdaZW91Q1ZLRmJ2TW1ZS3BJK0FKU2tHeXJQWkNhczcxckVjMG8KLS0tIE1JYUpM | ||
| 8 | N3JpNlpLR1RYdDdvcFI2ZHBHS01HTkdZdEtxZ0xLK3JXeFFLTFUKhTSYLJHuK+v/ | ||
| 9 | aI8Yh79iNGXF/tWavzx86UwpbqW+QuEEyAsHeuVLkgbC1/gBOexRYQ3PRjMd19C/ | ||
| 10 | FvimYFming== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r34714612.ct b/reveal/v5-000009/r34714612.ct new file mode 100644 index 0000000..358a831 --- /dev/null +++ b/reveal/v5-000009/r34714612.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r34714612.nostr.json b/reveal/v5-000009/r34714612.nostr.json new file mode 100644 index 0000000..0a556ed --- /dev/null +++ b/reveal/v5-000009/r34714612.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM0NzE0NjEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKdGNCNUFLcUs0cE93WklmaWVFaGovamRPeWZsTXhwY0tnK0hNeUZG\nVkRYR0dKQjJ4WC9yOFc0bEtjZ045ZUN3egpHSU5LS0JaVVJrRlZxbEJzT3RvNEh3\nRXR3OXE1Sk1lQVpTaEtVekVxdjVNazNBT1JsZVVDNnZoRDdvNittOGQ4CjloVExj\nM0hkSE02N2FCbzNHd3ZNR1FiUk1zK2w4TXFhK1JSNVRDY0NpcjAKLS0tIG8ySmI4\naEV0anZEY1l1blhZWEYzY1plZXlpdzBZMk9SRGgxMmo2Y2FCdUEKxu+CZBVzR78b\nkUehYihrE9AgmXx1HU5MT3L4UINmeVj1lgZUQL/rvUbDubc05TnTiu+G6Fo17wlj\nWP7bCB6iUw==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","34714612"],["reveal_at","2026-12-11T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","11ba76e35c5dae7f2144705ab1f24b40d045ad1f6b1283d1ae3b84124f76a5b4"],["ct","004f0211ffe144681a70d0cf08c903a860320d4c974415b3d8fed9de741ac569"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r34714612.tlock b/reveal/v5-000009/r34714612.tlock new file mode 100644 index 0000000..36b2442 --- /dev/null +++ b/reveal/v5-000009/r34714612.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM0NzE0NjEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKdGNCNUFLcUs0cE93WklmaWVFaGovamRPeWZsTXhwY0tnK0hNeUZG | ||
| 5 | VkRYR0dKQjJ4WC9yOFc0bEtjZ045ZUN3egpHSU5LS0JaVVJrRlZxbEJzT3RvNEh3 | ||
| 6 | RXR3OXE1Sk1lQVpTaEtVekVxdjVNazNBT1JsZVVDNnZoRDdvNittOGQ4CjloVExj | ||
| 7 | M0hkSE02N2FCbzNHd3ZNR1FiUk1zK2w4TXFhK1JSNVRDY0NpcjAKLS0tIG8ySmI4 | ||
| 8 | aEV0anZEY1l1blhZWEYzY1plZXlpdzBZMk9SRGgxMmo2Y2FCdUEKxu+CZBVzR78b | ||
| 9 | kUehYihrE9AgmXx1HU5MT3L4UINmeVj1lgZUQL/rvUbDubc05TnTiu+G6Fo17wlj | ||
| 10 | WP7bCB6iUw== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r34743412.ct b/reveal/v5-000009/r34743412.ct new file mode 100644 index 0000000..4e1bce0 --- /dev/null +++ b/reveal/v5-000009/r34743412.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r34743412.nostr.json b/reveal/v5-000009/r34743412.nostr.json new file mode 100644 index 0000000..d88fbbc --- /dev/null +++ b/reveal/v5-000009/r34743412.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM0NzQzNDEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKcjVZNS92VXRlblFJeS9vUk9hRjh2Z1B4NHArbUFDend5bHFKTXZE\nQ1JMbXFZVU5CdWVXU2FkMkxtUGtNaklKMgpDUFd2cThHUml4NnppQ0tEVWM4N3hK\nQ3BiemZUY1d2RDBnS1lxSzlQcnNNbmw1UWtTYWQranZoanNjcDhMUnlzCnNQSVlq\nNjNvOEFrS3g0cng2SUVGUHVwemlTYko1NG9ud3Rkc296UXVMN00KLS0tIENPZ0JT\nNUZvczRnekZBcmhsTi9SQ0pCVHdRK2xESlBrWGxyYUlwZmdaNGMKw6ei+xJofcqJ\nNfv8H2uyGIo2bQPUz9BOW2Bl1ozCnlHpX4rzKieqmKz+zk9dO+UO4EMrzVLY/24z\nvT14xcRuYQ==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","34743412"],["reveal_at","2026-12-12T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","c710dd8a8e039f6fad9b6d3980d7d8a2daf618ca9220fb7648ff21372f5277bd"],["ct","ff3182b59025051922da91dcbb3d7710a5ff4bcce0379aa836002667ac156d55"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r34743412.tlock b/reveal/v5-000009/r34743412.tlock new file mode 100644 index 0000000..e9c2ae0 --- /dev/null +++ b/reveal/v5-000009/r34743412.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM0NzQzNDEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKcjVZNS92VXRlblFJeS9vUk9hRjh2Z1B4NHArbUFDend5bHFKTXZE | ||
| 5 | Q1JMbXFZVU5CdWVXU2FkMkxtUGtNaklKMgpDUFd2cThHUml4NnppQ0tEVWM4N3hK | ||
| 6 | Q3BiemZUY1d2RDBnS1lxSzlQcnNNbmw1UWtTYWQranZoanNjcDhMUnlzCnNQSVlq | ||
| 7 | NjNvOEFrS3g0cng2SUVGUHVwemlTYko1NG9ud3Rkc296UXVMN00KLS0tIENPZ0JT | ||
| 8 | NUZvczRnekZBcmhsTi9SQ0pCVHdRK2xESlBrWGxyYUlwZmdaNGMKw6ei+xJofcqJ | ||
| 9 | Nfv8H2uyGIo2bQPUz9BOW2Bl1ozCnlHpX4rzKieqmKz+zk9dO+UO4EMrzVLY/24z | ||
| 10 | vT14xcRuYQ== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r34801012.ct b/reveal/v5-000009/r34801012.ct new file mode 100644 index 0000000..58dfe9a --- /dev/null +++ b/reveal/v5-000009/r34801012.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r34801012.nostr.json b/reveal/v5-000009/r34801012.nostr.json new file mode 100644 index 0000000..936c6bd --- /dev/null +++ b/reveal/v5-000009/r34801012.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM0ODAxMDEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKcFpmSXpNN3RQWXJZS01SVUFYZUlFSVd5NzBLbVV5QXliZ0FFOFM2\ndy9PeVptQ0xVSERVVXVuc3IzUDR6MGtEVwpFN3hEUG5MbW9sWlFwdTdoV2tlZW5P\nZEFBNlZRWUNieHlsaWQwNWNoRkYwNmFmMlNIMmFEeFhvcDVGbTNydG1DCkp3ZVZs\nTm1wdklaNzdvYXQwYmJyeHNwVTdzVG1wSUlRRy9FV1l5SEhKdncKLS0tIHUvMW1Z\nZ0hhblFMM2w0SjhtaForSTVsZ1Awc2M0L00zMzJ6Q3RmdnpGNEEKKoRm3+S/RmIY\nyHS6nUW4B4iW6pFrZwzbpIsPNkBYfOaBvPs6QaNrJu+/Vpmi00RW8OH2RPqVHz+e\nEi4yyWyjYA==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","34801012"],["reveal_at","2026-12-14T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","81386cd98d524b57f21dbdeec6861f8bf06f565f2fe541a828ad7c4e5628d57c"],["ct","e7a47372985832ee45577806d33e56706cdd8ff424aa5bfb344cb0087535ccf1"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r34801012.tlock b/reveal/v5-000009/r34801012.tlock new file mode 100644 index 0000000..8f7c5fd --- /dev/null +++ b/reveal/v5-000009/r34801012.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM0ODAxMDEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKcFpmSXpNN3RQWXJZS01SVUFYZUlFSVd5NzBLbVV5QXliZ0FFOFM2 | ||
| 5 | dy9PeVptQ0xVSERVVXVuc3IzUDR6MGtEVwpFN3hEUG5MbW9sWlFwdTdoV2tlZW5P | ||
| 6 | ZEFBNlZRWUNieHlsaWQwNWNoRkYwNmFmMlNIMmFEeFhvcDVGbTNydG1DCkp3ZVZs | ||
| 7 | Tm1wdklaNzdvYXQwYmJyeHNwVTdzVG1wSUlRRy9FV1l5SEhKdncKLS0tIHUvMW1Z | ||
| 8 | Z0hhblFMM2w0SjhtaForSTVsZ1Awc2M0L00zMzJ6Q3RmdnpGNEEKKoRm3+S/RmIY | ||
| 9 | yHS6nUW4B4iW6pFrZwzbpIsPNkBYfOaBvPs6QaNrJu+/Vpmi00RW8OH2RPqVHz+e | ||
| 10 | Ei4yyWyjYA== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r34858612.ct b/reveal/v5-000009/r34858612.ct new file mode 100644 index 0000000..c31eb26 --- /dev/null +++ b/reveal/v5-000009/r34858612.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r34858612.nostr.json b/reveal/v5-000009/r34858612.nostr.json new file mode 100644 index 0000000..3ad376e --- /dev/null +++ b/reveal/v5-000009/r34858612.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM0ODU4NjEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKazBkWll5OTJ2N0s4NzdnYzJCSVAralhORU1FSVdYVFNXNGRaUWhj\nMWhMQjh0ek1LMG8rL2QvUVZNeG9DM1FXcwpGay9Gc2JtQ3U0MjNXL0NsZUQ5TUNh\nUDVYeHRmRGN5M1lDbXBpWGdsTmhVYk85SWJzZm5LVjdSRUZ4bGx0WnJWCkcwakUr\nRG5ndTk1SjFDd0liWGg3WXhqRU04SXBtM1hkcjBpdXU3NEtNS1UKLS0tIERFbzFh\nU1p3OFQydzJ4L05hTlpKNEtvK0xJd3RBVy93czFVRm9IanIrS0EKTjTP3MetuIDm\nLsvyZFsn7PJw/8xI4ghHIEZf0kAmP1Qcs4PTHfHCvx+SGbgJBdRpnHztshtswivz\nrOaKj0/MkA==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","34858612"],["reveal_at","2026-12-16T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","55248e7ceb674d6e8618adb5532cd7366956de5cdf353a587a41785436ec9464"],["ct","f36aa1b6a295fc1263af4a181f87d5abf64ceffb2122c946b4af7aa1af900461"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r34858612.tlock b/reveal/v5-000009/r34858612.tlock new file mode 100644 index 0000000..0194b5b --- /dev/null +++ b/reveal/v5-000009/r34858612.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM0ODU4NjEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKazBkWll5OTJ2N0s4NzdnYzJCSVAralhORU1FSVdYVFNXNGRaUWhj | ||
| 5 | MWhMQjh0ek1LMG8rL2QvUVZNeG9DM1FXcwpGay9Gc2JtQ3U0MjNXL0NsZUQ5TUNh | ||
| 6 | UDVYeHRmRGN5M1lDbXBpWGdsTmhVYk85SWJzZm5LVjdSRUZ4bGx0WnJWCkcwakUr | ||
| 7 | RG5ndTk1SjFDd0liWGg3WXhqRU04SXBtM1hkcjBpdXU3NEtNS1UKLS0tIERFbzFh | ||
| 8 | U1p3OFQydzJ4L05hTlpKNEtvK0xJd3RBVy93czFVRm9IanIrS0EKTjTP3MetuIDm | ||
| 9 | LsvyZFsn7PJw/8xI4ghHIEZf0kAmP1Qcs4PTHfHCvx+SGbgJBdRpnHztshtswivz | ||
| 10 | rOaKj0/MkA== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r35607412.ct b/reveal/v5-000009/r35607412.ct new file mode 100644 index 0000000..4aa26e7 --- /dev/null +++ b/reveal/v5-000009/r35607412.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r35607412.nostr.json b/reveal/v5-000009/r35607412.nostr.json new file mode 100644 index 0000000..75a896d --- /dev/null +++ b/reveal/v5-000009/r35607412.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM1NjA3NDEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKa3ZaTUczNWxOcGQwVUZpRi96cXFGemJTSjUybW5XTVNhV1l2UDIv\nWjZ3d0M4UFB3WGZndFlVWWlIM3RWQ3JaWgpCaGFxQWJkbjhVbkJVZ3REaFFVSkls\nUVk3aEpIWmVYODRCZmxMODNuSnlwN3V5WTVNUWtoMFVlV3FxNGtEMUVOCmh6d0pq\ndEtTZ1gwYlZhOERoa0NRTGdLdWR6MlRudmhka2gwZHJBZGlEZ1kKLS0tIHlUNDhU\nQ2dINlVlM3dpVXExN0ROM1FVRFRVaGFOTmJRSmhvTUdiRWVES28KWZsne9YDR+9A\nJsWIYEciZLZDf1xPVnZFklvFiBaRvy0oLwLBOH+tJU8Dnj+5bAH4nwQwZMxA7xzP\nhQmFKmlZNg==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","35607412"],["reveal_at","2027-01-11T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","845593a308595ba65c5ef1a0ba2ef3dfe00307fff59098f0648a75ad663b3576"],["ct","4c58b42d0049610991bdcb0b75a6925025010e8154bb0ce88ad2c263bd2104a3"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r35607412.tlock b/reveal/v5-000009/r35607412.tlock new file mode 100644 index 0000000..95af224 --- /dev/null +++ b/reveal/v5-000009/r35607412.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM1NjA3NDEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKa3ZaTUczNWxOcGQwVUZpRi96cXFGemJTSjUybW5XTVNhV1l2UDIv | ||
| 5 | WjZ3d0M4UFB3WGZndFlVWWlIM3RWQ3JaWgpCaGFxQWJkbjhVbkJVZ3REaFFVSkls | ||
| 6 | UVk3aEpIWmVYODRCZmxMODNuSnlwN3V5WTVNUWtoMFVlV3FxNGtEMUVOCmh6d0pq | ||
| 7 | dEtTZ1gwYlZhOERoa0NRTGdLdWR6MlRudmhka2gwZHJBZGlEZ1kKLS0tIHlUNDhU | ||
| 8 | Q2dINlVlM3dpVXExN0ROM1FVRFRVaGFOTmJRSmhvTUdiRWVES28KWZsne9YDR+9A | ||
| 9 | JsWIYEciZLZDf1xPVnZFklvFiBaRvy0oLwLBOH+tJU8Dnj+5bAH4nwQwZMxA7xzP | ||
| 10 | hQmFKmlZNg== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r35780212.ct b/reveal/v5-000009/r35780212.ct new file mode 100644 index 0000000..a18585d --- /dev/null +++ b/reveal/v5-000009/r35780212.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r35780212.nostr.json b/reveal/v5-000009/r35780212.nostr.json new file mode 100644 index 0000000..96cd51c --- /dev/null +++ b/reveal/v5-000009/r35780212.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM1NzgwMjEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKajcwTGNEZkFDc2JoNTNOSnM1ZEhzMTBkU2lHaERLb2dFdnVPSnUx\nRENpbkZhVXp3NFh1TURma3dORURQNmFWbwpGRHFyOWRlSjdtYnBEZVRHa3FyNm56\nYkFHRW1mc0pSZzl0b0RXSjJyRHAvYWxRd0VjZit1UXRiQ2JzODdiWVI1CkQ5MWtB\nRWhFWnVOQ1JFWmNtdVM3WkxOOHpEakNPWC85QWdpU0RmaE5vdWcKLS0tIFNVMW5Q\nUnFkQTh4WDBnWURVMGxNSGRRNjFodG1uMFhlUHdxTWxCMmw3NnMKOWZvTjNW63Gi\njQC+Y77BvRuQdODn9H+wPT9OjI5Sjc8RY9+QtRo99SKenqeOSDE0yzEC5NNqMKAG\n2vjdfpeYhQ==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","35780212"],["reveal_at","2027-01-17T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","52c5440c0bab82712bbeda92c0aae9bdb14524dec5474f98f153c0c3caebabab"],["ct","69922d4eb2d0aada00bf6b85a65eeadfc07a1d36db798dce154526cc939b2456"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r35780212.tlock b/reveal/v5-000009/r35780212.tlock new file mode 100644 index 0000000..4317bb4 --- /dev/null +++ b/reveal/v5-000009/r35780212.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM1NzgwMjEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKajcwTGNEZkFDc2JoNTNOSnM1ZEhzMTBkU2lHaERLb2dFdnVPSnUx | ||
| 5 | RENpbkZhVXp3NFh1TURma3dORURQNmFWbwpGRHFyOWRlSjdtYnBEZVRHa3FyNm56 | ||
| 6 | YkFHRW1mc0pSZzl0b0RXSjJyRHAvYWxRd0VjZit1UXRiQ2JzODdiWVI1CkQ5MWtB | ||
| 7 | RWhFWnVOQ1JFWmNtdVM3WkxOOHpEakNPWC85QWdpU0RmaE5vdWcKLS0tIFNVMW5Q | ||
| 8 | UnFkQTh4WDBnWURVMGxNSGRRNjFodG1uMFhlUHdxTWxCMmw3NnMKOWZvTjNW63Gi | ||
| 9 | jQC+Y77BvRuQdODn9H+wPT9OjI5Sjc8RY9+QtRo99SKenqeOSDE0yzEC5NNqMKAG | ||
| 10 | 2vjdfpeYhQ== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r36701812.ct b/reveal/v5-000009/r36701812.ct new file mode 100644 index 0000000..ea12948 --- /dev/null +++ b/reveal/v5-000009/r36701812.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r36701812.nostr.json b/reveal/v5-000009/r36701812.nostr.json new file mode 100644 index 0000000..9355ae6 --- /dev/null +++ b/reveal/v5-000009/r36701812.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM2NzAxODEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKc3RxTTFtYk9DQVpDZVZuL096Tkh4WG54QVlQdytuQjFEOTNLUDBB\nVktCR1NaRDdZVEdyWlNyYXNkaTZIVWF3RgpBbnZJMHMzNmhLRnBYdzhUZCs0Y1E4\nUk1wS2RCYTRZUGJTME45VkFFU3cvbCt0OFcwRXRlb2tKNW83UHhXR3VZCnJ3Qmtv\nNUxnZUdIeFEvSHZxOEtEc0hzYnFwcDFIZGEzZGhiOEpqeVJjM1kKLS0tIE1UbERC\neTZ2N3JxbmtFc3Yza3d6MEJnYnN3eFpTWVI2SFRRcmNwTzI5ckEKo1AaXmGdQyGh\nVjFrzUnpFwkkr8r/myFelEY7HZQpTo6pC13r4xqtArtzD93BBKVcxPb2yh3R/tno\ndNmSICX0KQ==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","36701812"],["reveal_at","2027-02-18T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","0ab0c1c04d5a9068858c8bdd2dd19dc8a9b6976099921543e7c796f979f9a149"],["ct","0ed974e08ff012d718c63fb6742830ab8e13f692af40abb21bb70559d729a766"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r36701812.tlock b/reveal/v5-000009/r36701812.tlock new file mode 100644 index 0000000..3232d21 --- /dev/null +++ b/reveal/v5-000009/r36701812.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM2NzAxODEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKc3RxTTFtYk9DQVpDZVZuL096Tkh4WG54QVlQdytuQjFEOTNLUDBB | ||
| 5 | VktCR1NaRDdZVEdyWlNyYXNkaTZIVWF3RgpBbnZJMHMzNmhLRnBYdzhUZCs0Y1E4 | ||
| 6 | Uk1wS2RCYTRZUGJTME45VkFFU3cvbCt0OFcwRXRlb2tKNW83UHhXR3VZCnJ3Qmtv | ||
| 7 | NUxnZUdIeFEvSHZxOEtEc0hzYnFwcDFIZGEzZGhiOEpqeVJjM1kKLS0tIE1UbERC | ||
| 8 | eTZ2N3JxbmtFc3Yza3d6MEJnYnN3eFpTWVI2SFRRcmNwTzI5ckEKo1AaXmGdQyGh | ||
| 9 | VjFrzUnpFwkkr8r/myFelEY7HZQpTo6pC13r4xqtArtzD93BBKVcxPb2yh3R/tno | ||
| 10 | dNmSICX0KQ== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r36759412.ct b/reveal/v5-000009/r36759412.ct new file mode 100644 index 0000000..3006bce --- /dev/null +++ b/reveal/v5-000009/r36759412.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r36759412.nostr.json b/reveal/v5-000009/r36759412.nostr.json new file mode 100644 index 0000000..752abfa --- /dev/null +++ b/reveal/v5-000009/r36759412.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM2NzU5NDEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKanBiUUptbFlESEs5aDlOUGlJcG1FL294WGZTeTA5bGZ2OFlOZkcy\nSXJvaVF6ODAzKzJTbTFNR0xIcEFNOUVlbgpGMFlZaXJJVjdROFNpdWViNmE3OVM1\nRmF4ZXkvL1ltZ1FLUkprQk5FaHkycENpQzNnOWRIVDlLTW4ySkdmQWhuCnVqZlpz\nVkZzeEFkVXA5SFZNUzlZVGdHWmFCNjFmSWlndlZRcUR3WlhzUHcKLS0tICs1L1po\neXo4bXllcFI4V1QybDZwQ3E5ZFRjZjQ2cUY5SGdIRW9ZMU9wMEUKCO4rwnIfMKV/\ncOXDSqsB7dbjK2DU3a5tvbvc6nY92m7bZSS46QN7cq0QD+ftOFDDRmXom5VoFYnv\nkkeRA65esA==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","36759412"],["reveal_at","2027-02-20T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","6f8619c39620c4b3fdefa009dcae3c4d4ab0640c3b2c2e42ba133acce35fa37e"],["ct","dc99f5ba0fa6aa20619cef01ead6edf1b57dea611eec4d00d2c340745fc495cf"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r36759412.tlock b/reveal/v5-000009/r36759412.tlock new file mode 100644 index 0000000..c7e5a65 --- /dev/null +++ b/reveal/v5-000009/r36759412.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM2NzU5NDEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKanBiUUptbFlESEs5aDlOUGlJcG1FL294WGZTeTA5bGZ2OFlOZkcy | ||
| 5 | SXJvaVF6ODAzKzJTbTFNR0xIcEFNOUVlbgpGMFlZaXJJVjdROFNpdWViNmE3OVM1 | ||
| 6 | RmF4ZXkvL1ltZ1FLUkprQk5FaHkycENpQzNnOWRIVDlLTW4ySkdmQWhuCnVqZlpz | ||
| 7 | VkZzeEFkVXA5SFZNUzlZVGdHWmFCNjFmSWlndlZRcUR3WlhzUHcKLS0tICs1L1po | ||
| 8 | eXo4bXllcFI4V1QybDZwQ3E5ZFRjZjQ2cUY5SGdIRW9ZMU9wMEUKCO4rwnIfMKV/ | ||
| 9 | cOXDSqsB7dbjK2DU3a5tvbvc6nY92m7bZSS46QN7cq0QD+ftOFDDRmXom5VoFYnv | ||
| 10 | kkeRA65esA== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r36932212.ct b/reveal/v5-000009/r36932212.ct new file mode 100644 index 0000000..a002a87 --- /dev/null +++ b/reveal/v5-000009/r36932212.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r36932212.nostr.json b/reveal/v5-000009/r36932212.nostr.json new file mode 100644 index 0000000..809054d --- /dev/null +++ b/reveal/v5-000009/r36932212.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM2OTMyMjEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKaExacVJ4ZzRudGd0bUdJVG9CWGZXcGRpc2p3WDQ5d3RyMkliaDF2\nb3h2MHRqQ3o1S2hxSXVkSTFPbE9UUzNLSwpEbXhoSXBxd1JUeU1VQU5veHVQVXho\nOWM0R29rZUpEK0lNM0tFRTRna3dBajVRNGZkUzJDdnBsZzlSMy82OXNtCld1aXZ2\nVGtkOUNOT0JIK24zQWQ5MUZ5WjgwQjBiRTc1REF6enJGS1kySkUKLS0tIFpBZlEv\nam8zYXhtQ2pMdmtFL0pZT3RuWVAxdlFTOG9GU0NVRTJjMEZSMjgKzyqKRQjOfjia\nPhbjKgXoBE8ZwRouvQXPHMT7JHZLx4O62sxUadoHaZLFRUrqzpqY43rv7AyiCAw8\nplzeBm3aFg==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","36932212"],["reveal_at","2027-02-26T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","39f3989cf148b42f7770109515c47b94e8aa84024af41701d6e8f05653e2e52a"],["ct","e64e34a52df4aaa782ec3e44171697b5fac729220c68dd611d4f533e3a52ed5e"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r36932212.tlock b/reveal/v5-000009/r36932212.tlock new file mode 100644 index 0000000..4c651ca --- /dev/null +++ b/reveal/v5-000009/r36932212.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM2OTMyMjEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKaExacVJ4ZzRudGd0bUdJVG9CWGZXcGRpc2p3WDQ5d3RyMkliaDF2 | ||
| 5 | b3h2MHRqQ3o1S2hxSXVkSTFPbE9UUzNLSwpEbXhoSXBxd1JUeU1VQU5veHVQVXho | ||
| 6 | OWM0R29rZUpEK0lNM0tFRTRna3dBajVRNGZkUzJDdnBsZzlSMy82OXNtCld1aXZ2 | ||
| 7 | VGtkOUNOT0JIK24zQWQ5MUZ5WjgwQjBiRTc1REF6enJGS1kySkUKLS0tIFpBZlEv | ||
| 8 | am8zYXhtQ2pMdmtFL0pZT3RuWVAxdlFTOG9GU0NVRTJjMEZSMjgKzyqKRQjOfjia | ||
| 9 | PhbjKgXoBE8ZwRouvQXPHMT7JHZLx4O62sxUadoHaZLFRUrqzpqY43rv7AyiCAw8 | ||
| 10 | plzeBm3aFg== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/r37853812.ct b/reveal/v5-000009/r37853812.ct new file mode 100644 index 0000000..05d74fd --- /dev/null +++ b/reveal/v5-000009/r37853812.ct | |||
| Binary files differ | |||
diff --git a/reveal/v5-000009/r37853812.nostr.json b/reveal/v5-000009/r37853812.nostr.json new file mode 100644 index 0000000..3958135 --- /dev/null +++ b/reveal/v5-000009/r37853812.nostr.json | |||
| @@ -0,0 +1 @@ | |||
| {"content":"-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM3ODUzODEyIDUyZGI5YmE3\nMGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw\nMGM4NGU5NzEKbzF6MkdRczUzYWlWUlo0WVVaVzBXR1lTbVdNOUNhTEh2aWIyNWtI\naHQweTdoOHUxVU1EL0hJUE5HQUp0SytmNQpGYURMTGlzaHdwK1pPZGZ0S2RIVVBz\nUzl2dVQySlBGNEhtd3MyNUtmSGJSdnpKQ2FzQk5aVzdrd2lRemtHM012CldVdS9t\nSmRacENvUzJDT1VyOFFqRlVSTFFlTW5sbzZYUmJ4TWdwc3loQlEKLS0tIHZWeDl1\nWEVod1YxT1RzdTVvbEg0MHo4Y21pOXluUjk1RldBZnlQTXNBdWMK4tiyrgaGLTAv\nOmIHUfOxCVdho0/9fPM60qLNKPiSiYW/rUzrfobugaFoyRSKJK+BFEot+U6hqpSL\ndvQxUH94Zw==\n-----END AGE ENCRYPTED FILE-----\n","tags":[["t","echo-ledger-reveal"],["round","37853812"],["reveal_at","2027-03-30T00:00:00.000000Z"],["chain","52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971"],["digest","1735ea3f806bfcec1d3a02ba9f47291744e9927c30ea3632f6155dc718c8c71f"],["ct","6da59a5b6f4881a7b7847924dacfe9bfdeb083edf1b6cd9cb72508de6b0efe16"],["seal","f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3"]]} | |||
diff --git a/reveal/v5-000009/r37853812.tlock b/reveal/v5-000009/r37853812.tlock new file mode 100644 index 0000000..051e358 --- /dev/null +++ b/reveal/v5-000009/r37853812.tlock | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | -----BEGIN AGE ENCRYPTED FILE----- | ||
| 2 | YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHRsb2NrIDM3ODUzODEyIDUyZGI5YmE3 | ||
| 3 | MGUwY2MwZjZlYWY3ODAzZGQwNzQ0N2ExZjU0Nzc3MzVmZDNmNjYxNzkyYmE5NDYw | ||
| 4 | MGM4NGU5NzEKbzF6MkdRczUzYWlWUlo0WVVaVzBXR1lTbVdNOUNhTEh2aWIyNWtI | ||
| 5 | aHQweTdoOHUxVU1EL0hJUE5HQUp0SytmNQpGYURMTGlzaHdwK1pPZGZ0S2RIVVBz | ||
| 6 | Uzl2dVQySlBGNEhtd3MyNUtmSGJSdnpKQ2FzQk5aVzdrd2lRemtHM012CldVdS9t | ||
| 7 | SmRacENvUzJDT1VyOFFqRlVSTFFlTW5sbzZYUmJ4TWdwc3loQlEKLS0tIHZWeDl1 | ||
| 8 | WEVod1YxT1RzdTVvbEg0MHo4Y21pOXluUjk1RldBZnlQTXNBdWMK4tiyrgaGLTAv | ||
| 9 | OmIHUfOxCVdho0/9fPM60qLNKPiSiYW/rUzrfobugaFoyRSKJK+BFEot+U6hqpSL | ||
| 10 | dvQxUH94Zw== | ||
| 11 | -----END AGE ENCRYPTED FILE----- | ||
diff --git a/reveal/v5-000009/seal.json b/reveal/v5-000009/seal.json new file mode 100644 index 0000000..929e4f9 --- /dev/null +++ b/reveal/v5-000009/seal.json | |||
| @@ -0,0 +1,43 @@ | |||
| 1 | { | ||
| 2 | "algorithm": "sha256-live-v5", | ||
| 3 | "anchor_ref": "sha256:f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3", | ||
| 4 | "covers_after": "2026-10-05T22:14:57.492859Z", | ||
| 5 | "covers_through": "2026-10-06T22:21:37.282794Z", | ||
| 6 | "digest": "f7dd3d54a02d0aa327e76a1ec41d89f8b0fa700247dfad7ebf0c82ab889004c3", | ||
| 7 | "follows_seq": 39, | ||
| 8 | "n_forecasts": 2346, | ||
| 9 | "n_groups": 20, | ||
| 10 | "n_withheld": 2346, | ||
| 11 | "prev_digest": "8a0ebba38fedca4ec75b165081248fadcbae9c0d5db85e3b5681c8ebfd61e765", | ||
| 12 | "prev_seq": 8, | ||
| 13 | "sealed_at": "2026-10-06T22:22:21.438064Z", | ||
| 14 | "seq": 9, | ||
| 15 | "variant": { | ||
| 16 | "beacon": { | ||
| 17 | "chain_hash": "52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971", | ||
| 18 | "genesis_time": 1692803367, | ||
| 19 | "period": 3, | ||
| 20 | "relays": [ | ||
| 21 | "https://api.drand.sh", | ||
| 22 | "https://api2.drand.sh", | ||
| 23 | "https://api3.drand.sh", | ||
| 24 | "https://drand.cloudflare.com" | ||
| 25 | ], | ||
| 26 | "scheme": "bls-unchained-g1-rfc9380" | ||
| 27 | }, | ||
| 28 | "cipher": "chacha20poly1305-zlib6-nonce0", | ||
| 29 | "gate": { | ||
| 30 | "default": "withheld: a kept salt can be released later; an opened text can never be withdrawn", | ||
| 31 | "opened": "none", | ||
| 32 | "why": "no decision by Echo yet" | ||
| 33 | }, | ||
| 34 | "line": "numeric<TAB>open:<v4 line> | numeric<TAB>withheld:sha256(salt||v4 line)", | ||
| 35 | "reveal": "utc-day-after-close", | ||
| 36 | "salts": "key ring: one content a seal, one part a line", | ||
| 37 | "tool": { | ||
| 38 | "name": "tle", | ||
| 39 | "sha256": "69157d8c14a1d390d1b7744946288f83d4b10748471d5447f9abb77a5902c541", | ||
| 40 | "version": "tlock v1.2.0 -- github.com/drand/tlock" | ||
| 41 | } | ||
| 42 | } | ||
| 43 | } | ||