How can I make and restore a copy of a terrain?

I need to create an explosion craters on terrain during gameplay. But heightmap change is persistent.

How to revert a heightmap to its original after the end of a level?

Thanks in advance!

On Start : Store the heightmap values in a separate array.

On Destroy : Apply the start stored array values back to the heightmap.