using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace zadOdbojka
{
	class Program
	{
		static public void Sve()
		{
			string s = Console.ReadLine();
			int sp = s.IndexOf(" ");
			int UkupniPoeni = int.Parse(s.Substring(0, sp));
			int PoeniPoSetu = int.Parse(s.Substring(sp + 1));
			int Set;
			int I = 0;
			int tim1;
			int tim2;
			Set = UkupniPoeni / PoeniPoSetu;
			int UkupniPoeni1 = UkupniPoeni;

			if (Set < 3)
			{
				Console.WriteLine("-1");
			}
			if (Set == 3)
			{
				for (int i = 0; i < Set; i++)
				{
					 tim2 = 0;
					 tim1 = PoeniPoSetu;
					Console.WriteLine(tim1 + " " + tim2);
				}
			}
			
			
			if (Set == 4 || Set == 5)
			{
				int t1 = PoeniPoSetu;
				int P = Convert.ToInt32(t1 * Set);
				UkupniPoeni = UkupniPoeni - P;
				int t2;
				for (int i = 0; i < Set; i++)
				{
					if (PoeniPoSetu -2 <= UkupniPoeni)

					{ t2 = (PoeniPoSetu - 2); }
					else
					{ t2 = UkupniPoeni; }
					Console.WriteLine(t1);
					Console.WriteLine(t2);
					UkupniPoeni = UkupniPoeni - t2;
				}
			}
			
			
			
			if (Set > 5)
			{
				Set = 5;
				int k2;
				int k1 = PoeniPoSetu;
				int z = Convert.ToInt32(k1 * Set);
				UkupniPoeni = UkupniPoeni - z;			
				long[,] skor = new long[5, 2];
				for (int i = 0; i < Set; i++)
				{
					if (UkupniPoeni >= PoeniPoSetu - 2)

					{ k2 = (PoeniPoSetu - 2); }
					else
					{ k2 = UkupniPoeni; }
					skor[i, 0] = k1;
					skor[i, 1] = k2;
					UkupniPoeni = UkupniPoeni - k2;
					I += k1 + k2;
				}
				int D1 = UkupniPoeni1 - I;
				skor[0, 0] = skor[0,0] + D1;
				for (int i = 0; i < 5; i++)
				{
					Console.WriteLine(skor[i, 0] + " " + skor[i, 1]);
				}

			}

		}
	
		static void Main(string[] args)
		{
			Sve();
		}
	}
}