#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
//英语 看博友分析 抄博友程序
int n;
struct nod{
double dis;
int g;
int y;
int r;
}da[1000];
bool check(double x)
{
x=x/3600;
for(int i=0;i<n;i++)
{
double t=da[i].dis/x;
int sum=da[i].r+da[i].y+da[i].g;
t=t-((int)t/sum)*sum;
if(t>(da[i].g+da[i].y))//抄博友程序
{
return false;
}
}
return true;
}
int hs[100];
int main()
{
int tag=0;
while(1)
{
tag++;
cin>>n;
if(n==-1)
{
break;
}
memset(hs,0,sizeof(hs));
for(int i=0;i<n;i++)
{
cin>>da[i].dis>>da[i].g>>da[i].y>>da[i].r;//抄博友程序
}
int flag=0;
for(int i=30;i<=60;i++)
{
if(check(i))
{
hs[i]=1;
flag=1;
}
}
cout<<"Case "<<tag<<":";
if(flag==0)
{
cout<<" No acceptable speeds."<<endl;
}else
{
int ff=0;
for(int i=30;i<=60;i++)
{
if(hs[i]==1)
{
if(ff==0)
{
cout<<" ";
}else
{
cout<<", ";
}
ff=1;
if(hs[i]==1 && hs[i+1]==1)
{
cout<<i<<"-";
while(hs[i]==hs[i+1])
{
i++;
}
cout<<i;
}else
{
cout<<i;
}
}
}
cout<<endl;
}
}
return 0;
}