#include <bits/stdc++.h>
using namespace std;
const long long INF = 1e18;
const long double EPS = 1e-9;
long double kukarek(long double kek) {
  if (kek < 0) {
    kek = 0;
  }
  if (kek > 1) {
    kek = 1;
  }
  return kek;
}
signed main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  long long n;
  cin >> n;
  long double s1[n], s2[n];
  for (long long i = 0; i < n; i++) {
    cin >> s1[i];
  }
  for (long long i = 0; i < n; i++) {
    cin >> s2[i];
  }
  long double p[n], q[n];
  long double a = 0, b = 0;
  for (long long i = 0; i < n; i++) {
    long double D = (s1[i] + s2[i] + a - b) * (s1[i] + s2[i] + a - b) +
                    4 * (b * s1[i] + b * s2[i] - s1[i]);
    long double x1 = (a - b + s1[i] + s2[i] + sqrt(D + EPS * EPS)) / 2.0;
    long double x2 = (a - b + s1[i] + s2[i] - sqrt(D + EPS * EPS)) / 2.0;
    p[i] = x2;
    q[i] = s1[i] + s2[i] - p[i];
    a += q[i];
    b += p[i];
    p[i] = kukarek(p[i]);
    q[i] = kukarek(q[i]);
  }
  p[n - 1] = q[n - 1] = 1;
  for (long long i = 0; i < n - 1; i++) {
    p[n - 1] -= p[i];
    q[n - 1] -= q[i];
  }
  for (long long i = 0; i < n; i++) {
    cout << setprecision(30) << p[i] << ' ';
  }
  cout << endl;
  for (long long i = 0; i < n; i++) {
    cout << setprecision(30) << q[i] << ' ';
  }
  return 0;
}
