N,P,Q = map(int, input().split()) C = [list(map(int, input().split())) for _ in range(N)] cnt = 0 for i in range(N): cnt += C[i][0] if cnt != P+Q: print("No") else: D = [0]*N E = [0]*N for i in range(N): D[i] = max(0,C[i][0]-C[i][2]) E[i] = min(C[i][0],C[i][1]) ans = [[D[i],E[i]-D[i],i] for i in range(N)] flag = "Yes" for i in range(N): if ans[i][1]<0: flag = "No" if flag=="No": pass elif sum(D)==P: flag = "Yes" elif sum(D)>P: flag = "No" else: ans = sorted(ans,key=lambda x:x[1],reverse=True) delta = P-sum(D) for i in range(N): if delta<=0: flag = "Yes" break d = ans[i][1] if d<=delta: ans[i][0] += d delta -= d else: ans[i][0] += delta delta = 0 flag = "Yes" if flag=="No": print("No") else: print("Yes") ans = sorted(ans,key=lambda x:x[2]) for i in range(N): print(ans[i][0],C[i][0]-ans[i][0])