import java.util.concurrent.ThreadLocalRandom;
import java.util.regex.Pattern;

public class JI9053985 {

	public static void main(String[] args) {
		Pattern pattern = Pattern.compile("^[1-9][0-9]*(?:, [1-9][0-9]*)*$"); 

		for (int n = 100; n > 0; n *= 2) { 
			test(pattern, n); 
		} 
	} 

	private static void test(Pattern pattern, int n) { 
		String line = generate(n); 

		System.out.print("Testing line of " + n + " numbers..."); 
		boolean found = pattern.matcher(line).find(); 
		System.out.println(found ? "matched." : "not matched."); 
	} 

	private static String generate(int n) { 
		StringBuilder buf = new StringBuilder(); 
		buf.append(ThreadLocalRandom.current().nextInt(1, 1000)); 
		for (n--; n > 0; n--) { 
			buf.append(", "); 
			buf.append(ThreadLocalRandom.current().nextInt(1, 1000)); 
		} 
		return buf.toString(); 
	}

}
