free c: channel.
free m,n: bitstring.

set swapping = "tag1 -> tag2".

process
    (
        out(c,m);
        sync 1 [tag1];
        out(c,choice[m,n])
    )|(
        sync 1 [tag2];
        out(c,choice[n,m])
    )
