#include <bits/stdc++.h>
using namespace std;
long long pw(long long a, long long n) {
  long long rs = 1, cr = a;
  while (n) {
    if (n & 1) rs = (rs * cr) % 1000000007;
    cr = (cr * cr) % 1000000007;
    n >>= 1;
  }
  return rs;
}
void multiply(long long ret[2][2], long long a[2][2], long long b[2][2]) {
  long long rs[2][2];
  for (int i = 0; i < 2; ++i) {
    for (int j = 0; j < 2; ++j) {
      rs[i][j] = 0;
      for (int k = 0; k < 2; ++k) {
        rs[i][j] += (a[i][k] * b[k][j]);
      }
      rs[i][j] %= 1000000007;
    }
  }
  for (int i = 0; i < 2; ++i) {
    for (int j = 0; j < 2; ++j) {
      ret[i][j] = rs[i][j];
    }
  }
}
void power(long long ret[2][2], long long a[2][2], long long n) {
  long long rs[2][2], cr[2][2];
  rs[0][0] = 1;
  rs[0][1] = 0;
  rs[1][0] = 0;
  rs[1][1] = 1;
  cr[0][0] = a[0][0];
  cr[0][1] = a[0][1];
  cr[1][0] = a[1][0];
  cr[1][1] = a[1][1];
  while (n) {
    if (n & 1) multiply(rs, rs, cr);
    multiply(cr, cr, cr);
    n >>= 1;
  }
  for (int i = 0; i < 2; ++i)
    for (int j = 0; j < 2; ++j) ret[i][j] = rs[i][j];
}
void solve() {
  int n;
  long long a;
  scanf("%d", &n);
  long long mat[2][2];
  mat[0][0] = 1;
  mat[0][1] = 2;
  mat[1][0] = 1;
  mat[1][1] = 0;
  long long i2 = pw(2, 1000000007 - 2);
  long long i4 = pw(4, 1000000007 - 2);
  long long imat[2][2];
  imat[0][0] = i2;
  imat[0][1] = 1000000007 - i2;
  imat[1][0] = 1000000007 - i4;
  imat[1][1] = (3 * i4) % 1000000007;
  long long den = 1, cr = 2;
  while (n--) {
    scanf("%lld", &a);
    power(mat, mat, a);
    den = pw(cr, a);
    cr = den;
  }
  multiply(mat, mat, imat);
  long long frs = mat[0][0] + mat[0][1];
  frs %= 1000000007;
  den = (den * i2) % 1000000007;
  frs = (1000000007 + den - frs) % 1000000007;
  printf("%lld/%lld\n", frs, den);
}
int main() {
  int t = 1;
  while (t--) {
    solve();
  }
}
