ServiceUnits
A non-negative quantity of service — the abstract unit the ledger accounts in (CPU-milliseconds, tasks, tokens; whatever the consumer meters). Always >= 0; a negative amount of service is meaningless and is rejected at construction rather than allowed to poison the tally.
Addition is overflow-checked (plus throws on Long overflow), so a running total can never silently wrap past Long.MAX_VALUE.