Contracts for non-Void-safe users (take 4)