N,X,Y = map(int,input().split()) D = [0]+[list(map(int,input().split())) for _ in range(N)] dp = [[[0 for _ in range(Y+1)] for _ in range(X+1)] for _ in range(N+1)] for j in range(D[1][0],X+1): for k in range(D[1][1],Y+1): dp[1][j][k] = D[1][2] for i in range(2,N+1): for j in range(X+1): for k in range(Y+1): dp[i][j][k] = dp[i-1][j][k] if j>=D[i][0] and k>=D[i][1]: dp[i][j][k] = max(dp[i][j][k],dp[i-1][j-D[i][0]][k-D[i][1]]+D[i][2]) print(dp[N][X][Y])