Commit Graph
57 Commits
Author SHA1 Message Date
zeekay 06c70ef0fb chore: scrub Partner DEX / Liquidity chain IDs from docs/dex/api.mdx
- Replace 'Partner DEX V4 precompile' with 'Lux DEX V4 precompile'
- Replace Liquidity chain IDs (8675309/10/11) with Lux chain IDs
  (96369/96368/96370) in the chain-IDs table and curl-example payloads
2026-06-10 12:25:53 -07:00
zeekay 24cc32a123 docs: networks/chains/validators decomplected — AddValidatorTx universal
Validators validate networks, chains live on networks. Under LP-018
sovereign-L1, AddValidatorTx is the universal add-validator tx.
AddChainValidatorTx is legacy + retained for one release cycle.

- chains/pchain.mdx: new 'Networks, Chains, and Validators' concept
  section laying out network has validators / chains live on networks
  / L1 vs L2 / AddValidatorTx universal; Purpose paragraph reworded;
  fee-schedule rows retitled 'Add network validator' / 'Add network
  delegator'.
- cloud/subnets.mdx: 'Adding Validators' rewritten to call out
  validators validate networks; CLI example switched to
  'lux network addValidator'.
- warp/{index,messages,integration}.mdx: 'source chain validator set'
  → 'source network validator set'; RegisterL1Validator description
  clarifies 'adds a validator to an L1 network'.
- reference/lux-netrunner.mdx: RemoveChainValidator marked legacy.
2026-06-08 16:04:09 -07:00
zeekay 126bb01d8f corona → corona total rename — no alias, no wire compat
Per CTO directive: kill any alias, any shim. R-LWE threshold sig is
named Corona across all live code. Forward-only.

Sweep covers Go + TS + Sol + k8s YAML + JSON + LP markdown + skills
+ docs. Skipped: papers/audits/legal/licenses/blog/HISTORY (immutable
historical record).
2026-06-06 13:56:42 -07:00
zeekay d562e9feb5 WIP: session checkpoint 2026-06-05 (codec rip in flight) 2026-06-05 15:33:53 -07:00
zeekay d281e1e18b docs: rename etnaTimestamp → quasarTimestamp in cchain.mdx
Documentation example mirrors the SoT rename in luxfi/upgrade +
luxfi/genesis.
2026-06-02 23:30:50 -07:00
zeekay ed4fd1b052 docs(fhe): correct FHEVM stack (Go primary, not Rust) + drop "NEVER use Zama"
Two corrections:

1. lux-fhevm.mdx claimed the coprocessor was Rust-based with the Zama tfhe
   crate. The actual lux/fhe-coprocessor is pure Go (luxfi/fhe + luxfi/lattice)
   with C++ / GPU (Metal+CUDA) / FPGA acceleration paths. No Rust toolchain;
   no Zama crate. Quick-reference table updated to match reality.

2. lux-fhe-coprocessor.mdx had the negative "NEVER use Zama tfhe-rs" framing
   in the hard requirements + a Related Skills entry pointing at a
   "Rust-based FHEVM coprocessor (alternative architecture using Zama tfhe
   crate)" that doesn't exist. Reframed positively: Lux-native FHE; the
   FHEVM specification points at the same Go primary + C++/GPU/FPGA accel
   stack.
2026-05-29 12:37:24 -07:00
zeekay 65f6376aab chore: brand-neutral cleanup — remove cross-tenant references 2026-05-25 15:13:25 -07:00
zeekay eb10c8ca70 docs: canonical Quasar naming (drop "umbrella" / "composition" qualifiers; add supermassive black-hole framing) 2026-05-19 08:15:19 -07:00
zeekay 5d952127b4 docs(reference): rip Avalanche-upgrade-name framing; fix MDX <URL> bug
lux-upgrade.mdx rewritten as "header-schema compatibility" tool; the
Apricot/Banff/Cortina/Durango/Etna/Fortuna/Granite fork-history table is
deleted because Lux activates every feature at genesis (LP-3641). The
Config-struct field names are retained — they are the on-wire header
schema and cannot be renamed without breaking historical replay.

lux-precompile.mdx, lux-evm.mdx, lux-lps.mdx, cchain.mdx: drop "Durango+",
"Etna activated", "ACP-181" framing. EVM hardfork gates (Shanghai/Cancun)
stay — they gate opcode behavior.

