def main(): n, x, y, a, b = list(map(int, input().split())) if 0 < a and 0 < b: z = x + y if 0 <= z: m = min(z//b+1, n) n -= m y -= m * b else: m = min((abs(z)-1)//a, n) n -= m x += m * a if n == 0: return x, y l = 0 r = n def f(s): nx = x + s * a ny = y - (n-s) * b if -b <= (nx+ny) < a: return 0 elif a <= (nx+ny): return 1 else: return -1 if not f(0): return x, y - b*n elif not f(n): return x + a*n, y while r - l > 1: m = (l + r) >> 1 rep = f(m) if not rep: return x+a*m, y-b*(n-m) elif 0 < rep: r = m else: l = m for m in [l, r]: if not f(m): return x+a*m, y-b*(n-m) else: if 0 <= x+y: if b <= 0: return x, y-b*n else: m = min(n, (x+y+b)//b) n -= m y -= b*m return x+a*n, y else: if a <= 0: return x+a*n, y else: m = min(n, (abs(x+y)+a-1)//a) n -= m x += a*m return x, y-b*n for _ in range(int(input())): print(*main())