Rewrite to add chainable methods.