fixed forwarding logic