waiting rewritten to use fluent API