better buildResponse