read_line.to_i.times do
  puts solve
end

def solve
  a, b, k = read_line.split.map(&.to_i64)
  lcm = a.lcm(b)
  c = lcm - lcm // a - lcm // b + 1
  m = k // c
  k %= c
  return m * lcm - 1 if k == 0
  lo = 0i64
  hi = lcm
  while hi - lo > 1
    mid = (lo + hi) // 2
    cc = mid - mid // a - mid // b
    if cc > k
      hi = mid
    else
      lo = mid
    end
  end
  while lo % a == 0 || lo % b == 0
    lo -= 1
  end
  return m * lcm + lo
end