#include <bits/stdc++.h>
using namespace std;
long long a[1005], b[1005];
int lookup(long long b[], long long n);
int main() {
  long long v, n, num1, num2;
  scanf("%lld", &n);
  for (long long i = 0; i < n; i++) {
    scanf("%lld", &a[i]);
    b[i] = a[i];
  }
  sort(b, b + n);
  if (n == 2 && b[1] != b[0]) {
    v = (b[1] - b[0]) / 2;
    if (b[0] % 2 == 1 || b[1] % 2 == 1) {
      printf("Unrecoverable configuration.");
      return 0;
    } else {
      for (long long i = 0; i < n; i++) {
        if (a[i] == b[n - 1]) num1 = i + 1;
        if (a[i] == b[0]) num2 = i + 1;
      }
      printf("%lld ml. from cup #%lld to cup #%lld.", v, num2, num1);
      return 0;
    }
  }
  for (long long i = 0; i < n - 1; i++) {
    if (b[i] != b[i + 1] && n != 2) {
      if (i == 0 && lookup(b, n) && b[0] + b[n - 1] == 2 * b[1]) {
        v = b[1] - b[0];
        for (long long i = 0; i < n; i++) {
          if (a[i] == b[n - 1]) num1 = i + 1;
          if (a[i] == b[0]) num2 = i + 1;
        }
        printf("%lld ml. from cup #%lld to cup #%lld.", v, num2, num1);
        return 0;
      } else {
        printf("Unrecoverable configuration.");
        return 0;
      }
    }
  }
  printf("Exemplary pages.");
  return 0;
}
int lookup(long long b[], long long n) {
  for (long long i = 1; i < n - 2; i++)
    if (b[i] != b[i + 1]) return 0;
  return 1;
}
