new future pridection algo