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.
from sys import stdin, stdout
import math
from itertools import permutations, combinations
from collections import defaultdict
from bisect import bisect_left


mod = 1000000007

def L():
	return list(map(int, stdin.readline().split()))

def In():
	return map(int, stdin.readline().split())

def I():
	return int(stdin.readline())

def printIn(ob):
	return stdout.write(str(ob)+'\n')

def powerLL(n, p):
	result = 1
	while (p):
		if (p&1):
			result = result * n % mod
		p = int(p / 2)
		n = n * n % mod
	return result

#--------------------------------------
import sys
def myCode():
	n,k = In()
	k = n-k
	if k == 0:
		print(-1)
	else:
		print(k, end=' ')
		for i in range(1, k):
			print(i, end=' ')
		for i in range(k + 1, n + 1):
			print(i, end=' ')
def main():
    # for t in range(I()):
	    myCode()
if __name__ == '__main__':
    # print(math.sqrt(4))
    main()