N,M=map(int,input().split())
A=[float('inf')]*N

f=True
T=[]
for i in range(M):
	a,b,c=map(int,input().split())
	a-=1
	b-=1
	T.append([b,a,c])
T.sort()

A[0]=0
for t in T:
	k = min(A[t[1]:t[0]])
	if k==float('inf'):
		f=False
		break
	if A[t[0]]==float('inf'):
		A[t[0]] = k + t[2]
	else:
		A[t[0]] = min(A[t[0]], k + t[2])

if f and A[-1]!=float('inf'):
	print(A[-1])
else:
	print(-1)
