ProductWalk function