Problem: You are given positive integers X and Y. If there exists a positive integer not greater than 10^{18} that is a multiple of X but not a multiple of Y, choose one such integer and print it. If it does not exist, print -1.

Constraints

* 1 ≤ X,Y ≤ 10^9
* X and Y are integers.

Input

Input is given from Standard Input in the following format:


X Y


Output

Print a positive integer not greater than 10^{18} that is a multiple of X but not a multiple of Y, or print -1 if it does not exist.

Examples

Input

8 6


Output

16


Input

3 3


Output

-1

Solution (in JAVA):

Solution:
import java.util.*;
/*being john malkovich*/
class Main
{
	public static void main(String[] args)
	{
		long max = (long)(Math.pow(10,18));
		// System.out.println(max);
		Scanner s = new Scanner(System.in);
		long x = s.nextLong();
		long y = s.nextLong();

		/*
		if((x*2)%y!=0)
		{
			System.out.println(x*2);
		}
		else if((x*3)%y!=0)
		{
			System.out.println(x*3);
		}
		else
		{
			System.out.println("-1");
		}
		*/

		/*
		
		// else
		{
			int flag = 0;
			for(long i =1;i*x <= max;i++)
			{
				if((i*x)%y!=0)
				{
					flag = 1;
					System.out.println(i*x);		
					break;
				}
			}
			if(flag == 0)
				System.out.println("-1");
		}
		// */
		/*

		if(x!=y && x%y!=0)
		System.out.println(x*y + x);
		else if(x!=y && (x+1)%y!=0)
			System.out.println((x+1)*(y + 1));
		else
		System.out.println("-1");

		*/
		/*

		if(x!=y)
			System.out.println(x);
		else
			System.out.println("-1");
			*/

			if((x*2)%y!=0)
		{
			System.out.println(x*2);
		}
		else if((x*3)%y!=0)
		{
			System.out.println(x*3);
		}
		else if((x*4)%y!=0)
		{
			System.out.println(x*4);
		}
		else
		{
			System.out.println("-1");
		}
		// else if((x*5)%y!=0)
		{
			// System.out.println(x*5);
		}
		// else if((x*6)%y!=0)
		{
			// System.out.println(x*6);
		}
	}

}