#include<cstdio>
#include<cstring>
#include<algorithm>

using namespace std;

int main()
{
	int sz,n;
	int w,v,dp[1001];
	for(int k=1;scanf("%d%d",&sz,&n),sz;k++){
		memset(dp,0,sizeof(int)*1001);

		for(int i=0;i<n;i++){
			scanf("%d,%d",&v,&w);
			for(int j=sz;j>=0;j--){
				if( (j==0||dp[j]>0) && j+w<=sz )
					dp[j+w]=max(dp[j+w],dp[j]+v);
			}
		}

		int vmax=0,wmin=sz;
		for(int i=0;i<=sz;i++)
			if(vmax<dp[i] || (vmax==dp[i] && wmin>i))
				vmax=dp[i],wmin=i;
		printf("Case %d:\n%d\n%d\n",k,vmax,wmin);
	}

	return 0;
}