incrementally improve design