change block_restore and add reshuffle
fix parser conflict