#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using ld = long double;
using uint = unsigned int;
using ull = unsigned long long;
template <typename T>
using pair2 = pair<T, T>;
using pii = pair<int, int>;
using pli = pair<ll, int>;
using pll = pair<ll, ll>;
using vi = vector<int>;
using vl = vector<ll>;
using si = set<int>;
using sl = set<ll>;
const ld pi = acos(-1);
complex<ld> read() {
  ld xx, yy;
  cin >> xx >> yy;
  return complex<ld>(xx, yy);
}
void solve() {
  auto p = read();
  auto v = read();
  ld a, b, c, d;
  cin >> a >> b >> c >> d;
  v /= abs(v);
  vector<complex<ld> > ans;
  complex<ld> cur = p;
  cur = cur + v * b;
  ans.push_back(cur);
  auto perp = v;
  perp *= polar((ld)1.0, pi / 2);
  cur = p + perp * (a / 2);
  ans.push_back(cur);
  cur = cur + ((-perp) * ((a - c) / 2));
  ans.push_back(cur);
  cur = cur + (-v) * d;
  ans.push_back(cur);
  cur = cur + ((-perp) * c);
  ans.push_back(cur);
  cur = cur + (v)*d;
  ans.push_back(cur);
  cur = cur + ((-perp) * ((a - c) / 2));
  ans.push_back(cur);
  for (auto i : ans)
    cout << fixed << setprecision(10) << i.real() << " " << i.imag() << "\n";
}
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  solve();
  return 0;
}
