#include <bits/stdc++.h>

using namespace std;

int provera(long long n, long long a){
    if(n >= a*5)
        return 5;
    else if(n >= a*4)
        return 4;
    else if(n >= a*3)
        return 3;
}

void ispisi(long long a[], long long b[], int n){
    for(int i = 0;i < n;i++)
        cout << a[i] << " " << b[i] << '\n';
}

void odbojka(int n, int a){
    long long p, b[5], c[5], razlika, ostatak, kolicnik, sredina, ostatak1;
    p = provera(n, a);
    if(p == 3){
        b[0] = b[1] = b[2] = a;
        razlika = n - a*3;
        kolicnik = razlika/3;
        ostatak = razlika%3;
        c[0] = kolicnik + ostatak;
        c[1] = c[2] = kolicnik;
        ispisi(b, c, 3);
    }
    else if(p == 4){
        b[0] = b[1] = b[3] = a;
        c[2] = a;
        razlika = n - a*4;
        kolicnik = razlika/4;
        ostatak = razlika%4;
        c[0] = kolicnik + ostatak;
        c[1] = c[3] = b[2] = kolicnik;
        ispisi(b, c, 4);
    }
    else if(p == 5){
        b[0] = b[1] = b[4] = a;
        c[2] = c[3] = a;
        razlika = n - a*5;
        kolicnik = razlika/5;
        ostatak = razlika%5;
        c[0] = kolicnik + ostatak;
        c[1] = b[2] = b[3] = c[4] = kolicnik;
        for(int i = 0;i < 5;i++){
            if(b[i] == c[i]){
                if(i != 2 && i != 3){
                    b[i] += 1;
                    c[i] -= 1;
                }
                else{
                    c[i] += 1;
                    b[i] -= 1;
                }
            }
            else if(abs(b[i] - c[i]) > 2){
                sredina = (b[i] + c[i]) / 2;
                ostatak1 = (b[i] + c[i]) % 2;
                if(i != 2 && i != 3){
                    if(b[i] < c[i]){
                    b[i] = sredina + ostatak1;
                    c[i] = sredina;
                    i--;
                    }
                }
                else{
                    if(b[i] > c[i]){
                    c[i] = sredina + ostatak1;
                    b[i] = sredina;
                    i--;
                    }
                }
            }
            else if(abs(b[i] - c[i]) < 2){
                if(i == 0){
                    b[i] += 1;
                    c[i+1] -= 1;
                    i--;
                }
                else if(i == 1){
                    b[i] += 1;
                    b[i+1] -= 1;
                    i--;
                }
                else if(i == 2){
                    c[i] += 1;
                    b[i+1] -= 1;
                    i--;
                }
                else if(i == 3){
                    c[i] += 1;
                    c[i+1] -= 1;
                    i--;
                }
                else if(i == 4){
                    b[i] += 1;
                    b[i-1] -= 1;
                    i--;
                }
            }
        }
        ispisi(b, c, 5);
    }
}

int main(){
    ios::sync_with_stdio(false);
    long long n, a;
    cin >> n >> a;
    if(n < a*3)
        cout << "-1";
    else
        odbojka(n, a);
    return 0;
}