#include <bits/stdc++.h>
#pragma warning(disable : 4996)
FILE* _fin = stdin;
FILE* _fout = stdout;
void reversei(int* data, int n) {
  int k = n >> 1;
  for (int i = 0; i < k; ++i) {
    int tmp = data[i];
    data[i] = data[n - i - 1];
    data[n - i - 1] = tmp;
  }
}
int bsearch(int val, int* data, int n) {
  if (data[0] > val) return -1;
  if (data[n - 1] < val) return n;
  int l = 0;
  int r = n - 1;
  for (; l < r;) {
    int mid = (l + r + 1) >> 1;
    if (data[mid] <= val)
      l = mid;
    else
      r = mid - 1;
  }
  if (data[r] != val) ++r;
  return r;
}
struct Veci {
  int* data;
  int size;
  int n;
};
void init(Veci* t, int size) {
  t->data = (int*)malloc(sizeof(int) * size);
  t->size = size;
  t->n = 0;
}
void resize(Veci* t) {
  int ns = t->size * 1.2f;
  t->data = (int*)realloc(t->data, sizeof(int) * ns);
  t->size = ns;
}
void add(Veci* t, int val) {
  if (t->n >= t->size) resize(t);
  int k = t->n;
  t->data[k] = val;
  t->n = k + 1;
}
void free(Veci* t) {
  free(t->data);
  *t = {0};
}
struct Vecll {
  long long* data;
  int size;
  int n;
};
void init(Vecll* t, int size) {
  t->data = (long long*)malloc(sizeof(long long) * size);
  t->size = size;
  t->n = 0;
}
void resize(Vecll* t) {
  int ns = t->size * 1.2f;
  t->data = (long long*)realloc(t->data, sizeof(long long) * ns);
  t->size = ns;
}
void add(Vecll* t, long long val) {
  if (t->n >= t->size) resize(t);
  int k = t->n;
  t->data[k] = val;
  t->n = k + 1;
}
void free(Vecll* t) {
  free(t->data);
  *t = {0};
}
struct Vecs {
  char** data;
  int size;
  int n;
};
void init(Vecs* t, int size) {
  t->data = (char**)malloc(sizeof(char*) * size);
  t->size = size;
  t->n = 0;
}
void resize(Vecs* t) {
  int ns = t->size * 1.2f;
  t->data = (char**)realloc(t->data, sizeof(char*) * ns);
  t->size = ns;
}
void add(Vecs* t, char* val) {
  if (t->n >= t->size) resize(t);
  int k = t->n;
  t->data[k] = val;
  t->n = k + 1;
}
void free(Vecs* t) {
  free(t->data);
  *t = {0};
}
int ispali(int* a, int* b, int n) {
  for (int i = 0; i < n; ++i) {
    if (a[i] != b[n - i - 1]) {
      return 0;
    }
  }
  return 1;
}
int ispalc(char* a, char* b, int n) {
  for (int i = 0; i < n; ++i) {
    if (a[i] != b[n - i - 1]) {
      return 0;
    }
  }
  return 1;
}
struct Pairi {
  int x, y;
};
int cmp_Pairi(const void* _a, const void* _b) {
  Pairi* a = (Pairi*)_a;
  Pairi* b = (Pairi*)_b;
  if (a->x == b->x) {
    if (a->y < b->y)
      return -1;
    else
      return 1;
  }
  if (a->x < b->x)
    return -1;
  else
    return 1;
}
void sort_Pairi(Pairi* d, int n) { qsort(d, n, sizeof(Pairi), cmp_Pairi); }
long long THIS_WAS_AN_OVERKILL_maxsum(int* a, int n) {
  int left = 0;
  int right = 0;
  long long bestsum = 0;
  int bestleft = 0;
  int bestright = right;
  long long currentsum = a[0];
  for (;;) {
    if (left >= n) break;
    if (a[left] <= 0) {
      currentsum = 0;
      left++;
      right = left;
      continue;
    }
    if (left == right) currentsum = a[left];
    if (currentsum > bestsum) {
      bestsum = currentsum;
      bestleft = left;
      bestright = right;
    } else if (currentsum < 0) {
      left = right;
    }
    right++;
    if (right >= n) break;
    currentsum += a[right];
  }
  return bestsum;
}
long long maxsum(int* a, int n) {
  long long bestsum = a[0];
  long long currentsum = 0;
  for (int i = 0; i < n; ++i) {
    currentsum += a[i];
    if (currentsum > bestsum) bestsum = currentsum;
    if (currentsum < 0) currentsum = 0;
  }
  return bestsum;
}
int main() {
  {
    _fin = fopen("data1287A.txt", "r");
    if (_fin == NULL) _fin = stdin;
  };
  int ntests = 0;
  fscanf(_fin, "%d", &ntests);
  for (int t = 0; t < ntests; ++t) {
    int n = 0;
    fscanf(_fin, "%d", &n);
    static char s[101];
    for (;;) {
      fgets(s, 101, _fin);
      if (s[0] != '\n') break;
    };
    int firstA = -1;
    for (int i = 0; i < n; ++i) {
      if (s[i] == 'A') {
        firstA = i;
        break;
      }
    }
    if (firstA == -1) {
      fprintf(_fout, "%d\n", 0);
      continue;
    }
    int maxcount = 0;
    int count = 0;
    for (int i = firstA; i < n; ++i) {
      if (s[i] == 'A')
        count = 0;
      else
        count++;
      if (count > maxcount) maxcount = count;
    }
    fprintf(_fout, "%d\n", maxcount);
  }
  return 0;
}
