update new algo