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

int main(){
	int dp[10010];
	int W,N;
	int v[1010],w[1010];
	int c=0;
	while(scanf("%d",&W),W!=0){
		c++;
		scanf("%d",&N);;
		for(int i=0;i<N;i++){
			scanf(" %d,%d",&v[i],&w[i]);
		}
		for(int i=0;i<W+5;i++){
			dp[i]=0;
		}
		for(int i=0;i<N;i++){
			for(int j=W;j;j--){
				if(j<w[i]){
					dp[j]=dp[j];
				}else{
					dp[j]=std::max(dp[j],dp[j-w[i]]+v[i]);
				}
			}
		}
		int ans_w=W;
		for(int i=W-1;i;i--){
			if(dp[i]==dp[i+1]){
				ans_w=i;
			}else{
				break;
			}
		}
		cout<<"Case "<<c<<":"<<endl<<dp[W]<<endl<<ans_w<<endl;
		
	}
	
	
}