Implementation improved