N, X, Y = map(int, input().split()) li = [] for i in range(N): a, b, c = map(int, input().split()) li.append([a, b, c]) dp = [[[-1 for i in range(Y+1)] for i in range(X + 1)] for i in range(N + 1)] dp[0][0][0] = 0 for i in range(N): a = li[i][0] b = li[i][1] c = li[i][2] for j in range(X + 1): for k in range(Y + 1): if dp[i][j][k] != -1: dp[i+1][j][k] = max(dp[i+1][j][k], dp[i][j][k]) if j+a<= X and k+b <= Y: dp[i+1][j+a][k+b] = max(dp[i+1][j+a][k+b], dp[i][j][k]+c) ans = 0 for i in range(X + 1): for j in range(Y+1): ans = max(ans, dp[-1][i][j]) print(ans)