The swap decoder now gives three lines for every PERMIT2_TRANSFER_FROM it reads but a move into the router, after the swap's Amount line: the amount moved from the sender, the token with its address, and where it goes (the V2 pair the next swap spends, the sender, or the address itself on a line of its own). A move into the router keeps its Paid to and Token moved into the router lines, which already give its amount. Before, a move to another address or to the next V2 pair showed no amount at all. Who counts as paid, and so Min. received against Min. paid out, is unchanged. tokenMovedLine() moves to module level and takes its label as an argument. Model: opus-5-5