def extgcd(a, b): if b == 0: return (a, 1, 0) (g, y, x) = extgcd(b, a % b) return (g, x, y - (a // b) * x) def easy(M, H, V, HW, OM, OH, D): # 真横or縦の時 if OM != OH: return "Miss" if H >= M: if(H - M <= D * V): return "Hit" else: return "Miss" else: if(HW * 2 - H - M <= D * V): return "Hit" else: return "Miss" def solve(TY, H, W, D, MY): TY -= MY if TY < 0: TY += (TY // (2 * H)) * (2 * H) while TY < 0: TY += 2 * H A = 2 * H B = 2 * W gcd, mb, ma = extgcd(B, A) if TY % gcd != 0: return False loop = A * B // gcd ma *= TY // gcd mb *= TY // gcd step = (2 * W) * mb step %= loop while step < 0: step += loop return step <= D def check(P, W): P %= W * 2 if P <= W: return P else: return (2*W) - P def calc(W, H, D, HX, HY, MX, MY, VX, VY): if VY == 0: return easy(MX, HX, VX, W, MY, HY, D) if VX == 0: return easy(MY, HY, VY, H, MX, HX, D) mulX = VX mulY = VY # 速さ分だけ領域、時間を拡張 H *= mulX MY *= mulX HY *= mulX W *= mulY MX *= mulY HX *= mulY D *= mulY D *= mulX # X座標を合わせる move = 0 flag = False if MX <= HX: move = HX - MX flag = True else: move = W + W - HX - MX #鏡位置の点 MX += move MY += move D-= move if solve(HY, H, W, D, MY) or solve(H + H - HY, H, W, D, MY): #順と逆位置 return "Hit" else: if flag: move = 2 * (W - HX) else: move = 2 * HX MX += move MY += move D-= move if solve(HY, H, W, D, MY) or solve(H + H - HY, H, W, D, MY): return "Hit" else: return "Miss" Q = int(input()) ans = [] for i in range(Q): W,H,D,Mx,My,Hx,Hy,Vx,Vy = map(int,input().split()) if Vy < 0: My = H - My Hy = H - Hy Vy = -Vy if Vx < 0: Mx = W - Mx Hx = W - Hx Vx = -Vx print(calc(W,H,D,Mx,My,Hx,Hy,Vx,Vy))