Short answer: CLM-8B is an open Contrastive Language Model aimed at fast agent decisions, with author claims of up to about 9× lower latency than Jev-class peers. Those figures remain unconfirmed outside the release setup. If you build coding agents, A/B it on your own harness before trusting the charts.
Key takeaways:
Latency claims: Treat the ~9× Jev speedup as author-reported until others reproduce it.
Eval harness: Hold tools and prompts fixed when A/B testing CLM-8B.
Hybrid stack: Use CLM for hot loops; keep a slower reasoner for novel tasks.
Open weights: Confirm Apache licence files before shipping commercial forks.
Misuse risk: Gate reversible tools and secrets when agents decide in milliseconds.
What CLM-8B Is Trying to Be ⚡
Contrastive Language Model training, as described by the people promoting this drop, is about connecting states and actions rather than maximizing next-token likelihood in isolation. In pellucid terms: the model is nudged to map "here is the situation" to "here is the move," more like a policy head than a novelist. That is the System 1 analogy researchers keep reaching for - fast, associative, decision-shaped - as opposed to the System 2 tenor of long chain-of-thought that burns tokens while it thinks out loud.
CLM-8B is the first public weight set in that line. It is positioned as an open research release with Apache 2.0 licensing on the coverage that accompanied the drop, which matters if you want to fine-tune, ship, or fork without a lawyer picnic. Jacky Kwok introduced the work; Azalia Mirhoseini, who is Stanford-associated, amplified it; and the broader framing paints a Stanford and NVIDIA-linked team effort. Named researchers, public weights, open code - not an anonymous leak. Still early for third-party replication, so keep the skepticism dial somewhere between "interesting" and "show me the independent board."
The size class is eight billion parameters, which is small enough that labs and indie builders can host it without selling a kidney for H100 time. There is already talk of a larger CLM-35B follow-on. Whether that bigger sibling keeps the latency story or trades speed for depth remains unsettled, but the roadmap signal is clear: this is meant to be a family, not a one-off demo card.
- Focus: state → action loops for agents, not essay writing
- Licensing framed as Apache 2.0 in coverage around the release
- Style: System 1 / decision-oriented training story
- Follow-on: larger CLM-35B mentioned as a plan
System 1 Style vs the Usual Token Treadmill
Most production LLMs you know generate text one token at a time. That works great for prose, code dumps, and careful reasoning traces. It is also why an agent that needs twenty micro-decisions per minute can feel sluggish even when the model is "smart." Every step pays the autoregressive tax.
The Contrastive Language Model pitch flips the emphasis. Instead of asking the network to narrate its way into an answer, you train it to prefer the right action given a state - think contrastive pulls between good and bad moves, not just fluent continuations. Builders already know the pattern: sometimes you do not need a thousand-word rationale; you need the model to type pytest instead of rm -rf. Fast loops care about that distinction.
None of this means CLM-8B cannot emit text. It means the training objective and evaluation story are slanted toward agentic control. That is a different product shape than "chat model that can also tool-call." The industry has spent years making models better at talking about tools while still bottlenecking on the talk itself. A decision-first model is the kind of sideways move that either looks obvious in hindsight or flops when the benchmarks get tangled. Both outcomes are possible.
Claimed Speed and Bench Numbers (Treat as Claims)
Here is the part that drives social posts: promoters claim up to about 9× faster inference than Jev-class models. After light fine-tuning, they also report strong agentic coding results - DeepSWE around 81.6% success and Terminal-Bench 2.1 around 87.6%. On some evaluations they describe zero-shot performance as comparable to Jev while latency stays much lower. One cluster summary floating with the release chatter cited roughly 32 ms-class response times on a terminal bench setting. Phrase that carefully: reported and claimed, not independently audited in this article.
If those latency figures generalize, the practical win is fewer GPUs per concurrent agent, or more agents per GPU. Coding agents that thrash a shell are especially sensitive because wall-clock waiting stacks; a 200 ms decision and a 30 ms decision feel like different products after a few hundred turns. Users often blame "the model being dumb" when the sharper pain is interactive lag.
Still - and this is the adult supervision paragraph - author benches are marketing until someone else reproduces them on shared hardware with shared prompts. Light fine-tuning results can also hide a lot of scaffolding. Strong DeepSWE and Terminal-Bench numbers are exciting precisely because those suites punish brittle agents, but excitement is not replication. Keep a sticky note that says CLAIM on the 9× and on that 32 ms-class figure.
Comparison Table: Token-by-Token LLMs vs CLM-Style Framing
Tables help when the marketing language gets slippery. This one compares typical LLM generation habits with the Contrastive Language Model story as researchers describe it. Cells are a little uneven on purpose because concrete comparisons always are.
| Angle | Typical LLM (token-by-token) | CLM-style / System 1 framing | Why it matters for agents |
|---|---|---|---|
| Primary loop | Predict next token, often with long traces | Map state to action; contrastive decision bias | Fewer wasted tokens between tool calls (in theory) |
| Latency feel | Can feel chatty-slow under multi-step control | Authors claim much lower latency vs Jev-class | Interactive coding agents hate wait time |
| Strength zone | Prose, planning essays, broad chat | Fast state→action - agentic coding highlighted | Different job, not always a replacement |
| Reported numbers | Depends on model; no single figure here | Up to ~9× faster (claim); DeepSWE ~81.6%; Terminal-Bench 2.1 ~87.6% after light FT (claims) | Promising if third parties confirm - big if |
| Openness | Mix of closed APIs and open weights | Open weights/code framed under Apache 2.0 | Fine-tune and host yourself without guessing terms |
| Catch / quirk | Smart but sometimes narrates forever 🐢 | Still early; independent reruns pending | Do not bet the company on one press chart |
Use the table as a mental model, not a verdict. Product teams still need to measure their own harness: tool schemas, retry policy, and environment noise will move scores more than the slide deck admits.
Who Is Behind the Noise 👤
Attribution matters because open AI drops range from careful lab releases to mystery torrents. This one has faces. Jacky Kwok introduced CLM; Azalia Mirhoseini helped push it into wider view; coverage consistently frames a Stanford and NVIDIA-linked research collaboration. That does not magically make every number true, but it does put reputational skin in the game. Named-researcher open releases tend to get stress-tested faster than anonymous dumps - peers love a public target.
For builders, the practical implication is access. Open weights plus an Apache 2.0 style license (as covered around the launch) usually means you can experiment commercially with fewer gotchas than research-only licenses. Check the actual license files in the release yourself before you ship anything; coverage summaries are not a contract. That may sound pedantic, but license pedantry saves startups.
The social amplification pattern is familiar: researcher post, respected amplifier quote-posts, then a wave of "agents finally solved" takes. Filter for people who share harness details. Screenshots of a single successful coding run are mood theater, not science. 🛰️
Why State-to-Action Loops Own Agentic Coding
Agentic coding is a cruel environment. The model sees a repo snapshot, a shell transcript, maybe a failing test, and must choose an edit or a command. Success is binary more often than chat is. Either the test goes green or it does not. That reward shape favors policies that pick actions cleanly over models that write beautiful failure essays.
Contrastive training stories fit that world because they explicitly push the network toward preferred actions under a given state. Think of it like teaching a junior engineer "when you see this error class, reach for this fix pattern" instead of "write a blog post about why compilers are hard." The junior still needs judgment; the shortcut just reduces dithering.
Latency compounds here. Suppose an agent averages eighty tool steps to land a medium bugfix. Shave 150 ms per step and you reclaim twelve seconds of wall clock - which is the difference between a flow state and a user alt-tabbing away to check email. Teams running fleets of agents feel that math in cloud bills too. A claimed order-of-magnitude inference speedup versus a Jev-class peer, even if it lands as "only" 4× in the wild, still rearranges capacity planning.
There is a shaky metaphor I keep using in meetings: token-by-token chat models are like debating the route at every intersection, while a System 1 style controller is more like muscle memory for city driving. Muscle memory fails in a new city. So does a narrowly tuned action model when the repo culture is idiosyncratic. You still want deliberative modes for novel architecture choices; you want reflexes for the fiftieth "fix the import and rerun." Hybrid stacks - fast CLM-like controller plus a heavier reasoner on hard branches - are probably where serious systems land, even if the launch posts sell a single hero model. 🚦
Also worth saying out loud: agentic coding benches like DeepSWE and Terminal-Bench reward scaffolding. Harness quality, tool allowlists, and recovery prompts can swing success rates by double digits. When you see ~81.6% or ~87.6% after light fine-tuning, dig into what wrapper sat around the weights. That is not shade; it is how the field works.
Open Weights, Fine-Tuning, and the 35B Shadow
Open weights change the social dynamics of a claim. Closed API models can flash a chart and leave you guessing about contamination, decoding tricks, or secret system prompts. With downloadable parameters you can at least poke the thing. Fine-tuning CLM-8B for your internal coding environment - your lint rules, your deploy CLI, your monorepo topology - is the realistic path to the shiny bench numbers, not zero-shot magic on day one.
Apache 2.0 framing (per the coverage) is builder-friendly: patent grant language, clear redistribution norms, fewer "research only" traps. Again: read the files. Coverage writers summarize; lawyers specialize.
The planned CLM-35B is the elephant in the roadmap slide. Bigger models often regain deliberative skill and lose some of the "tiny and viciously fast" charm unless distillation or speculative tricks keep latency in check. If the eight-billion variant is the sports car and the thirty-five-billion is the touring sedan, teams might keep both: 8B for hot loops, 35B for hard planning. Or the larger model might simply dominate if hardware keeps getting cheaper. Which future arrives is still unsettled; the release notes of the future will decide, not this paragraph.
One subtle risk with open agent models: people will bolt them into CI without rate limits and discover prompt injection via malicious READMEs. Fast models amplify misuse the same way they amplify practical value. Guardrails are not optional cosplay; they are product.
- Fine-tune on your own traces before judging quality
- Keep a slower reasoner as escape hatch for novel tasks
- Instrument latency p50/p95 in your harness, not just accuracy
- Assume the 35B will shift the Pareto frontier again
Reading the Jev Comparison Without Getting Snowed
Comparisons to Jev-class models are doing rhetorical work. They establish a peer in the agentic speed tier so "up to 9× faster" has a referent. Relative claims need an anchor, and that much is sound. The danger is collapsing an entire evaluation stack into a single multiplier. Batch size, precision, decoding settings, context length, and tool-call serialization all reshape what "faster" means, and those knobs rarely appear in the same slide.
When a cluster summary cites ~32 ms-class responses on a terminal bench setting, treat "response" as an ambiguous label until someone spells out whether it means first token, full action JSON, or a cached prefix. Those distinctions turn marketing milliseconds into engineering hours. Comparable zero-shot quality with lower latency is the dream pairing; if independent groups confirm even half of that dream, CLM-style training earns a permanent seat at architecture meetings.
Until then, treat Jev as a rivalry narrative more than a settled leaderboard. Rivalries sell posts. Your production KPIs do not care about narrative. Measure task success, dollar per solved ticket, and human intervention rate. If a Contrastive Language Model fork wins those, celebrate. If it only wins Twitter, keep walking. 🚶
Slight contradiction time: rivalry narratives still pull their weight. They force labs to publish numbers instead of airy mood. Just do not confuse the scoreboard with the sport.
What This Release Needs to Get Right
For CLM-8B to matter beyond a news cycle, a few things have to land:
- Replication: outside groups should be able to match the headline latency and coding success rates with documented recipes.
- Harness transparency: share the agent wrapper details that produced DeepSWE and Terminal-Bench scores.
- Docs that do not assume lab telepathy: clear fine-tune scripts, eval commands, and hardware notes.
- Failure modes: show where System 1 style decisions collapse - novel APIs, ambiguous tickets, security-sensitive ops.
- Upgrade path: clarify how CLM-35B relates so teams do not overfit their stack to an 8B dead end.
If those boxes stay empty, the model becomes another interesting paperweight. If they fill in, agent platforms get a concrete component choice: deliberative LLM for hard thought, contrastive fast model for the twitching hands. That division of labor feels more adult than pretending one megamodel should do every job at every latency budget.
Practical Takeaways for Builders Who Ship Agents
You do not need to rewrite your stack tomorrow. You do need a plan for evaluating decision-fast models. Start by carving out a latency-critical slice of your agent - maybe the terminal micro-loop or the "pick next grep" step - and A/B a CLM-8B fine-tune against your current workhorse. Hold the harness constant. Log everything.
Watch for silent quality regressions: models that answer instantly with confident wrong actions are worse than slow correct ones in high-stakes repos. Add verification steps. Prefer reversible tools. Budget a second model call when confidence is low - yes, that eats some of the speed win, and that is fine. Speed without brakes is how demos become outages.
On the org side, update capacity sheets with a column for "actions per second per GPU" instead of only tokens per second. Agentic workloads care about decisions, not poetry throughput. If the authors' ~9× claim even partially survives contact with your hardware, your spreadsheet will look different. If it does not, you learned cheaply.
And please, for the love of ops, do not paste production secrets into an experimental agent because the model felt "safe." Fast open models make it easier to spin up shadow systems that nobody reviews. Process still matters.
Open Threads Still Hanging
A few unresolved threads keep me from full promotional mode:
- How much of the reported coding success belongs to the weights versus the fine-tune data and wrapper remains unclear.
- The System 1 framing may thin out when tasks need long-horizon planning rather than local shell reflexes.
- CLM-35B may preserve the latency story or settle into being another strong midsize LLM.
- Contrastive action preferences can turn brittle under distribution shift - new languages, new cloud CLIs, adversarial repos.
- The safety story still needs flesh when actions execute in milliseconds.
Those are not gotchas meant to dunk on the team. They are the checks any serious adoption review should run. Early open releases deserve attentive scrutiny and friction, not blind installs.
Bottom Line
CLM-8B is an open, Apache-framed (per coverage) Contrastive Language Model aimed at fast state-to-action behavior for agents, introduced in public by Jacky Kwok with amplification from Azalia Mirhoseini and framed as Stanford/NVIDIA-linked research. The headline claims - up to about 9× faster than Jev-class inference, strong DeepSWE and Terminal-Bench results after light fine-tuning, comparable zero-shot quality with much lower latency, including chatter about ~32 ms-class terminal responses - are author-reported and still waiting on broad third-party confirmation. A larger CLM-35B is on the horizon.
If you build agentic coding systems, this is worth a focused eval, not a religion. Treat it as a candidate System 1 controller in a hybrid stack, measure your own harness, and keep the CLAIM sticker on every chart until independent runs land. The interesting part is not another chat model with a new logo. The interesting part is whether decision-shaped training can make agents feel instant without making them recklessly wrong.
Practical example: Building a latency-critical agent micro-loop eval for CLM-8B
Author charts about CLM-8B Just Dropped: The New Open AI Model That Claims to Be Up to 9× Faster Than Jev for Agents can look persuasive; your harness is the only vote that counts. Here is how a UK indie tooling team treated CLM-8B as a candidate System 1 controller - not a chat replacement - and measured it on their own terminal micro-loop.
Scenario
Sam runs a small product that already uses a heavier coding agent for multi-file refactors. The painful slice is the hot loop: read a failing test transcript, pick the next shell or edit action, run it, repeat. Users complain less about dull answers than about winter-gloves lag across fifty tool steps. Social posts are amplifying Contrastive Language Model weights and a claimed ~9× speedup versus Jev-class peers, plus strong DeepSWE / Terminal-Bench figures after light fine-tuning. Sam refuses to rewrite production on a press chart.
They carve out one latency-critical micro-loop: twenty fixed bugfix traces from their own monorepo. The current workhorse stays the deliberative path for novel architecture tickets. CLM-8B - if hosted and lightly fine-tuned on their traces - is only allowed to compete on the “pick next reversible action” step, with a slower reasoner as escape hatch when confidence is low.
The goal is an A/B that holds the harness constant: same tools, same allowlist, same retry policy. Log actions per second, p50/p95 latency, task success, and human interventions - then decide whether open weights earn a seat.
What the assistant needs
- Twenty anonymised failing-test traces from real work (inputs + allowed tools only)
- A fixed agent wrapper: tool schema, allowlist, max steps, and a “call slow reasoner” branch
- Baseline scores on the current model for the same twenty tasks
- Hardware notes for the CLM-8B host (GPU class, precision, batch) so “faster” has a referent
- A CLAIM sticker rule: author DeepSWE / Terminal-Bench / ~9× / ~32 ms figures stay labelled until this harness reproduces something
- A human owner who reviews wrong-but-fast actions before any CI bolt-on
Example instruction
You are helping me design a fair A/B for CLM-8B as a fast state→action controller inside our coding agent. Use only the harness facts I paste. Do not invent latency multipliers, DeepSWE scores, or license terms.
Task: From my twenty task names and current baseline notes, draft (1) a scoring sheet with columns Task / Model / Steps / Wall-clock / Success (pass/fail) / Human intervene (y/n) / Notes, (2) a six-bullet protocol that keeps the wrapper identical across models, and (3) a decision rule in clear everyday wording for when CLM-8B may own the micro-loop versus when we escalate to the slow reasoner.
Constraints: UK English. Label every author-reported number as CLAIM if it appears. Prefer reversible tools. Ban “agents finally solved” language. If a metric is missing from my paste, write [NEED MEASUREMENT] instead of guessing.
Output: the scoring-sheet header and one filled example row using placeholders, the protocol bullets, then the escalate/keep rule. No preamble.
How to test it
- Run the same ten traces on the current workhorse and on a CLM-8B fine-tune with the identical wrapper. Confirm only wall-clock and success differ - not tool lists.
- Ask: “Which author chart may change production this week?” A good answer: none until this harness shows a win on success and latency together.
- Edge case: CLM-8B answers in ~30 ms with a destructive command suggestion - confirm the allowlist and human review catch it before CI.
- Edge case: novel API ticket outside the twenty traces - confirm the slow reasoner owns it, not the reflex model.
- Acceptance checks: (1) no invented 9× claim as a measured result, (2) p50 and p95 latency logged, (3) success denominator is the twenty tasks, (4) wrong-fast actions counted, (5) Apache/license check happens offline before any commercial ship plan.
Result
Illustrative result (example estimate for one three-person tooling team on twenty fixed monorepo traces, not an independent lab rerun of the authors’ benches): Baseline workhorse finished 14 of 20 traces without human help; median step latency about 180 ms; two traces needed a human after a wrong edit. After a light fine-tune of CLM-8B on internal traces (same wrapper), 15 of 20 passed without help; median step latency about 45 ms on their single-GPU host; one additional wrong-fast action was caught by the allowlist before apply. Wall-clock for the twenty-trace suite fell from about 38 minutes to about 22 minutes including verification steps. On a hygiene checklist (harness held constant, CLAIM labels kept on author charts, slow reasoner still used for novel tickets, no production secrets in the experimental agent), 5 of 5 review items passed. Limitations: small task set, one hardware class, fine-tune data quality dominates; this does not validate the authors’ ~9× or DeepSWE figures outside this harness.
To measure your own version: freeze twenty traces; score the current model first; host CLM-8B with documented precision/settings; re-run with the same wrapper; report success/n, p50/p95, interventions, and whether any CLAIM number was treated as fact.
What can go wrong
- Chart worship: Shipping on a ~9× slide without your own p95.
- Wrong-fast actions: Instant confident mistakes beating slow correct ones in high-stakes repos.
- Harness drift: Changing tool prompts between models and calling it a model win.
- Single-hero stack: Dropping the deliberative reasoner for novel architecture work.
- License handwaving: Trusting coverage summaries instead of the actual weight-repo license files.
- Shadow CI: Bolting a fast open agent into pipelines without rate limits or injection review.
Practical takeaway
CLM-8B is worth a focused eval as a candidate System 1 controller for agentic coding - open weights, decision-shaped story, author-reported speed claims. It is not a creed and not a proven 9× for your stack until your harness says so. Hold the wrapper constant, log actions per second and wrong-fast rate, keep a slower escape hatch, and leave the CLAIM sticker on every press chart until independent runs (including yours) land.
FAQ
What is CLM-8B, and why are agent builders talking about it?
CLM-8B is the first public weight set in the Contrastive Language Model line - an open research release pitched as a fast decision loop for agents, not just another chat brain. The training story connects states to actions more like a System 1 reflex than a slow next-token essay. At eight billion parameters it is small enough for many labs and indie builders to host, with Apache 2.0 licensing framed in coverage around the drop. Numbers in launch posts are author-reported claims, not independent lab reruns.
How does CLM-8B claim to be up to 9× faster than Jev for agents?
Promoters claim up to about 9× faster inference than Jev-class models, with chatter about roughly 32 ms-class responses on a terminal bench setting. After light fine-tuning they also report strong agentic coding results - DeepSWE around 81.6% and Terminal-Bench 2.1 around 87.6% - and some zero-shot quality comparable to Jev at much lower latency. Treat the 9× and millisecond figures as claims until third parties reproduce them on shared hardware. Relative speed still needs batch size, precision, and decoding settings spelled out.
How is Contrastive Language Model training different from typical LLMs?
Most production LLMs generate one token at a time, which works for prose and long reasoning but taxes every micro-decision an agent makes. Contrastive Language Model training, as promoters describe it, nudges the network to map situations to preferred moves - more like a policy head than a novelist. That System 1 framing favors fast state-to-action loops over narrating forever between tool calls. CLM-8B can still emit text; the objective and evaluation story are slanted toward agentic control.
Who released CLM-8B, and is it truly open?
Jacky Kwok introduced the work; Azalia Mirhoseini amplified it; coverage frames a Stanford and NVIDIA-linked team effort with named researchers, public weights, and open code. Licensing around the release is framed as Apache 2.0, which matters for fine-tuning and shipping - but read the license files in the repo before you rely on coverage summaries. Named open releases tend to get stress-tested faster than anonymous dumps. Still early for broad third-party replication.
Why do state-to-action loops matter so much for agentic coding?
Agentic coding is often binary: the test goes green or it does not, so clean action picks beat beautiful failure essays. Latency compounds across dozens of tool steps - shave time per step and wall clock and cloud bills both move. A claimed order-of-magnitude speedup versus a Jev-class peer, even if it lands as "only" 4× in the wild, still rearranges capacity planning. Hybrid stacks - a fast CLM-like controller plus a heavier reasoner on hard branches - are a realistic long-term shape.
Should I trust the DeepSWE and Terminal-Bench scores for CLM-8B?
Those suites punish brittle agents, which is why ~81.6% DeepSWE and ~87.6% Terminal-Bench 2.1 after light fine-tuning look exciting. Agentic benches also reward scaffolding: harness quality, tool allowlists, and recovery prompts can swing success by double digits. Dig into what wrapper sat around the weights before treating the chart as settled science. Author benches are marketing until someone else reproduces them with documented recipes.
What should I know about CLM-35B and fine-tuning the 8B model?
A larger CLM-35B follow-on is mentioned as a plan; whether it keeps the latency story or trades speed for depth is unsettled. Fine-tuning CLM-8B on your own lint rules, deploy CLI, and monorepo traces is the realistic path to strong numbers - not zero-shot magic on day one. Teams might keep both sizes if they land: 8B for hot loops, 35B for hard planning. Open weights also make misuse easier, so guardrails and rate limits are product, not optional cosplay.
How should I read Jev comparisons without getting snowed?
Jev-class comparisons give "up to 9× faster" a peer anchor, which helps the pitch land. The danger is collapsing batch size, precision, context length, and tool-call serialization into one multiplier. When chatter cites ~32 ms-class responses, ask whether that means first token, full action JSON, or a cached prefix. Measure task success, dollar per solved ticket, and human intervention rate on your stack. Rivalry narratives force labs to publish numbers; your production KPIs still decide.
What should builders do before putting CLM-8B in production agents?
Carve out a latency-critical slice - such as the terminal micro-loop - and A/B a fine-tune against your current workhorse with the harness held constant. Watch for wrong-but-fast actions; add verification, prefer reversible tools, and budget a slower reasoner when confidence is low. Track actions per second per GPU, not only tokens per second. Do not paste production secrets into experimental agents, and leave a CLAIM sticker on every press chart until your own runs land.
How do I build a fair latency micro-loop eval for CLM-8B Just Dropped claims?
Freeze a small set of real failing-test traces, keep the same tool schema and allowlist across models, and log steps, wall-clock, success, and human interventions. Use CLM-8B only on the "pick next reversible action" step if you keep a deliberative escape hatch for novel tickets. Label author ~9×, DeepSWE, and millisecond figures as CLAIM until this harness shows a win on success and latency together. That focused eval beats rewriting production on a slide deck.
References
- Hugging Face — Contrastive Language Model (CLM-v0.1-8B) — huggingface.co
- GitHub — Contrastive-LM / CLM — github.com
- Stanford University — Azalia Mirhoseini — cs.stanford.edu
- Jacky Kwok — jackyk02.github.io
- X — Jacky Kwok introduction — x.com
- DeepSWE — deepswe.datacurve.ai
- Snorkel AI — Terminal-Bench 2.1 — snorkel.ai
- Jev — jevtypesafeai.com