画 AI Inference
Renders by the image, or the card by the hour.
Lotus Diffusion-1 is our own image model: 3.1 billion parameters, native 1024 square, served from Tokyo and Hong Kong at $0.012 a render with the first 1,000 of each month included. If you would rather have the silicon, an L40S is $1.40 an hour and an H100 is $2.90. Both are on this page — the model card, the whole API, and the arithmetic for choosing between them.

the sun as a low flat disc above a still horizon
seed 48226steps 20cfg 4.5
型 Model Card
One checkpoint, stated in full.
Lotus Diffusion-1 is a single checkpoint, frozen on 30 June 2026, served from the GPU rows at Tokyo and Hong Kong. It is 3.1 billion parameters of latent diffusion trained at 1024 square, and it is good at a narrow thing: ink and wash, one subject, mist, wide empty ground. It is bad at text, hands and crowds, and we have not fixed that. The table states the corpus, the licence position and the filtering, including the parts that will disappoint you. Nothing here is benchmarked against anyone else, because we have not run those benchmarks.
← the table scrolls sideways →
| Field | Lotus Diffusion-1 | Note |
|---|---|---|
| Architecture | Latent diffusion, U-Net denoiser | v-parameterised |
| Text encoders | Two, frozen, 0.51 B combined | English and Japanese prompts |
| Parameters | 3.1 B total, 2.4 B in the U-Net | bf16, 6.2 GB on disk |
| Autoencoder | 4× downsample, 4-channel latent | Trained on the same corpus |
| Native resolution | 1024 × 1024 | 768–1536, aspect 1:2 to 2:1 |
| Default sampler | DPM-Solver++ 2M, Karras sigmas | euler-a and ddim also offered |
| VRAM at 1024², batch 1 | 9.8 GB | 23.1 GB at batch 8 |
| Training corpus | 412 M image–text pairs | De-duplicated at 0.94 cosine |
| — licensed stock | 61% | Per-image commercial licence |
| — public-domain scans | 24% | Museum and library collections |
| — commissioned work | 9% | Photographers paid, contracts held |
| — synthetic | 6% | Rendered in-house, self-labelled |
| Opt-out | Honoured at the next retrain | [email protected] |
| Output rights | Yours. We claim no copyright. | Commercial use, resale, edits |
| IP indemnity | Not offered | We will not pretend otherwise |
| Does well | Ink and wash, one subject, mist | Line holds from 20 steps up |
| Landscape, still life, 1024 square | Muted and monochrome palettes | |
| Wide negative space, dry brush | cfg 3.5–5.5 is the useful band | |
| Does badly | Legible text of any length | Words come out as marks |
| Hands, crowds, exact counts | Past three subjects it degrades | |
| Photoreal skin, faces in profile | Not what it was trained for | |
| Safety, training set | Hash match plus NSFW classifier | Third-party hash list |
| Safety, input | Prompt classifier → 422 | 0.4% measured false-block rate |
| Safety, output | Image classifier → 422 | Not billed; retry a new seed |
| Likenesses | Named real people are refused | Public figures included |
| Not claimed | No benchmark placement | We publish no FID or CLIP table |
| No third-party audit | None commissioned to date | |
| No factual grounding | It paints; it does not know | |
| Checkpoint hash | sha256 4e91…c07d | Frozen. A retrain gets a new name |
| Deprecation notice | 12 months, minimum | Old checkpoints stay callable |
Trained 12 Feb – 30 Jun 2026 on our own H100 rows at HND-1. Corpus percentages are by image count, not by weight in training. Opt-out removes matched images from the next corpus build; it cannot remove them from a checkpoint already frozen. Prompt language: English and Japanese are trained. Other languages reach the encoder and will produce something, but we make no claim about what.
版 Plates
Six renders, and the seeds that made them.
Six images straight out of the endpoint, with the prompt and the seed that produced each one printed underneath. Nothing was retouched, upscaled or re-rolled: the first render at that seed is the one on the wall. Post the same body to the same region and the same image comes back, byte for byte, until the checkpoint changes name. That is the whole demonstration. If this house style suits your work, the model will hold it all day. If you need photographs of people, it will not, and no prompt will make it.
版01

a lotus bud rising from still water at dusk
seed 41207steps 28cfg 4.5
版02

