#5567. CSES1707 图的圈长

0

CSES1707 图的圈长

Graph Girth

Given an undirected graph, your task is to determine its girth, i.e., the length of its shortest cycle.

Input

The first input line has two integers n and m: the number of nodes and edges. The nodes are numbered 1,2,\dots,n. After this, there are m lines describing the edges. Each line has two integers a and b: there is an edge between nodes a and b. You may assume that there is at most one edge between each two nodes.

Output

Print one integer: the girth of the graph. If there are no cycles, print -1.

Constraints

1n25001 \le n \le 2500

1m50001 \le m \le 5000

Example

Input

5 6
1 2
1 3
2 4
2 5
3 4
4 5

Output

3