added SoE algo