\begin{problem}{Разбиение на камеры}{partition.in}{partition.out}{2 секунды}{256 мегабайт}

%Автор задачи: Дмитрий Филиппов
%Автор условия: Дмитрий Филиппов

Вчера вечером Человек-паук неплохо поработал~--- поймал аж $n$ преступников! 
Но тюрьмы уже переполнены, и разместить их решили на авианосце Щита. 
Ник Фьюри лично решился распределить преступников по камерам.

Всего на авианосце есть $k$ камер для заключенных. 
Распределять преступников по камерам случайным образом Ник не хочет, поэтому он решил распределить всех преступников по камерам так, чтобы
<<исключающее или>> числа людей во всех камерах было равно нулю. 
Более формально, Ник хочет в первую камеру отправить $a_1$ преступников, во вторую $a_2$, \ldots, в $k$-ю камеру он хочет отправить $a_k$ 
преступников так, чтобы выполнялись следующие условия:

\begin{itemize}
\item $a_1+a_2+ \ldots +a_k=n$
\item $a_1 \oplus a_2 \oplus \ldots \oplus a_k=0$, где $\oplus$~--- иcключающее или 
\end{itemize}

Также Ник понимает, что оставлять камеры пустыми не имеет смысла, поэтому все $a_i$ должны быть больше нуля.

Преступники уже готовят план побега, поэтому нельзя терять ни минуты. 
Помогите командиру авианосца как можно быстрее решить эту задачу!

\InputFile
В первой строке входного файла даны два числа $n, k$ ($1 \le n, k \le 100\,000$)~--- количество преступников на корабле Щита и 
количество камер заключения соответственно.

\OutputFile
Если существует требуемое разбиение преступников по камерам,
в единственной строке выходного файла выведите $k$ положительных чисел, $i$-е из которых означает 
количество преступников, которое нужно отправить в $i$-ю камеру заключения.

Если нужного разбиения не существует, в единственной строке выходного файла выведите \texttt{-1}. 
Если существует несколько разбиений, выведите любое.

\Example
\begin{example}%
\exmp{
8 2
}{
4 4
}%
\exmp{
5 3
}{
-1
}%
\end{example}
\newline
\newline
Внимание! Второй тест из условия не подходит под ограничения первой и второй групп тестов. Но Ваше решение все равно должно его проходить, чтобы получить баллы за эти группы.

\Note 
Исключающее или~--- логическая операция, которая имеет следующую таблицу истинности:

\begin{itemize}
\item $0 \oplus 0=0$
\item $0 \oplus 1=1$
\item $1 \oplus 0=1$
\item $1 \oplus 1=0$
\end{itemize}

<<Исключающее или>> чисел, состоящих из нескольких бит, считается побитово. 
Например, $2 \oplus 3=1$, $2 \oplus 5=7$, $5 \oplus 5=0$.

Более подробно про <<исключающее или>> можно почитать тут: https://ru.wikipedia.org/wiki/Сложение\_по\_модулю\_2

\Testing
Первая группа тестов состоит из тестов, для которых выполняется ограничение $k=2$.
Баллы за эту группу начисляются только при прохождении всех тестов группы. Стоимость группы составляет $20$ баллов.

Вторая группа тестов состоит из тестов, для которых выполняется ограничение $k$~--- четное. 
Баллы за эту группу начисляются только при прохождении всех тестов группы. Стоимость группы составляет $30$ баллов.

Третья группа тестов состоит из тестов, для которых выполняются ограничения $n, k \le 100\,000$. 
Баллы за эту группу начисляются только при прохождении всех тестов группы. Стоимость группы составляет $50$ баллов.

Обратите внимание на возможность узнать результат проверки вашего решения на всех группах тестов, 
нажав на ссылку <<\texttt{Request feedback}>> на вкладке <<\texttt{Runs}>>.

\end{problem}
