debug, improve chaining, docs