#!/usr/bin/python """ 3669.cc: No.3669 隸ッ蟾ョ扈昜ク榊・隶ク - yukicoder """ import sys from fractions import Fraction import heapq # constant INF = 10000000 # global variables # subroutines # main def main(): n, m = map(int, input().split()) nbrs = [[] for i in range(0, n)]; for i in range(0, m): u, v, a, b = map(int, input().split()) u -= 1 v -= 1 w = Fraction(a, b) nbrs[u].append([v, w]) nbrs[v].append([u, w]) ds = [INF for i in range(0, n)] ds[0] = 0 q = [[0, 0]] heapq.heapify(q) while q: ud, u = heapq.heappop(q) if ds[u] != ud: continue for v, w in nbrs[u]: vd = ud + w if ds[v] > vd: ds[v] = vd heapq.heappush(q, [vd, v]) for i in range(1, n): print(f"{ds[i].numerator} {ds[i].denominator}") main()