#include <bits/stdc++.h>
int cmb(int mem[][100], double x[], double y[], int o[], int pos, int min,
        int n, int m) {
  int i, j;
  if (pos == m) {
    for (i = 0; i < m - 1; i++) {
      for (j = i + 1; j < m; j++) {
        if (mem[o[i]][o[j]] == 0) break;
      }
      if (j != m) break;
    }
    if (i == m - 1)
      return 1;
    else
      return 0;
  } else {
    for (i = min; i < n; i++) {
      o[pos] = i;
      if (cmb(mem, x, y, o, pos + 1, i + 1, n, m)) return 1;
    }
    return 0;
  }
}
int main() {
  int h, i, j;
  int mem[100][100], o[100], n;
  double x[100], y[100];
  for (;;) {
    scanf("%d", &n);
    if (n == 0) break;
    for (i = 0; i < n; i++) scanf("%lf,%lf", &x[i], &y[i]);
    h = 0;
    for (i = 0; i < n - 1; i++) {
      for (j = i + 1; j < n; j++) {
        mem[i][j] = ((x[i] - x[j]) * (x[i] - x[j]) +
                     (y[i] - y[j]) * (y[i] - y[j])) <= 4;
        if (mem[i][j] == 0) h = 1;
      }
    }
    i = n;
    if (h) {
      for (i--; i > 1; i--)
        if (cmb(mem, x, y, o, 0, 0, n, i)) break;
    }
    printf("%d\n", i);
  }
  return 0;
}
