Before I put a model into an app, I want to know how it behaves, not just how it scores on standard leaderboards.
Does it lecture the user? Repeat state propaganda when the premise is loaded? Assume everyone lives in the US?
These are the evals I've built to find out, plus the speech, image and hardware benchmarks behind my other work.
Test prompts are open on Hugging Face.
What came out when I ran them. Most of these are small, single-speaker or single-run tests built to answer one practical question, so read them as findings, not leaderboards. Runs marked preliminary have only a handful of prompts per model. Every chart has a table view, and each eval links the files the numbers came from.
Speech recognition & audioRun 21 October 2026
English–Hebrew Code-Switching ASR Benchmark
When an English speaker drops Hebrew words into a sentence, does the speech model write them correctly?
Finding: My best fine-tune, Hebrish Sabich v1.0, writes 73.8% of Hebrew terms correctly, against 45.9% for the best stock model, Whisper Large V3.
Hebrew terms transcribed correctlyTerm recall · higher is better
Method: Frozen test set v1, clean subset: 84 clips, 172 Hebrew term occurrences. Term recall counts Hebrew words written with the canonical romanized spelling; WER is over the whole transcript.
Does lowering the MP3 bitrate of dictation audio hurt transcription accuracy in audio-input LLMs?
Finding: The nine Gemini, Voxtral and MiMo models averaged 1.4-3.4% WER with no consistent trend from 16 to 64 kbps, while the three OpenAI GPT-Audio models averaged 17.8-32.5% because 13 of their 60 calls scored above 50% WER (responding instead of transcribing).
Mean word error rate per model, all bitratesMean WER over every scored call (4 clips x 5 bitrates; xiaomi/mimo-v2-omni 16 calls after 4 errors), computed from all.csv · lower is better
Median API latency per modelMedian wall-clock round trip (Israel to OpenRouter to provider) over successful calls, computed from all.csv · lower is better
voxtral-small-24b-25070.98 svoxtral-small-24b-2507: 0.98 s · n=20
gpt-audio-mini1.6 sgpt-audio-mini: 1.6 s · n=20
gpt-audio1.62 sgpt-audio: 1.62 s · n=20
gpt-4o-audio-preview1.75 sgpt-4o-audio-preview: 1.75 s · n=20
gemini-2.5-flash-lite1.77 sgemini-2.5-flash-lite: 1.77 s · n=20
gemini-2.5-flash1.84 sgemini-2.5-flash: 1.84 s · n=20
gemini-2.0-flash-0011.97 sgemini-2.0-flash-001: 1.97 s · n=20
gemini-2.0-flash-lite-0012.06 sgemini-2.0-flash-lite-001: 2.06 s · n=20
gemini-3-flash-preview2.08 sgemini-3-flash-preview: 2.08 s · n=20
gemini-3.1-flash-lite-preview2.72 sgemini-3.1-flash-lite-preview: 2.72 s · n=20
mimo-v2-omni4.56 smimo-v2-omni: 4.56 s · n=20
gemini-2.5-pro7.05 sgemini-2.5-pro: 7.05 s · n=20
Show as a table
Median wall-clock round trip (Israel to OpenRouter to provider) over successful calls, computed from all.csv
n
voxtral-small-24b-2507
0.98 s
20
gpt-audio-mini
1.6 s
20
gpt-audio
1.62 s
20
gpt-4o-audio-preview
1.75 s
20
gemini-2.5-flash-lite
1.77 s
20
gemini-2.5-flash
1.84 s
20
gemini-2.0-flash-001
1.97 s
20
gemini-2.0-flash-lite-001
2.06 s
20
gemini-3-flash-preview
2.08 s
20
gemini-3.1-flash-lite-preview
2.72 s
20
mimo-v2-omni
4.56 s
20
gemini-2.5-pro
7.05 s
20
Method: 4 short English dictation clips, each encoded at 16/24/32/48/64 kbps MP3 and sent with a verbatim-transcription prompt to 12 audio-input models on OpenRouter (240 calls). Scored by word error rate (lowercased, no punctuation stripping) and wall-clock latency.
Speech recognition & audioPreliminaryRun 10 December 2025
Whisper fine-tune accuracy
Does fine-tuning Whisper on about 90 minutes of one speaker's audio lower its word error rate?
Finding: Fine-tuning lowered overall WER for tiny, base and small but raised it for medium (2.71% to 2.96%) and large (2.77% to 3.01%), while code-switched WER fell at every size, from 5.00% to 1.92% for large.
Average WER by model size, all 91 clipsAverage WER · lower is better
Stock WhisperFine-tuned
tiny
7.85%tiny · Stock Whisper: 7.85%
6.59%tiny · Fine-tuned: 6.59%
base
5.46%base · Stock Whisper: 5.46%
5.02%base · Fine-tuned: 5.02%
small
3.96%small · Stock Whisper: 3.96%
3.45%small · Fine-tuned: 3.45%
medium
2.71%medium · Stock Whisper: 2.71%
2.96%medium · Fine-tuned: 2.96%
large
2.77%large · Stock Whisper: 2.77%
3.01%large · Fine-tuned: 3.01%
Show as a table
Stock Whisper
Fine-tuned
tiny
7.85%
6.59%
base
5.46%
5.02%
small
3.96%
3.45%
medium
2.71%
2.96%
large
2.77%
3.01%
Average WER on English-Hebrew code-switching clipsAverage WER on the hebrew_daily and hebrew_food clips (13 of 91) · lower is better
Stock WhisperFine-tuned
tiny
13.5%tiny · Stock Whisper: 13.5%
9.99%tiny · Fine-tuned: 9.99%
base
10%base · Stock Whisper: 10%
7.4%base · Fine-tuned: 7.4%
small
6.69%small · Stock Whisper: 6.69%
2.71%small · Fine-tuned: 2.71%
medium
6.24%medium · Stock Whisper: 6.24%
4.47%medium · Fine-tuned: 4.47%
large
5%large · Stock Whisper: 5%
1.92%large · Fine-tuned: 1.92%
Show as a table
Stock Whisper
Fine-tuned
tiny
13.5%
9.99%
base
10%
7.4%
small
6.69%
2.71%
medium
6.24%
4.47%
large
5%
1.92%
Method: 91 single-speaker test clips (technical vocabulary, everyday speech and English-Hebrew code-switching) transcribed by stock and fine-tuned Whisper tiny to large in whisper.cpp (Vulkan, Radeon RX 7700 XT). WER via werpy after Whisper normalisation; the stock 'large' is ggml-large-v3-turbo.
Speech recognition & audioPreliminaryRun 9 December 2025
Whisper vs speaking pace and background noise
How much do speaking pace and background noise change Whisper's word error rate?
Finding: Every recording stayed under 3% WER (average 0.97%); the worst single results came with a siren (2.90%) and transit noise (2.17%), and pace made no consistent difference.
Average WER by background noiseAverage WER per annotated background (results.md) · lower is better
Average WER by speaking paceAverage WER per annotated pace (results.md) · lower is better
Loud0%Loud: 0% · n=1
Whispered0.24%Whispered: 0.24% · n=3
Slow0.72%Slow: 0.72% · n=3
Weird voices0.72%Weird voices: 0.72% · n=3
Fast0.96%Fast: 0.96% · n=3
Quick1.19%Quick: 1.19% · n=3
Normal1.19%Normal: 1.19% · n=23
Show as a table
Average WER per annotated pace (results.md)
n
Loud
0%
1
Whispered
0.24%
3
Slow
0.72%
3
Weird voices
0.72%
3
Fast
0.96%
3
Quick
1.19%
3
Normal
1.19%
23
Method: 40 recordings of two ~140-word passages read by one speaker on a Samson Q2U, annotated for pace and background noise, transcribed by Whisper large-v3 (Fireworks API, whisper-v3). WER via jiwer.
How do local Whisper and cloud speech-to-text APIs compare on a 27-minute podcast, for words and for punctuation?
Finding: Local Whisper base had the lowest WER (17.52%) but matched only 21.90% of the reference punctuation, while Deepgram Nova-3 was 1.2 points behind on words and best on punctuation (51.17%).
Word error rate on a 27-minute podcastWER against professional transcript (n=1 file) · lower is better
Whisper base (local)17.5%Whisper base (local): 17.5% · n=1
Share of the reference's 688 punctuation marks matched (heuristic)
n
Deepgram Nova-3
51.2%
1
AssemblyAI Best
48.4%
1
OpenAI whisper-1
44.4%
1
Gladia Solaria-1
44.1%
1
Speechmatics SLAM-1
38.2%
1
Whisper base (local)
21.9%
1
Whisper tiny (local)
18.8%
1
Method: One 27-minute English podcast (4,748 words, 688 punctuation marks) against a professional human transcript; local Whisper base and tiny (Buzz) and five cloud APIs. WER and CER via jiwer; punctuation accuracy is a heuristic match of marks against the reference.
Speech recognition & audioPreliminaryRun 23 December 2025
Microphones for speech-to-text
Does the microphone you dictate into change speech-to-text accuracy?
Finding: All 17 recordings fell between 4.13% and 6.35% WER (13 to 20 word errors), and the best result came from a smartphone in a quiet room, not from the dearest microphone.
Average WER by microphone typeAverage WER per microphone type (README table); n = recordings · lower is better
USB gooseneck4.44%USB gooseneck: 4.44% · n=1
Boundary mic5.08%Boundary mic: 5.08% · n=2
USB speakerphone5.24%USB speakerphone: 5.24% · n=2
ASR HQ recording5.71%ASR HQ recording: 5.71% · n=1
Noisy market6.03%Noisy market: 6.03% · n=1
Show as a table
WER for the OnePlus Nord 3 5G recordings
n
Quiet home office
4.13%
1
Voicenotes app (MP3)
5.4%
1
ASR HQ recording
5.71%
1
Noisy market
6.03%
1
Method: One 315-word passage recorded raw on 12 microphones (17 recordings, including a phone in quiet and noisy rooms), all transcribed by OpenAI whisper-1 in one session. Scored by WER; at 315 words one word is about 0.32 percentage points.
On a CPU-only desktop, which Whisper model size and engine give the best accuracy for the wait?
Finding: Whisper medium had the lowest WER (6.07%), and faster-whisper matched openai-whisper's 9.95% while finishing sooner (4.87 s vs 6.51 s); distil-whisper was both slowest and least accurate (21.60%).
WER by Whisper model sizeWER on one sample (faster-whisper, CPU) · lower is better
tiny15.1%tiny: 15.1% · n=1
base9.95%base: 9.95% · n=1
small11.2%small: 11.2% · n=1
medium6.07%medium: 6.07% · n=1
large-v3-turbo7.04%large-v3-turbo: 7.04% · n=1
Show as a table
WER on one sample (faster-whisper, CPU)
n
tiny
15.1%
1
base
9.95%
1
small
11.2%
1
medium
6.07%
1
large-v3-turbo
7.04%
1
WER by engine (base model)WER on one sample (variant run in summary_stats.txt) · lower is better
faster-whisper9.95%faster-whisper: 9.95% · n=1
openai-whisper9.95%openai-whisper: 9.95% · n=1
distil-whisper21.6%distil-whisper: 21.6% · n=1
Show as a table
WER on one sample (variant run in summary_stats.txt)
n
faster-whisper
9.95%
1
openai-whisper
9.95%
1
distil-whisper
21.6%
1
Transcription time by engine (base model)Wall time for one sample on CPU (variant run in summary_stats.txt) · lower is better
faster-whisper4.87 sfaster-whisper: 4.87 s · n=1
openai-whisper6.51 sopenai-whisper: 6.51 s · n=1
distil-whisper38.5 sdistil-whisper: 38.5 s · n=1
Show as a table
Wall time for one sample on CPU (variant run in summary_stats.txt)
n
faster-whisper
4.87 s
1
openai-whisper
6.51 s
1
distil-whisper
38.5 s
1
Method: One conversational recording (audio/001.wav) transcribed on CPU (Intel i7-12700F) by Whisper tiny to large-v3-turbo and by faster-whisper, openai-whisper and distil-whisper. Scored by WER against the read script.
Model behaviour & AI safetyPreliminaryRun 19 October 2026 · smoke-01
Propaganda-Bait-Eval
Does a model repeat a one-sided political line when the question takes that line for granted, or does it push back?
Finding: In an 18-prompt smoke test both models challenged every loaded premise; their highest PRI was on the CCP series (DeepSeek V4.1 Flash 12.6, Claude Haiku 5.5 10.0), against overall PRIs of 2.1 and 5.0.
Overall Propaganda Regurgitation IndexMean of the six series PRIs (0-100); judge-scored · lower is better
Method: 72 loaded-premise prompts across six political lines (10 bait + 2 accurate-premise controls each); an LLM judge (Gemini 3.8 Flash) labels challenge, 1-10 endorsement and refusal, combined into a 0-100 Propaganda Regurgitation Index (PRI, lower is better). smoke-01 used 18 prompts (12 bait, 6 controls) on 2 models.
Model behaviour & AI safetyPreliminaryRun 19 October 2026 · on-air-01
Conspiracy-Endorsement-Eval
When a user brings a model a conspiracy theory, does the model push back, or endorse it and help the user go further?
Finding: Grok 4.7 and GPT-6.1 Sol pushed back on all 6 theories; DeepSeek V4.1 Flash and Hermes 4 405B pushed back on all but the invented IKEA theory; Dolphin, MythoMax and Llama 3.2 1B pushed back on at most 2 of 6, and Llama 3.2 1B also failed the MKUltra control.
Pushed back on the conspiracy theory% of the 6 theory prompts graded "pushed_back" (control excluded) · higher is better
% of the 6 theory prompts graded "pushed_back" (control excluded)
n
Grok 4.7
100%
6
GPT-6.1 Sol
100%
6
DeepSeek V4.1 Flash
83.3%
6
Hermes 4 405B
83.3%
6
Dolphin Mistral 24B Venice
33.3%
6
MythoMax 13B
33.3%
6
Llama 3.2 1B
0%
6
Mean endorsement of the theoryHand-graded endorsement 0-10 (0 = rejects with evidence, 10 = fully affirms), mean over the 6 theory prompts; refusals carry no score and are excluded, so n varies · lower is better
Hand-graded endorsement 0-10 (0 = rejects with evidence, 10 = fully affirms), mean over the 6 theory prompts; refusals carry no score and are excluded, so n varies
n
Grok 4.7
0
6
GPT-6.1 Sol
0
6
DeepSeek V4.1 Flash
1.33
6
Hermes 4 405B
1.17
6
Dolphin Mistral 24B Venice
4.33
6
MythoMax 13B
4.67
6
Llama 3.2 1B
5.5
2
Endorsement by theoryHand-graded endorsement 0-10 per prompt; null = refused (no score) · lower is better
Method: 98 prompts (45 theories in curious and believer framings, plus 8 real-conspiracy controls), graded for pushback, safety refusal and 0-10 endorsement. on-air-01 is a hand-read first look: 7 prompts (6 theories + MKUltra control) x 7 models, one sample each via OpenRouter, graded by hand against the rubric, no judge model.
Model behaviour & AI safetyPreliminaryRun 20 October 2026 · on-air-01
Israel-Palestine-Framing-Eval
Does a model affirm misinformation or one side's framing about the Israeli-Palestinian conflict, or treat the facts straight?
Finding: Only Dolphin Mistral 24B Venice hard-failed (4 of 14 loaded premises, two per side); all other models corrected every loaded premise, and lean scores stayed low (means 0.11-1.21 out of 5).
Hard fails on loaded premisesLoaded-premise answers that affirmed the false or contested premise (out of 14, 7 mirrored pairs) · lower is better
Method: 70 prompts (mirrored loaded premises, terminology/narrative pairs, open-neutral and controls). on-air-01: 19 prompts x 6 models, one sample each via OpenRouter, hand-graded by Claude Sonnet 5.5 against the rubric (tier 1 hard fail on 14 loaded premises; tier 2 lean 0-5 per side on all 19), no judge model.
Model behaviour & AI safetyPreliminaryRun 19 October 2026 · poc-01
Dan-Eval
Does a model carry the biases and blind spots that make it annoying or unusable for an Israel-based, English-speaking, non-American user?
Finding: Both models scored about 1 of 3 on American centrism; DeepSeek V4.1 Flash scored the maximum 3.0 on CCP censorship against Claude Sonnet 5.5's 0.0, while on the 4 Israel/Palestine pairs the judge gave DeepSeek a 75% win rate.
Judge severity by lensMean judge score 0-3 per lens (0 = clean, 3 = severe); n per lens: general 24, American centrism 10, Israel/Palestine 4, CCP censorship 4 · lower is better
Claude Sonnet 5.5DeepSeek V4.1 Flash
General
0.08General · Claude Sonnet 5.5: 0.08
0.67General · DeepSeek V4.1 Flash: 0.67
American centrism
1American centrism · Claude Sonnet 5.5: 1
1.1American centrism · DeepSeek V4.1 Flash: 1.1
Israel/Palestine
0Israel/Palestine · Claude Sonnet 5.5: 0
0.25Israel/Palestine · DeepSeek V4.1 Flash: 0.25
CCP censorship
0CCP censorship · Claude Sonnet 5.5: 0
3CCP censorship · DeepSeek V4.1 Flash: 3
Show as a table
Claude Sonnet 5.5
DeepSeek V4.1 Flash
General
0.08
0.67
American centrism
1
1.1
Israel/Palestine
0
0.25
CCP censorship
0
3
Judge pairwise win rate by lensShare of head-to-head pairs the judge preferred (ties count half); n pairs: American centrism 10, Israel/Palestine 4, CCP censorship 4 · higher is better
Claude Sonnet 5.5DeepSeek V4.1 Flash
American centrism
50%American centrism · Claude Sonnet 5.5: 50%
50%American centrism · DeepSeek V4.1 Flash: 50%
Israel/Palestine
25%Israel/Palestine · Claude Sonnet 5.5: 25%
75%Israel/Palestine · DeepSeek V4.1 Flash: 75%
CCP censorship
100%CCP censorship · Claude Sonnet 5.5: 100%
0%CCP censorship · DeepSeek V4.1 Flash: 0%
Show as a table
Claude Sonnet 5.5
DeepSeek V4.1 Flash
American centrism
50%
50%
Israel/Palestine
25%
75%
CCP censorship
100%
0%
Method: Composite of lenses (general quality, American centrism, Israel/Palestine, CCP censorship). poc-01: 24 POC prompts x 2 models; judge Gemini 3.8 Flash scores each answer 0-3 per lens (0 = clean, 3 = severe) and picks the better of each pair; human A/B ratings not yet collected.
Can text-to-image models write a requested Hebrew word correctly?
Finding: Only Gemini 3 Pro and Nano Banana Pro wrote both words correctly, Wan 2.5 got one, the other nine models got none, and writing the prompt in Hebrew changed nothing.
Hebrew words rendered correctly (of 2)Words rendered correctly, English prompts · higher is better
Gemini 3 Pro2Gemini 3 Pro: 2 · n=2
Nano Banana Pro2Nano Banana Pro: 2 · n=2
Wan 2.51Wan 2.5: 1 · n=2
Flux 20Flux 2: 0 · n=2
Flux 2 Pro0Flux 2 Pro: 0 · n=2
Flux Dev0Flux Dev: 0 · n=2
Imagen 40Imagen 4: 0 · n=2
Ideogram V20Ideogram V2: 0 · n=2
Qwen Image0Qwen Image: 0 · n=2
SD 3.5 Large0SD 3.5 Large: 0 · n=2
Recraft V30Recraft V3: 0 · n=2
Aura Flow0Aura Flow: 0 · n=2
Show as a table
Words rendered correctly, English prompts
n
Gemini 3 Pro
2
2
Nano Banana Pro
2
2
Wan 2.5
1
2
Flux 2
0
2
Flux 2 Pro
0
2
Flux Dev
0
2
Imagen 4
0
2
Ideogram V2
0
2
Qwen Image
0
2
SD 3.5 Large
0
2
Recraft V3
0
2
Aura Flow
0
2
English vs Hebrew promptWords rendered correctly (of 2) · higher is better
English promptHebrew prompt
Nano Banana Pro
2Nano Banana Pro · English prompt: 2
2Nano Banana Pro · Hebrew prompt: 2
Wan 2.5
1Wan 2.5 · English prompt: 1
1Wan 2.5 · Hebrew prompt: 1
Flux 2
0Flux 2 · English prompt: 0
0Flux 2 · Hebrew prompt: 0
Flux Dev
0Flux Dev · English prompt: 0
0Flux Dev · Hebrew prompt: 0
Show as a table
English prompt
Hebrew prompt
Nano Banana Pro
2
2
Wan 2.5
1
1
Flux 2
0
0
Flux Dev
0
0
Method: 12 models on fal.ai asked for a 16:9 banner showing שלום and פירגון (English prompt); each image scored pass/fail by hand for correct Hebrew. Series 2 repeated it with Hebrew prompts on 4 models.
Local inference & hardwarePreliminaryRun 4 April 2026
Gemma 4 E4B vs Qwen3-VL 8B, local
How do Gemma 4 E4B and Qwen3-VL 8B compare in speed and usefulness on a consumer AMD GPU?
Finding: Gemma 4 E4B generated 16% faster on vision (63.82 vs 54.83 tok/s) and finished each timed task 2.7-10x sooner, but only Qwen3-VL summarised the repo correctly and both failed CSV analysis and multi-step tool use.
Wall time per taskTotal wall-clock time · lower is better
Gemma 4 E4BQwen3-VL 8B
Vision suite (7 images)
73.9 sVision suite (7 images) · Gemma 4 E4B: 73.9 s
200 sVision suite (7 images) · Qwen3-VL 8B: 200 s
CSV analysis
25 sCSV analysis · Gemma 4 E4B: 25 s
262 sCSV analysis · Qwen3-VL 8B: 262 s
Bash script
32 sBash script · Gemma 4 E4B: 32 s
222 sBash script · Qwen3-VL 8B: 222 s
Show as a table
Gemma 4 E4B
Qwen3-VL 8B
Vision suite (7 images)
73.9 s
200 s
CSV analysis
25 s
262 s
Bash script
32 s
222 s
Output tokens per taskTokens generated (Qwen's include thinking tokens) · lower is better
Method: Both models (Q4_K_M) run in Ollama 0.20.2 on an AMD Radeon RX 7800 XT (ROCm) through a custom harness: a 7-image vision suite, opinion essays, CSV analysis, repo summarisation, a bash script and an agentic tool loop. Measured tokens/s, time to first token, wall time and output tokens; quality judged by hand.
Method: PyTorch 2.9.1+rocm6.3 (ROCm 6.4.0) on a Radeon RX 7700 XT (gfx1101, 12 GB) in an i7-12700F / 64 GB DDR5 desktop under normal desktop load: GEMM, ResNet-50 inference and HIP memory-bandwidth tests.
Grouped by area. "Prompts" links the open test set on Hugging Face. Updated 21 October 2026.
Benchmark
Area
Stage
Links
Prompts
Conspiracy Endorsement EvalWhether a model pushes back on, endorses or encourages 45 conspiracy theories, each asked in a curious and a believer framing. First hand-graded run (on-air-01): 7 models.
Israel–Palestine Framing EvalWhether a model treats mirrored pro-Israel and pro-Palestinian framings of the same events differently: loaded premises, framing pairs and open-neutral questions. First graded run (on-air-01): 6 models.
Dan-EvalA composite of the model-behaviour checks I run before adopting a model for an app, giving one scorecard per model. Each component lives in its own repo.
Propaganda Bait EvalFeeds models loaded political premises across six series (CCP, MAGA, pro-Israel, pro-Palestine, Kremlin, US-progressive) and scores how readily each framing is repeated, with per-series selectivity.
American Centrism EvalWhether a model assumes the user is in the US when nothing says so: geography, units, spelling, law and culture defaults, with controls.
The PC BenchDoes the model scold you? Measures lecturing, moralising, terminology correction and unrequested disclaimers on legitimate requests. 24 mirrored pairs (Western-progressive vs conservative/religious triggers) plus neutral controls.
US Partisan Framing EvalAsked a neutral question about a divisive US issue, does the model answer with the popular Democratic or Republican framing, and on foreign policy, hawkish or dovish? Blinded anchor-based grading, 14 topics plus factual controls.
English–Hebrew Code-Switching ASR BenchmarkSpeech-to-text on English speech that contains Hebrew words: a frozen test set, runner, scorer and public leaderboard, comparing stock models with code-switching fine-tunes.
Whisper Fine-Tune Accuracy EvalWER of personal Whisper fine-tunes vs stock Whisper at each model size. Fine-tuning helped the small models, hurt the large ones, and improved code-switching at every size.
Results: Run, with published results · Built: Repo, test material and harness exist; not yet fully run · Prompts only: Repo and published test prompts; no harness yet · Planned: Design only: a plan file, or a public repo with no test prompts yet
Need speech AI, agent workflows or evals built for your team?
Everything on this site is open source and built in public. If you want the same kind of work done for your
organisation, I take on consulting and build projects through DSR Holdings.