编程题
### 问题描述
给定 $n$ 个点的有向图,点的编号分别为 $1, 2, \dots, n$。
对于所有 $i, j(1 \leq i, j \leq n)$,若满足以下条件:
1. $i < j$。
2. $i$ 和 $j$ 有且仅有一个是质数。
存在一条由第 $i$ 个点指向第 $j$ 个点权值为 $i$ 与 $j$ 的最小公倍数的边。
给定 $q$ 个询问,每个询问两个正整数 $a, b$ 表示查询 $a$ 与 $b$ 之间的最短路,若不存在则输出 `-1`。
### 输入格式
第一行包含两个整数 $n, q$,表示点的个数以及询问的次数。
接下来的 $q$ 行,每行包含两个正整数 $a,b$,表示查询 $a$ 与 $b$ 之间的最短路。
### 输出格式
输出共 $q$ 行,每行一个整数,表示查询的结果,若不存在则输出 `-1`。
### 样例输入
```txt
5 5
1 2
2 3
3 4
4 5
5 1
```
### 输出样例
```txt
2
-1
12
20
-1
```
### 数据范围
对于 $100$% 的测试样例,$1 \leq n \leq 100$,$1 \leq q \leq 1000$。