#include <bits/stdc++.h>
using namespace std;
const int N=1e5+10;
int n;
int mx[N];
struct node {
int l,r,w;
} a[N];
int cmp(node x,node y)
{
return x.r<y.r;
}
int main() {
freopen("sum.in","r",stdin),freopen("sum.out","w",stdout);
cin>>n;
for (int i=1;i<=n;i++) cin>>a[i].l>>a[i].r>>a[i].w;
sort(a+1,a+n+1,cmp);
for (int i=1;i<=n;i++)
{
int l=0,r=i-1;
while (l<r)
{
int mid=(l+r+1)>>1;
if (a[mid].r<a[i].l) l=mid;
else r=mid-1;
}
mx[i]=max(mx[i-1],mx[l]+a[i].w);
}
cout<<mx[n];
}