little change to algorithm
normal side