superalgorithm
