Simplify client code and overall structure.