hipos = {}

lrd.each{|(l,r,d)|
  if  hipos[l] && hipos[r]
    #どちらもあるので正しいかみる
    if hipos[l]+d != hipos[r]
      puts 'No'
      exit
    end
  elsif hipos[l]
    #rがないのでいれる
    hipos[r] = hipos[l]+d
  elsif hipos[r]
    #lがないのでいれる
    hipos[l] = hipos[r]-d
  else
    #どちらもないのでいれる
    hipos[l] = 0
    hipos[r] = d
  end
}

max = 0
min = 10**9
n.times{|i|
  w = hipos[i+1]
  next if !w
  max = w if max < w
  min = w if min > w
}

if max-min <= (10**9)
  puts 'Yes'
else
  puts 'No'
end