supported many algos