def main():    
    n,m = map(int,input().split())
    lrc = [tuple(map(int,input().split())) for _ in range(m)]
    lcr = sorted([(i[0]-1,i[2],i[1]-1) for i in lrc],reverse=True)
    INF = float('inf')
    dist = [INF]*n
    check = [False]*n
    check[0] = True
    dist[0] = 0
    enable = True
    while lcr:
        route = lcr.pop(-1)
        mn = route[0]
        mx = route[-1]
        if not check[mn]:
            enable = False
            break
        else:
            d = route[1]+dist[mn]
            for i in range(mx,mn,-1):
                if dist[i] >= d:
                    dist[i] = d
                    check[i] = True
                else:
                    break
    if dist[-1] == INF:
        print(-1)
    elif enable:
        print(dist[-1])
    else:
        print(-1)
    
if __name__ == '__main__':
    main()