#include <cstdio>
#include <algorithm>
#include <cstring>
using namespace std;
int n;
int va[1005],we[1005];
int dp[1005]={};
#define INF 1000000000
int main(){
	int cou=1;
	while(1){
		memset(dp,0,sizeof(dp));
		scanf("%d",&n);
		if(!n) break;
		int m;
		scanf("%d",&m);
		for(int i=0;i<m;i++){
			scanf("%d,%d",&va[i],&we[i]);
		}
		for(int i=0;i<m;i++){
			for(int j=n;j>=we[i];j--){
				dp[j]=max(dp[j],dp[j-we[i]]+va[i]);
			}
		}
		int rp=0,e;
		for(int i=n;i>=0;i--){
			if(rp<=dp[i]){
				e=i;
				rp=dp[i];
			}
		}
		printf("Case %d:\n",cou);
		cou++;
		printf("%d\n%d\n",rp,e);
	}
}