def parse_input():
    n, m = list(map(int, input().split()))
    grooves = []
    for _ in range(m):
        grooves.append(list(map(int, input().split())))
    return n, m, grooves

def main():
    n, m, grooves = parse_input()
    if grooves:
        max_y = max(grooves, key=lambda g: g[1])[1]
    else:
        max_y = 0
    y = dict()
    for groove in grooves:
        xp, yp, xq, yq = groove
        if (yp - 1) in y.keys():
            y[yp - 1].append([xp - 1, xq - 1])
        else:
            y[yp - 1] = [[xp - 1, xq - 1]]
    hunters = [i for i in range(n)]
    for i in sorted(y.keys()):
        for (s1, s2) in y[i]:
            tmp = hunters[s2]
            hunters[s2] = hunters[s1]
            hunters[s1] = tmp
    ended = ["some"] * n
    for i, hunter in enumerate(hunters):
        ended[hunter] = str(i + 1)
    print('\n'.join(ended))

if __name__ == "__main__":
    main()
