add zalgorithm