#include<iostream>
#include<cstdio>;
#include<utility>
using namespace std;



int W,N;
int w[1010],v[1010];

int dp[1010];
void init(){
	for(int i=0;i<1010;i++){
		w[i]=0;
		v[i]=0;
		dp[i]=0;
	}
}


pair<int,int> solve(){
	for(int i=0;i<N;i++){
		for(int j=1010;j--;){
			if(j-w[i]>=0){
				dp[j]=max(dp[j],dp[j-w[i]]+v[i]);
			}
		}
	}
	int res=W;
	for(int i=W;i--;){
		if(dp[i]!=dp[i+1]){
			break;
		}else{
			res=i;
		}
	}
	return make_pair(dp[W],res);
}

int main(){
	int c=0;
	while(cin>>W,W!=0){
		c++;
		init();
		cin>>N;
		for(int i=0;i<N;i++){
			scanf(" %d,%d",&v[i],&w[i]);
		}
		
		
		cout<<"Case "<<c<<":"<<endl;
		pair<int,int> ans=solve();
		cout<<ans.first<<endl;
		cout<<ans.second<<endl;
	}
}