a solitary crane in shallow water, reeds behind
seed 20873steps 32cfg 4.2
版03

mountain ridges receding into mist over a bay
seed 33914steps 28cfg 4.5
版04

a wooden fishing boat at rest, reflection whole
seed 57402steps 24cfg 5.0
版05

a pine branch from the upper right, mist below
seed 61150steps 36cfg 3.8
版06

the sun as a low flat disc above a still horizon
seed 48226steps 20cfg 4.5
Every plate is the first render at that seed — nothing was retouched, upscaled or re-rolled. Post the same body to the same region and the same image comes back until the checkpoint changes name. The prompts printed here are the subject clause; the full body adds one shared style clause, which is in the API section below.
口 The Endpoint
One POST, one body, up to eight images.
The request shape follows the widely used images API closely enough that most client libraries work by changing the base URL and the model name — and it is documented here in full rather than by pointing at someone else's page. Everything under 120 seconds is synchronous; anything longer is yours to poll or to take on a webhook. Bearer auth, idempotency keys honoured for 24 hours, and every response carries the region, the seed and the render time in its headers, so your logs can reproduce any image later without asking us.
← the table scrolls sideways →
| Parameter | Type | Default | Accepts | Note |
|---|---|---|---|---|
| Authorization | header | no | Bearer |
Required |
| Idempotency-Key | header | no | ≤ 64 characters | Replays for 24 hours |
| model | string | no | lotus-diffusion-1 | Required |
| prompt | string | no | 1–900 characters | Required. EN or JA |
| negative_prompt | string | "" | 0–300 characters | Costs nothing extra |
| size | string | 1024x1024 | 768–1536, multiples of 64 | Aspect 1:2 to 2:1 |
| steps | integer | 28 | 8–60 | Above 40 rarely visible |
| cfg | number | 4.5 | 1.0–12.0 | 3.5–5.5 for ink work |
| seed | integer | random | 0–4294967295 | Always echoed back |
| n | integer | 1 | 1–8 | Charged as n images |
| sampler | string | dpm2m-karras | euler-a, ddim | Seeds differ per sampler |
| image | string | no | base64 or https URL | Makes it img2img |
| strength | number | 0.62 | 0.05–1.00 | Requires image |
| mask | string | no | base64 PNG, alpha paints | Requires image |
| region | string | account default | hnd, hkg | Where it renders and stays |
| response_format | string | url | url, b64_json | URL expires in 24 h |
| webhook | string | no | https URL | POST on completion |
| user | string | no | ≤ 64 characters | Echoed, never stored |
Body is JSON; anything not listed is rejected rather than ignored, so a typo fails loudly at 400. Uploads (image, mask) cap at 12 MB and must match the requested size. Timeout: renders are cut at 120 s and returned as 504. n renders sequentially on the metered endpoint; on a tenancy it batches. Idempotency: the same key within 24 h returns the original response, including the original seed, and is not charged twice.
curl -sS https://api.yunagi.cloud/v1/images \
-H "Authorization: Bearer $YUNAGI_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: plate-03-2026-08-26" \
-d '{
"model": "lotus-diffusion-1",
"prompt": "mountain ridges receding into mist over a bay, sumi-e, ink on aged washi, wide negative space, no colour",
"size": "1024x1024",
"steps": 28,
"cfg": 4.5,
"seed": 33914,
"n": 1,
"region": "hnd",
"response_format": "url"
}'import os, requests
r = requests.post(
"https://api.yunagi.cloud/v1/images",
headers={"Authorization": f"Bearer {os.environ['YUNAGI_API_KEY']}"},
json={
"model": "lotus-diffusion-1",
"prompt": "a solitary crane in shallow water, reeds behind, sumi-e",
"size": "1024x1024",
"steps": 32,
"cfg": 4.2,
"seed": 20873,
"region": "hnd",
},
timeout=180,
)
r.raise_for_status()
image = r.json()["data"][0]
print(image["url"], image["seed"], r.headers["X-Yunagi-Render-Ms"])const res = await fetch("https://api.yunagi.cloud/v1/images", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.YUNAGI_API_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "lotus-diffusion-1",
prompt: "a wooden fishing boat at rest, reflection whole, sumi-e",
size: "1024x1024",
steps: 24,
cfg: 5.0,
seed: 57402,
region: "hnd"
})
});
if (!res.ok) {
const { error } = await res.json();
throw new Error(`${res.status} ${error.code} ${error.request_id}`);
}
const { data, usage } = await res.json();
console.log(data[0].url, usage.images_charged, usage.render_ms);HTTP/1.1 200 OK
X-Yunagi-Request-Id: req_01JBQ7F2K9V4
X-Yunagi-Region: hnd
X-Yunagi-Render-Ms: 1874
X-Yunagi-Included-Remaining: 947
{
"id": "img_01JBQ7F2K9V4",
"created": 1756180800,
"model": "lotus-diffusion-1",
"region": "hnd",
"data": [
{
"url": "https://cdn.yunagi.cloud/r/01JBQ7F2K9V4.png",
"expires_at": 1756267200,
"seed": 33914,
"steps": 28,
"cfg": 4.5,
"size": "1024x1024",
"sampler": "dpm2m-karras",
"sha256": "9f2c…a71b"
}
],
"usage": {
"images_charged": 0,
"included_remaining": 947,
"render_ms": 1874
}
}
Full reference — docs.yunagi.cloud/v1
誤 Errors & Limits
Every failure names itself.
One envelope for every failure: a stable code string, a sentence of English, and the request id to quote at us. Blocked prompts are not billed. Blocked outputs are not billed either — retry with a new seed. Rate limits are per key rather than per account, so a runaway batch job cannot starve your production key, and the 429 states how long to wait instead of making you guess. A new key starts at 60 requests a minute and four renders in flight; verified accounts get four times that, usually the same working day.
← the table scrolls sideways →
| Status | Code | Meaning | Retry |
|---|---|---|---|
| 400 | invalid_request | Body failed validation | No — fix and resend |
| 401 | invalid_api_key | Key wrong, revoked or expired | no |
| 402 | quota_exhausted | Account spend cap reached | Raise the cap first |
| 403 | region_unavailable | Region not enabled for this key | no |
| 404 | model_not_found | Unknown model name | no |
| 413 | payload_too_large | Image or mask over 12 MB | no |
| 422 | prompt_blocked | Input classifier refused it | No — not billed |
| 422 | output_blocked | Output classifier refused it | New seed — not billed |
| 429 | rate_limited | Over RPM or renders in flight | Yes — honour Retry-After |
| 499 | client_closed | You hung up mid-render | Not billed |
| 500 | internal_error | Ours. Quote the request id. | Yes — backoff |
| 503 | no_capacity | No free card in that region | Yes — honour Retry-After |
| 504 | render_timeout | Render passed 120 seconds | Yes — fewer steps |
Envelope: every non-2xx returns {"error":{"code","message","request_id"}}. Match on code, never on the message — messages get reworded, codes do not. Backoff: 1 s, 2 s, 4 s, 8 s with jitter, five attempts, then stop. 503 is a capacity signal, not a fault; if it repeats in one region, send the next request to the other. Incidents are posted at notices.yunagi.cloud before support can answer the ticket.
| Key | Requests/min | Renders in flight | Included/month | Over the limit |
|---|---|---|---|---|
| New key | 60 | 4 | 1,000 | 429 with Retry-After |
| Verified account | 240 | 12 | 1,000 | 429 with Retry-After |
| Volume, on request | 600 | 32 | 1,000 | 429 with Retry-After |
| GPU tenancy | No endpoint limit | What fits in VRAM | n/a — flat rate | no |
Per key, not per account: issue one key per workload and a runaway batch cannot starve production. Included renders are per account, not per key; they reset at 00:00 UTC on the first of the month and do not roll over. Verification is a business check, not a payment, and is usually done the same working day. Headers on every response: X-Yunagi-Ratelimit-Limit, -Remaining, -Reset, and X-Yunagi-Included-Remaining.
HTTP/1.1 429 Too Many Requests
Retry-After: 2
X-Yunagi-Request-Id: req_01JBQ7G0P2M8
X-Yunagi-Ratelimit-Limit: 60
X-Yunagi-Ratelimit-Remaining: 0
X-Yunagi-Ratelimit-Reset: 2026-08-26T04:11:20Z
{
"error": {
"code": "rate_limited",
"message": "60 requests per minute on this key. 4 renders already in flight.",
"request_id": "req_01JBQ7G0P2M8",
"retry_after_s": 2
}
}
速 Latency
Pixels and steps. Nothing else.
Render time is a function of pixel count and step count; prompt length does not move it. The figures below are medians measured at HND-1 over the fourteen days to 20 August 2026, batch of one, queue time included and network time to you excluded. p95 sits at roughly two and a half times p50, and that gap is queueing rather than compute. At 28 steps and 1024 square the endpoint returns in 1.9 seconds at the median. Sixty steps buys very little on this model; twenty is often enough.
← the table scrolls sideways →
| Size | Steps | L40S | H100 | Endpoint p50 | Endpoint p95 | L40S img/hr |
|---|---|---|---|---|---|---|
| 768 × 768 | 20 | 1.9 s | 0.9 s | 1.2 s | 3.1 s | 2,740 |
| 768 × 768 | 28 | 2.5 s | 1.2 s | 1.5 s | 3.6 s | 2,090 |
| 1024 × 1024 | 20 | 2.6 s | 1.2 s | 1.5 s | 3.7 s | 2,010 |
| 1024 × 1024 | 28 | 3.4 s | 1.6 s | 1.9 s | 4.6 s | 1,530 |
| 1024 × 1024 | 40 | 4.8 s | 2.3 s | 2.6 s | 5.9 s | 1,090 |
| 1024 × 1536 | 28 | 5.1 s | 2.4 s | 2.7 s | 6.2 s | 1,020 |
| 1536 × 1536 | 28 | 7.9 s | 3.7 s | 4.1 s | 8.8 s | 660 |
L40S and H100 columns are compute only, batch of one, on a dedicated card. Endpoint p50/p95 are the whole request on the metered endpoint, which runs H100 rows — queue included, network time to you excluded. img/hr is sustained throughput on one L40S at batch 8, where per-image cost falls about 31%. Add the round-trip to reach HND-1: 224 ms from London, 158 ms from New York, 98 ms from Los Angeles, 34 ms from Seoul, 51 ms from Hong Kong.
比 Break-even
When the card is cheaper than the meter.
Metered renders cost $0.012 each with the first 1,000 of each month included. A rented card costs the same whether it renders or idles, so the only question is how busy you would keep it. At Tokyo prices an L40S pays for itself at 85,167 images a month — 2,800 a day, about eleven per cent of the card's day actually rendering. Below that the endpoint is cheaper and needs no operations from you. Above it, rent, and keep the difference. The curve is drawn from the same numbers printed in the table.
metered, $0.012 an imageone L40S at HND-1, $1,022 a month
The share of a card’s day actually spent rendering, at the point where renting stops costing more than metering. Below these figures the endpoint is cheaper and needs no operations from you.
L40S · HND-111.0% H100 · HND-110.7% L40S · HKG-112.2% H100 · HKG-111.5%← the table scrolls sideways →
| Card and site | Hourly | Month, 730 h | Break-even images/month | Per day | Duty at break-even |
|---|---|---|---|---|---|
| L40S · HND-1 | $1.40 | $1,022.00 | 85,167 | 2,800 | 11.0% |
| H100 · HND-1 | $2.90 | $2,117.00 | 176,417 | 5,800 | 10.7% |
| L40S · HKG-1 | $1.55 | $1,131.50 | 94,292 | 3,100 | 12.2% |
| H100 · HKG-1 | $3.10 | $2,263.00 | 188,584 | 6,200 | 11.5% |
Month = 730 hours (30.42 days), billed per minute after a one-hour minimum. Break-even = monthly card cost ÷ $0.012, ignoring the 1,000 renders included each month; add 1,000 for the true crossing — 86,167 images on an L40S at Tokyo. Duty is the share of the day the card would spend rendering at that volume, at 3.4 s (L40S) and 1.6 s (H100) for 1024², 28 steps. Below that duty the meter is cheaper and asks nothing of you; above it, the card is. The chart beside this table is drawn by page.js from #breakeven[data-breakeven]='{"maxImages":100000,"maxCost":1200,"perImage":0.012,"gpuMonthly":1022}' — the L40S at HND-1. Duty bars: .fill-bar with data-fill="11.0%", "10.7%", "12.2%", "11.5%".
← the table scrolls sideways →
| Images/month | Metered | L40S tenancy | H100 tenancy | Cheaper by |
|---|---|---|---|---|
| 1,000 | $0.00 | $1,022.00 | $2,117.00 | Metered, $1,022.00 |
| 10,000 | $108.00 | $1,022.00 | $2,117.00 | Metered, $914.00 |
| 25,000 | $288.00 | $1,022.00 | $2,117.00 | Metered, $734.00 |
| 50,000 | $588.00 | $1,022.00 | $2,117.00 | Metered, $434.00 |
| 86,167 | $1,022.00 | $1,022.00 | $2,117.00 | Level |
| 120,000 | $1,428.00 | $1,022.00 | $2,117.00 | L40S, $406.00 |
| 250,000 | $2,988.00 | $1,022.00 | $2,117.00 | L40S, $1,966.00 |
| 500,000 | $5,988.00 | $1,022.00 | $2,117.00 | L40S, $4,966.00 |
Metered = (images − 1,000) × $0.012. Tenancy is flat: one card, 730 hours, whether it renders or idles. One L40S is enough for every row here — 500,000 renders a month at 1024², 28 steps is 65% duty at batch 8. The H100 never wins on price for this model; it wins when a single render must come back in 1.6 s rather than 3.4 s. Not counted: your own time. A tenancy is a machine you now operate, patch and monitor. If that costs you more than $400 a month of attention, the 120,000-image row is not really a win.
架 GPU Tenancy
The whole card, by the minute.
A tenancy is the entire card and the host it sits in, at Tokyo or Hong Kong, billed per minute after a one-hour minimum. You get root, an NVMe scratch volume and no supervision: run Lotus, run your own weights, run something that is not diffusion at all. Hong Kong costs about eleven per cent more than Tokyo because transit and power there cost us more. If you want a card mainly for latency rather than volume, the H100 roughly halves the render time; it does not halve the bill.
← the table scrolls sideways →
| Specification | L40S | H100 |
|---|---|---|
| Architecture | Ada Lovelace | Hopper |
| VRAM | 48 GB GDDR6, ECC | 80 GB HBM3 |
| Memory bandwidth | 864 GB/s | 3.35 TB/s |
| bf16 dense | 362 TFLOPS | 990 TFLOPS |
| Board power | 350 W | 700 W |
| Form | PCIe 4.0 ×16 | SXM5 |
| Host vCPU | 16 | 26 |
| Host memory | 128 GB | 224 GB |
| NVMe scratch | 1.9 TB | 3.8 TB |
| Port | 10 Gbps, unmetered | 25 Gbps, unmetered |
| Lotus 1024², 28 steps | 3.4 s | 1.6 s |
| Lotus sustained, batch 8 | 1,530 img/hr | 3,210 img/hr |
| Largest comfortable render | 1536², batch 2 | 1536², batch 8 |
| HND-1 hourly | $1.40 | $2.90 |
| HKG-1 hourly | $1.55 | $3.10 |
| HND-1 month, 730 h | $1,022.00 | $2,117.00 |
| HKG-1 month, 730 h | $1,131.50 | $2,263.00 |
| Minimum term | 1 hour | 1 hour |
| Billing after that | Per minute | Per minute |
| Provisioning, median | 6 min | 9 min |
| On release | Volume discarded, zeroed | Volume discarded, zeroed |
Sites: GPU rows stand only at 東京 HND-1 and 香港 HKG-1. London, New York, Los Angeles and Seoul carry the full compute and domain catalogue and no cards. Hong Kong is 10–11% dearer than Tokyo because transit and power there cost us more; nothing else differs. You get root. We do not inspect the volume and we do not support what is on it. The 99.9% SLA covers the machine and the network, not your code. Multi-card hosts (2× or 4× H100, NVLink within the node) are quoted rather than listed — ask.
$ ssh [email protected] Yunagi GPU tenancy · HND-1 · L40S 48 GB · billed per minute # nvidia-smi --query-gpu=name,memory.total --format=csv,noheader NVIDIA L40S, 46068 MiB # lsblk -o NAME,SIZE,MOUNTPOINT | grep weights nvme1n1 1.9T /mnt/weights # yours. We do not read it. # yunagi release --wipe Detaching /mnt/weights … done Zeroing 1.9 TB NVMe … done (blkdiscard, verify pass logged) Billing stopped 2026-08-26T13:04:11Z · 3 h 22 min · $4.71
GPU rows stand at 東京 HND-1 and 香港 HKG-1 only. Prices in USD, excluding VAT. UK VAT at 20% is added where applicable. Published 2026.08.26.
守 Data Handling
We do not train on anything you send.
一01
Your prompts are not training data.
Not now and not later. There is no opt-out because there is nothing to opt out of, and no clause reserving the right to change our mind about it.
二02
Weights stay on your volume.
On a tenancy the card is yours and so is the disk under it. On release the volume is cryptographically erased before the host is re-issued, and the erase is logged against your account.
三03
Renders are yours.
Output carries no licence back to us and no attribution requirement. What we keep, where, and for how long is the table on the other side of this cut.
録 What We Hold
Held, where, and for how long.
Everything the endpoint retains, with the reason and the clock. Nothing on this list is kept because it might be useful later.
← the table scrolls sideways →
| Item | Where it sits | Kept | Then |
|---|---|---|---|
| Prompt and negative prompt | Region that rendered it | 30 days | Deleted |
| Uploaded image or mask | Render node memory | The render only | Never written to disk |
| Rendered image, url format | Regional object store | 24 hours | Deleted |
| Rendered image, b64_json | Nowhere | 0 | Streamed, not stored |
| Safety classifier verdicts | Aggregate counters only | 90 days | Deleted |
| Request metadata and cost | Billing ledger, UK | 7 years | Statutory retention |
| Your weights on a tenancy | Your own NVMe volume | The tenancy | Discarded and zeroed |
| Any of the above, for training | Not used | no | We do not train on it |
Region is a promise, not a default. A request sent with region "hnd" renders at HND-1 and its prompt text stays at HND-1; it is not replicated to HKG-1 or to London. Zeroing on release is blkdiscard plus a verification pass, logged, before the volume goes to anyone else. Subprocessors: none for inference — the cards are ours, in our racks, under AS207214. The data processing addendum and the compliance pack are available on request; ask support and they arrive the same working day.
The controlling text is at legal.html#privacy.
問 Questions
Asked before anyone signs.
If your question is not here, [email protected] reaches an engineer, and it is read by someone who runs the platform.
Do you train on my prompts or my images?
No. Prompts, uploads and outputs are excluded from every training set by construction, not by a preference toggle. The corpus for Lotus Diffusion-1 was licensed, public-domain or commissioned before the endpoint opened, and the next checkpoint will be built the same way. If you need that stated in a contract, ask for the data processing addendum.
Who owns what comes out?
You do. We claim no copyright in the renders and put no restriction on commercial use, resale or modification. We do not offer an IP indemnity, and we will not pretend the legal position on model outputs is settled anywhere. If a client of yours demands indemnity, take a tenancy and run weights whose provenance you can warrant yourself.
Will the same seed give me the same image next year?
Yes, while the checkpoint keeps its name. ld1-2026-06-30 is frozen; any retrain ships under a new name and both stay callable, with twelve months' notice minimum before anything is withdrawn. Sampler, steps, cfg, size and region have to match as well — a seed on its own does not pin an image.
Why are the GPUs only in Tokyo and Hong Kong?
Because that is where we have the power and cooling for 700-watt cards. London, New York, Los Angeles and Seoul carry the full compute and domain catalogue and no GPU rows, and we would rather say so than quietly route your renders across the ring without telling you. From London the endpoint adds 224 ms of round-trip.
What gets blocked, and am I charged for it?
Sexual content involving minors, non-consensual sexual imagery, and named real people. The input classifier refuses about 0.4% of legitimate prompts and the output classifier catches what slips past it. Neither a blocked prompt nor a blocked output is billed. If a refusal looks wrong, send us the request id and a person will read the actual prompt.
Can I run something other than Lotus on a rented card?
Yes. A tenancy is root on the host with the card passed through: run any weights you have the right to run, diffusion or otherwise. We do not inspect the volume and we do not support what is on it. The 99.9% uptime SLA covers the machine and the network, not your code.
Start with the thousand you already have.
Every account includes 1,000 renders a month. That is enough to find out whether this model suits your work before anything is metered.