more clean Fluent object interface