#include <bits/stdc++.h>
using namespace std;
double f[300010][2], x, y, z;
long long n, i;
double s[300010];
int main() {
  scanf("%I64d", &n);
  for (i = 1; i <= n; i++) {
    scanf("%lf", &s[i]);
  }
  for (i = 1; i <= n; i++) {
    f[i][0] = (f[i - 1][0] + f[i - 1][1]) * (1 - s[i]);
    f[i][1] = (i * i - x * i + y + z) * s[i];
    x = x * s[i] + 2 * i * (1 - s[i]);
    y = y * s[i] + i * (1 - s[i]) * i;
    z = z * s[i] + f[i][0];
  }
  printf("%.10lf\n", f[n][0] + f[n][1]);
  return 0;
}
