the Percolation data type