#include<iostream>
#include<queue>
#include<algorithm>
#include<map>
#include<string.h>
#include<math.h>
#include<stdio.h>
#include <iomanip>
using namespace std;
struct student
{
int id;
int pay_value;
};
queue<student>queCard;
int main()
{
student s;
int i,j;
int num_of_students,limit;
while (scanf("%d%d",&num_of_students,&limit)==2 && num_of_students && limit)
{
while(!queCard.empty())
{
queCard.pop();
}
/
for(i=1;i<=num_of_students;i++)
{
s.id = i;
s.pay_value = 0;
queCard.push(s);
}
/
while(!queCard.empty())
{
for(i=1;i<=limit;i++)
{
int out_store = i;
while(!queCard.empty() && out_store)
{
s = queCard.front();
queCard.pop();
if(s.pay_value+out_store<40)
{
s.pay_value+=out_store;
out_store = 0;
queCard.push(s);
}
else
{
out_store-=40-s.pay_value;
cout<<setw(3)<<s.id;
}
}
}
}
cout<<endl;
}
}