refine the forwarder