use 2 algos, a satuated one and a gradiant for not saturated