Problem: Levko loves permutations very much. A permutation of length n is a sequence of distinct positive integers, each is at most n.

Let’s assume that value gcd(a, b) shows the greatest common divisor of numbers a and b. Levko assumes that element pi of permutation p1, p2, ... , pn is good if gcd(i, pi) > 1. Levko considers a permutation beautiful, if it has exactly k good elements. Unfortunately, he doesn’t know any beautiful permutation. Your task is to help him to find at least one of them.

Input

The single line contains two integers n and k (1 ≤ n ≤ 105, 0 ≤ k ≤ n).

Output

In a single line print either any beautiful permutation or -1, if such permutation doesn’t exist.

If there are multiple suitable permutations, you are allowed to print any of them.

Examples

Input

4 2


Output

2 4 3 1

Input

1 1


Output

-1

Note

In the first sample elements 4 and 3 are good because gcd(2, 4) = 2 > 1 and gcd(3, 3) = 3 > 1. Elements 2 and 1 are not good because gcd(1, 2) = 1 and gcd(4, 1) = 1. As there are exactly 2 good elements, the permutation is beautiful.

The second sample has no beautiful permutations.

Solution (in JAVA):

Solution:
import java.util.*;
import java.io.*;

public class cp{
    public static void main(String[] args) {
		
		Scanner sc = new Scanner();
        
        int n = sc.nextInt();
        int k = sc.nextInt();
        
        if(k>=n)
        {
            out.println("-1");
        }else{

            int ar[] = new int[n];

            //1 2 3 4 5 | 2

            for(int i=0;i<n-k-1;i++)
            {
                ar[i]=i+2;
            }
            ar[n-k-1]=1;

            for(int i=n-k;i<n;i++)
            ar[i]=i+1;

            for(int i:ar)
            out.print(i+" ");


        }
       	out.close();
        
    }
//1 2 3 4 5 
//2 4 6 8 10 
    static  PrintWriter out=new PrintWriter(System.out);
    static class Scanner {
        BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st=new StringTokenizer("");
        String nextLine() {
            while (!st.hasMoreTokens())
                try { 
                                        st=new StringTokenizer(br.readLine());                             
                                } catch (IOException e) {}
            return st.nextToken();
        }     
        int nextInt() {
            return Integer.parseInt(nextLine());
        }
        Double nextDouble() {
            return Double.parseDouble(nextLine());
        }
        long nextLong() {
            return Long.parseLong(nextLine());
        }
    }
}


//1 2 3 4 5
//2 3 4 5 1