watch logic