5pub fn discrete_logarithm_mod(reader: impl Read, writer: impl Write) {
6prepare_io!(reader, writer);
7sc!(t, query: [(u64, u64, u64); iter t]);
8for (x, y, m) in query {
9let ans = discrete_logarithm(x, y, m).map(|k| k as i64).unwrap_or(-1);
10pp!(ans);
11 }
12}