#include <bits/stdc++.h>
int n, a[105], ans;
int comp(const void* elem1, const void* elem2) {
  int f = *((int*)elem1);
  int s = *((int*)elem2);
  if (f > s) return 1;
  if (f < s) return -1;
  return 0;
}
int main(int argc, char* argv[]) {
  scanf("%d", &n);
  int i;
  for (i = 0; i < n; ++i) {
    int HH, MM;
    scanf("%d:%d", &HH, &MM);
    a[i] = HH * 60 + MM;
  }
  qsort(a, n, sizeof(a[0]), comp);
  ans = 0;
  for (i = 0; i < n - 1; ++i) {
    if (a[i + 1] - a[i] > ans) {
      ans = a[i + 1] - a[i];
    }
  }
  if (a[0] + 24 * 60 - a[n - 1] > ans) {
    ans = a[0] + 24 * 60 - a[n - 1];
  }
  ans--;
  int d1, d2;
  d1 = ans / 60;
  d2 = ans % 60;
  if (d1 < 10) {
    if (d2 < 10) {
      printf("0%d:0%d\n", d1, d2);
    } else {
      printf("0%d:%d\n", d1, d2);
    }
  } else {
    if (d2 < 10) {
      printf("%d:0%d\n", d1, d2);
    } else {
      printf("%d:%d\n", d1, d2);
    }
  }
  return 0;
}
