#include <bits/stdc++.h>
using namespace std;
bool cmp(const string &a, const string &b) {
  if ((int)((a).size()) == (int)((b).size())) return a < b;
  return (int)((a).size()) < (int)((b).size());
}
int main() {
  string text, t;
  vector<string> b;
  int N;
  cin >> text >> N;
  for (int _n(N), i(0); i < _n; i++) {
    cin >> t;
    b.push_back(t);
  }
  int pos = 0, len = 0;
  int t_pos = 0, t_len = 0;
  sort((b).begin(), (b).end(), cmp);
  for (int _n((int)((text).size())), ind(0); ind < _n; ind++) {
    bool can = true;
    int i = 0;
    for (; i < (int)((b).size()); ++i) {
      bool eq = true;
      int j = (int)((b[i]).size()) - 1, k = ind;
      for (; j >= 0 && k >= t_pos; --j, --k) eq = eq && (b[i][j] == text[k]);
      eq = eq && (j < 0);
      can = can && (!eq);
      if (!can) break;
    }
    if (!can) {
      if (t_len > len) len = t_len, pos = t_pos;
      t_pos = ind + 2 - (int)((b[i]).size()), t_len = (int)((b[i]).size()) - 1;
    } else
      t_len++;
  }
  if (t_len > len) len = t_len, pos = t_pos;
  cout << len << ' ' << pos << endl;
  return 0;
}
