swap Block