import heapq from fractions import Fraction import sys input = sys.stdin.readline N,M = list(map(int,input().split())) edge = [[] for _ in range(N)] for _ in range(M): u,v,a,b = list(map(int,input().split())) u -= 1;v -= 1 edge[u].append((v,Fraction(a,b))) edge[v].append((u,Fraction(a,b))) INF = Fraction(10**7) visited = [INF] * N q = [(0,0)] while(q): v,now = heapq.heappop(q) if(visited[now] <= v):continue visited[now] = v for u,d in edge[now]: if(visited[u] <= v + d):continue heapq.heappush(q, (v + d, u)) for i in range(1,N): print(*visited[i].as_integer_ratio())