documentation
part 1 of percolation
part 2 of percolation
compiler flag needed not to run under new optimizer
better way
bug fix