Side fix: 5 reference MDX files (corona/magnetar/proto/pulsar/quasar) had
<https://github.com/luxfi/X> raw-autolink syntax that Turbopack's MDX
parser was rejecting (Unexpected `/` before local name), failing the
docs build entirely. Switched to [text](url) form. Docs site now builds
(453 paths prerendered).
2026-05-19 07:54:07 -07:00
zeekay 96e54df785 docs(reference): add lux-pulsar/quasar/corona/magnetar/proto MDX; remove lux-corona (repo archived); update sidebar (Threshold Signatures (PQ) section) 2026-05-18 22:22:23 -07:00
zeekayandGitHub 3e9222bdf3 docs(licensing): clarify runtime gate vs license tier (#12)
Mirror of upstream luxfi/.github profile changes. Some prior phrasing
conflated "no runtime token check" with "no license", which is wrong:
every Lux artifact is licensed — tiers 1+2 just don't carry a runtime
token gate, while tier 3 does. Adds the canonical 3-row table to
/licensing and cross-references it from /open-core.

No license tier classifications change. No LICENSE files change. No
runtime-check behavior changes. Documentation correction only.
2026-05-16 13:34:17 -07:00
zeekayandGitHub 8b4dddae2d docs: Corona → Corona cascade in lux-precompile reference (matches luxfi/threshold v1.6.13 + luxfi/corona v0.4.0) (#11) 2026-05-16 10:50:57 -07:00
zeekay a7e2fa94a9 docs: drop LUX_ env prefix; iam package moved to hanzoai
Two stale references cleaned up after recent upstream renames:

- cli reference: luxfi/constants v1.5.4 + luxfi/cli v1.99.23 dropped
  the LUX_ prefix from EnvNodePath/EnvNetrunnerPath/EnvEVMPath/
  EnvPluginsDir. Update the env-var documentation accordingly.

- iam reference: identity provider package moved from luxfi/iam to
  hanzoai/iam as part of the IAM consolidation under hanzoai (per
  CLAUDE.md). Update the github.com path in the IAM overview page.
2026-05-16 02:41:00 -07:00
zeekayandGitHub 67d750809a docs: mirror canonical IP/licensing strategy + open-core EE pages (#8)
Mirror github.com/luxfi/.github/profile/{README,OPEN-CORE-EE}.md to the
docs.lux.network source tree so the three-tier IP strategy is
discoverable from docs without needing to know the GitHub URL.

- apps/docs/content/docs/licensing.mdx — mirrors profile README
- apps/docs/content/docs/open-core.mdx — mirrors OPEN-CORE-EE
- meta.json: new "Strategy" sidebar section
- (home)/page.tsx: new "Strategy" tile section for homepage discovery

The .github profile READMEs remain canonical; this is a navigational
mirror. LICENSE file in each repo is the binding artifact.
2026-05-15 17:31:22 -07:00
zeekay 9a1c789b33 canonical: scrub upstream 'Subnet-EVM' / 'subnet-evm' brand language
Lux uses 'Lux EVM' (the canonical luxfi/evm plugin) for both C-Chain
and EVM-based L2 chains. The upstream 'subnet-evm' / 'Subnet-EVM' brand
was a separate codebase we don't use anymore.
2026-05-05 20:26:07 -07:00
zeekay bf7be5f293 canonical: single Lux EVM VM ID = mgj786NP… (CB58 of ids.ID{'e','v','m'})
Removed legacy 'srEXi…' (upstream Subnet-EVM ID) — Lux uses one canonical
EVM VM ID for both C-Chain and EVM-based subnets per luxfi/constants.EVMID.
Plugin filename is mgj786NP7uDwBCcq6YwThhaN8FLyybkCa4zBWTQbNgmK6k9A6 only;
no dual install, no aliases.
2026-05-05 20:16:26 -07:00
zeekay 6b2e593b3c docs: snow.Context → consensus.Context, frost icon kept 2026-05-05 19:14:45 -07:00
zeekay d0fbce1e67 docs: Warp 2.0 canonical naming in netrunner reference 2026-05-05 17:56:49 -07:00
zeekay 91fd5eccd3 docs: PQ canonical terminology (FIPS 203/204/205 + Pulsar + Lamport) 2026-05-05 17:55:55 -07:00
zeekay ade6e1e0dd docs: final canonical-naming pass (Lux EVM / Pulsar in reference docs)
Replace Coreth/Corona prose with canonical Lux EVM / Pulsar
in lux-cli, lux-plugins, lux-lps reference docs. Subnet-EVM
clarified as legacy alias for sovereign-L1 Lux EVM mode.
2026-05-05 17:49:51 -07:00
zeekay 32673d0355 docs: M/F/Z-Chain canonical naming per LP-134
Update lux-fhe.mdx and chains/thresholdvm.mdx to clarify that the
ThresholdVM substrate powers M-Chain (MPC ceremonies for external-wallet
bridge custody) and F-Chain (FHE compute) per LP-134. Legacy T-Chain
name retained only for teleportvm (LP-6332).
2026-05-05 16:28:57 -07:00
zeekay b3f6888196 docs: scrub Avalabs IP from reference + indexer mdx pages 2026-05-05 16:21:10 -07:00
zeekay 68ba09aefd consensus.mdx: rewrite around Quasar (no Snow/Snowman/Avalanche refs)
Public consensus page now describes the actual Lux consensus engine:
- Quasar root protocol with sub-protocols Photon/Wave/Focus/Prism/Horizon/
  Flare/Ray/Field/Nova/Nebula/Quasar (one concern per component)
- QuasarCert hybrid finality (BLS + Pulsar Ring-LWE + ML-DSA Groth16)
- Configurable PQ modes via LUX_CONSENSUS_PQ_MODE env var
- Pulsar (Lux's Corona variant with DKG2 + Pulsar-SHA3) parameters
- Measured performance numbers (Apple M1 Max)
- M-Chain (MPC threshold) / F-Chain (FHE) / Z-Chain (Groth16) split per
  LP-134 (replaces 'T-Chain' nomenclature)
- ZAP wire protocol pin

Links updated to LP-110 / LP-113 / LP-115.
2026-05-05 13:03:38 -07:00
zeekay 3075de3aad docs: update explorer, indexer, consensus, ZAP, and SDK documentation 2026-04-19 17:06:03 -07:00
zeekay a7a72777dc docs: rename X-Chain fullName Exchange Chain → UTXO Chain
UTXO is the semantic name for X-Chain (UTXO model, like Bitcoin).
"Exchange Chain" was confusingly close to "DEX Chain" (D-Chain).

- content/docs/chains/xchain.mdx: top description paragraph
- content/docs/architecture.mdx: X-Chain section header
- content/docs/indexer/quickstart.mdx: chain label
2026-04-12 22:06:44 -07:00
zeekay 1982a62421 fix: replace L2/subnet language with sovereign L1 across all docs
All Zoo, Hanzo, SPC, Pars, and Liquidity chains are sovereign L1s with
their own validator sets, not L2s or rollups.

Changes across 45 files:
- "L2 EVM" -> "Sovereign L1 EVM" in chain docs, bridge, wallet, SDK,
  operator, cloud, CLI, faucet, explorer, and all reference docs
- chains/evm.mdx title: "L2 EVM" -> "EVM Chains"
- deploy-subnet.mdx title: "Deploy an L2" -> "Deploy a Chain"
- CLI chain types: remove L2 default, L1 is now default
- Post-quantum doc: update Dilithium -> ML-DSA-65 (FIPS 204),
  Kyber -> ML-KEM-768 (FIPS 203), SPHINCS+ -> SLH-DSA (FIPS 205),
  mark Phase 1+2 as Deployed, Phase 3 as In Governance Review,
  add Quasar triple hybrid consensus (BLS + Corona + ML-DSA),
  add Smart Account PQ signing via SafeMLDSASigner (ERC-1271)
- plugins: "L2 EVM" alias -> "subnet-evm", fix URLs to luxfi/evm

Left as-is: SafeL2 (Gnosis Safe contract name), NIST L2 (security
level), L2 norm (math), Optimism/Polygon/Base (they are L2s),
LP proposal titles, Go struct names, wire protocol field names.
2026-04-09 21:17:53 -07:00
zeekay bd55c44fa8 fix: ZAP and SQLite are 2025, not 2026 2026-04-07 15:44:10 -07:00
zeekay ef4746980b blog: sovereign apps — provenance with commit hashes back to 2015 2026-04-07 15:40:56 -07:00
zeekay bb5260664a fix: backdate sovereign-apps to 2026-03-03 2026-04-07 15:08:11 -07:00
zeekay 99efd5fcda blog: The Operating System for Sovereign Apps 2026-04-07 15:06:16 -07:00
zeekay 0eb9e63bde docs(dex): add Trading API reference with endpoints, venues, chain IDs 2026-03-29 18:21:11 -07:00
zeekay c67b1feb9f docs: replace subnet terminology with L2/chain
Replace all user-facing "subnet" references with "chain" or "L2"
terminology across the documentation. Preserves API method names
(platform.createSubnet, platform.getSubnets), JSON parameter names
(subnetID), Go type identifiers (SubnetID), env var names (SUBNETWORK),
transaction type names (CreateSubnet), and file/package paths
(subnetevm/, join_subnet.go).
2026-03-29 10:47:50 -07:00
zeekay c48a0b50df fix: content quality — unclosed fence, placeholder, unique titles
- lattice/api-reference.mdx: split }``` into separate lines (unclosed fence)
- reference/lux-evm.mdx: remove Granite "Placeholder" row
- Prefix generic titles with component names for search/SEO:
  "API Reference" -> "KMS API Reference", "MPC API Reference", etc.
  "Quick Start" -> "CLI Quick Start", "Bridge Quick Start", etc.
  "Installation" -> "HSM Installation", "Netrunner Installation", etc.
2026-03-25 00:45:27 -07:00
zeekay 80b1850210 fix: final audit — go-ethereum refs, graceful shutdown, turbo cache, deploy reliability
Red team fixes:
- Replace 6 remaining go-ethereum references with luxfi/geth
- DAO title: "Welcome" -> "DAO Governance"

CTO fixes:
- serve.go: add graceful shutdown (signal.NotifyContext + srv.Shutdown)
- turbo.json: add out/** to build outputs for proper caching
- deploy.yml: remove continue-on-error (surface deploy failures)
- Delete stale GENESIS_FLOW.md from repo root

452 pages, zero broken links, zero go-ethereum refs
2026-03-25 00:35:44 -07:00
zeekay 85aa1fdcc1 fix(ci): use luxfi/lux-docs image name to avoid GHCR permission issue 2026-03-22 19:11:43 -07:00
zeekay cf80bf0fb1 fix(ci): use github.repository for GHCR image name, fix deploy namespace
- IMAGE_NAME from github.repository ensures GITHUB_TOKEN has write access
- Add docker/metadata-action for proper tagging
- Fix deploy namespace: lux-ns (not lux-explorer)
- Add id-token permission
2026-03-22 19:07:51 -07:00
zeekay 63fc22a471 docs: enrich thin KMS and netrunner pages with source content 2026-03-22 19:05:24 -07:00
zeekay fc0faf5f80 fix: accuracy corrections, hanzoai/static server, DAO stubs, enriched pages
Content accuracy fixes (from source code audit):
- DEX: correct CPU ops/s (1M not 13M), latency (2ns GPU/487ns CPU),
  finality (1ms not 2ms) — all verified against dex/LLM.md
- HSM: remove Azure as Signer (only PasswordProvider), fix to 5 providers
- MPC: rewrite config flags to match actual cmd/mpcd/main.go source
- CEX: clarify dual WebSocket ports (8091 /ws + 8092 dedicated)
- Standard: update precompile count (42 not 39)
- Chains: add 4 missing VMs (servicenodevm, falconfx, da, experimental)
- HSM: Zymbit SCM not PKCS#11

Infrastructure:
- Replace nginx/serve with hanzoai/static Go server (serve.go)
- Dockerfile: multi-stage build with Go static server
- Traefik Middleware for security headers (not nginx)

Content:
- Create 9 missing DAO stub pages (roles, treasury, distributions, etc.)
- Fix broken regulated/ links (/docs/ prefix)
- Fix vote/index.mdx relative link
- Enrich thin pages with real source content
- 452 pages total
2026-03-22 19:02:37 -07:00
zeekay 44943c5403 docs: add regulated products guides -- ATS, BD, TA from luxfi OSS components 2026-03-22 12:44:46 -07:00
zeekay 7a37d6f3b0 fix: resolve 29 broken links, go-ethereum refs, dead anchors
Red team audit round 2 fixes:
- Replace go-ethereum imports with luxfi/geth in sdk-go.mdx
- Fix cloud/index.mdx relative links (/contracts -> /cloud/contracts)
- Fix DAO relative links (/guide -> /dao/guide)
- Fix broken Cards JSX in dao/index.mdx and dao/guide/index.mdx
- Remove non-existent lux-lattice from reference index
- Replace dead href="#" anchors with real URLs
- Fix AVAX reference in standard/liquid.mdx
- Add missing nav entries: exchange-sdk, gpu, ledger, faucet
- Create missing lattice/meta.json
- 441 pages, zero errors, zero broken links
2026-03-21 09:18:37 -07:00
zeekay d90f1f92f3 fix: close unclosed code fence, remove phantom meta entries, enable gzip
- lattice/api-reference.mdx: add missing closing code fence
- reference/meta.json: add orphaned lux-standard
- dao/meta.json: remove 8 phantom entries (no corresponding files)
- nginx.conf: enable gzip compression, proper 404 status codes
- 441 pages, zero build errors
2026-03-21 01:26:57 -07:00
zeekay ff354bbcbe fix(docs): fix 272 broken links, update landing + index, 440 pages
Broken link fixes:
- Strip /docs/ prefix from all hrefs (baseUrl is /)
- /reference/* -> /api-reference/* (22 links)
- /learn/* -> /* (7 links)
- /build/* -> /cloud/* (16 links)
- /skills/* -> /reference/* (28 links)
- DAO relative links: add /dao/ prefix (127 links)
- Remove 5 phantom meta.json entries
- Fix bare < in cex/gateway.mdx and cex/reporting.mdx

Content updates:
- Landing page: 39 products across 8 sections
- Index page: all 47 sections listed
- 440 pages total, zero broken links
2026-03-02 23:44:18 -08:00
zeekay 244e821835 docs: comprehensive broker, CEX, and compliance documentation
Broker (8 pages): full API reference with 80+ endpoints, smart order
routing, settlement engine, multi-asset support, venue details, pricing.

CEX (9 pages): CLOB matching engine, multi-protocol gateway (REST/FIX/
WS/ZAP), pre-trade compliance, post-trade surveillance, FINRA/SEC/MiFID
reporting, architecture deep dive.

Compliance (8 pages): KYC providers (Jumio/Onfido/Plaid), AML sanctions
screening, transaction monitoring, payment compliance (travel rule, CTR),
regulatory frameworks (USA/UK/IOM), Go + TypeScript integration guide.

Total: 2631 lines across 25 MDX pages (up from 797 stub lines).
2026-03-18 01:14:06 -07:00
zeekay d972cc0787 feat(docs): add 22 project docs — 437 pages total
New sections (86 new pages):
- standard: AMM, lending, perps, liquid, governance, identity, NFT AMM,
  options, 39 precompiles, deployment addresses (12 pages)
- operator: K8s CRDs, deployment, reconciliation states (4 pages)
- zapdb: encrypted KV store, ChaCha20-Poly1305 (3 pages)
- zap: native messaging protocol (2 pages)
- safe: multi-sig wallet (3 pages)
- liquid: LETH, LBTC, LUSD, xLUX vault (4 pages)
- staking: validator, delegation, liquid staking (5 pages)
- compliance: KYC/AML, sanctions, surveillance, FINRA/MiFID II (6 pages)
- warp: cross-chain BLS messaging (4 pages)
- teleport: burn-mint token transfers (3 pages)
- corona: post-quantum lattice threshold (3 pages)
- threshold: core crypto interfaces and registry (4 pages)
- oracle: data feeds, VRF, consumer contracts (3 pages)
- iam: auth, RBAC, SSO/SAML (4 pages)
- precompile: PQ crypto, DeFi, ZK precompiles (5 pages)
- crypto: ECDSA, Ed25519, BLS, ML-DSA, Kyber (4 pages)
- adx: CTV ad exchange, OpenRTB, ZK auctions (4 pages)
- ledger: hardware wallet, APDU protocol (4 pages)
- faucet: testnet token dispenser (3 pages)
- gpu: CUDA/Metal kernels (3 pages)
- exchange-sdk: matching engine, AVL order book (3 pages)
2026-03-02 21:07:33 -08:00
zeekay 35cca7bd65 fix(docs): root-level routes — docs.lux.network/dex not /docs/dex
- Change baseUrl from /docs to /
- Move catch-all route from app/docs/[[...slug]] to app/(docs)/[...slug]
- Landing page at app/(home)/page.tsx
- All routes now at root: /dex, /hsm, /cli, /wallet, etc.
- Update all internal MDX links from /docs/... to /...
- 353 pages, all routes verified
2026-03-02 19:11:44 -08:00
zeekay 43474b7c88 fix(docs): flatten routes, fix all 404s, redesign landing page
- Flatten all content to top-level routes (/docs/dex, /docs/hsm, etc.)
- Remove nested apps/crypto/tools/governance parent dirs
- All 30 top-level routes verified (zero 404s)
- All sub-routes verified (pricing, compliance, protocols, etc.)
- Redesign landing page: docs.hanzo.ai-style dark theme with
  ecosystem grid, dev tools cards, CLI showcase, chains strip,
  governance section, and radial gradient hero
- Replace all Avalanche/AVAX references with Lux
- Fix layout.shared.tsx links to match flat routes
- 353 pages total, clean build
2026-03-02 18:33:07 -08:00
zeekay da2d4626df fix(docs): sanitize 74 reference pages and restore to build
- Strip JSX imports, <Cards>/<Card>/<Steps>/<Callout>/<Tabs> components
- Escape bare < > { } outside code fences (MDX-safe)
- Fix YAML frontmatter (nested quotes, truncate long descriptions)
- 356 pages total, clean build
2026-03-02 16:45:12 -08:00
zeekay 93c6a205d9 feat(docs): federated docs site with 282 pages across 8 sections
Consolidate 12 separate doc apps into single federated site.

Sections:
- Core: architecture, consensus, PQ, nodes, reference (16 pages)
- Chains: 16 VMs (EVM, DEX, Threshold, Quantum, AI, ZK, Bridge...)
- Crypto: HSM (17), KMS (13), MPC (14), FHE (6), Lattice (6)
- Tools: CLI (15), SDK (16), Netrunner (9)
- Apps: Exchange (7), DEX/LX (7), CEX/ATS (9), Broker (7),
        Wallet (9), Bridge (10), Explorer (18), Indexer (18),
        Bootnode/Cloud (13), Accel (4)
- Cloud: contracts, subnets, tutorials
- Governance: DAO (36), Vote (4), LP cross-refs (1)

New content:
- FHE/TFHE docs (TFHE, coprocessor, contracts, SDK)
- Per-chain/VM docs for all 16 VMs
- CEX/ATS with full compliance (FINRA, MiFID II, sanctions, surveillance)
- Broker with 16-venue SOR and multi-asset trading
- DEX/LX with 434M ops/sec CLOB benchmarks
- Exchange frontend docs (V2/V3/precompile)
- DAO governance (36 pages from dao repo)
- Vote app docs (proposals, delegation, treasury)
- GPU acceleration (accel) docs
- Cross-linking to lps.lux.network (348 LPs)
- Pricing pages for DEX, CEX, Broker, Bootnode, KMS, MPC, Bridge
2026-03-02 14:22:41 -08:00
zeekay 8446558013 Restructure to Turbo monorepo with 13 documentation apps
Single-app → multi-app monorepo architecture:
- apps/docs/ — Main Lux docs (replaces root-level app)
- apps/bootnode-docs/ — Bootnode service
- apps/bridge-docs/ — Bridge service
- apps/cli-docs/ — CLI tool
- apps/explorer-docs/ — Block explorer
- apps/hsm-docs/ — Hardware security module
- apps/indexer-docs/ — Blockchain indexer
- apps/kms-docs/ — Key management service
- apps/mpc-docs/ — Multi-party computation
- apps/netrunner-docs/ — Network testing
- apps/sdk-docs/ — SDK documentation
- apps/wallet-docs/ — Wallet service

New: pnpm-workspace.yaml, turbo.json, per-app configs
Updated: Dockerfile (filter build), .gitignore (.turbo/, .docs/)
Root package.json stripped to workspace orchestrator
2026-03-14 16:26:20 -07:00
zeekay c339b011c7 Regenerate lux-chains MDX (965 lines, all 14 chain types) 2026-03-13 19:31:50 -07:00