Also: shouldn't we just assemble a route? What is the return value?