non-pu algos added