better chaining, refs #7