#include <bits/stdc++.h>
using namespace std;
void task();
int main() {
  srand(time(0));
  task();
  return 0;
}
const int INF = 0x3f3f3f3f;
const int N = 3e5 + 10;
const int M = 3e5 + 10;
long double px, py, vx, vy;
long double a, b, c, d;
void task() {
  cin >> px >> py >> vx >> vy;
  cin >> a >> b >> c >> d;
  cout << fixed << setprecision(13);
  {
    long double k = sqrt(vx * vx + vy * vy);
    vx /= k;
    vy /= k;
  }
  { cout << px + vx * b << ' ' << py + vy * b << "\n"; }
  {
    long double x = px - a / 2.0 * vy;
    long double y = py + a / 2.0 * vx;
    cout << x << ' ' << y << "\n";
  }
  {
    long double x = px - a / 2.0 * vy + (a / 2.0 - c / 2.0) * vy;
    long double y = py + a / 2.0 * vx - (a / 2.0 - c / 2.0) * vx;
    cout << x << ' ' << y << "\n";
  }
  {
    long double x = px - a / 2.0 * vy + (a / 2.0 - c / 2.0) * vy;
    long double y = py + a / 2.0 * vx - (a / 2.0 - c / 2.0) * vx;
    x += -vx * d;
    y += -vy * d;
    cout << x << ' ' << y << "\n";
  }
  {
    long double x = px + a / 2.0 * vy - (a / 2.0 - c / 2.0) * vy;
    long double y = py - a / 2.0 * vx + (a / 2.0 - c / 2.0) * vx;
    x += -vx * d;
    y += -vy * d;
    cout << x << ' ' << y << "\n";
  }
  {
    long double x = px + a / 2.0 * vy - (a / 2.0 - c / 2.0) * vy;
    long double y = py - a / 2.0 * vx + (a / 2.0 - c / 2.0) * vx;
    cout << x << ' ' << y << "\n";
  }
  {
    long double x = px + a / 2.0 * vy;
    long double y = py - a / 2.0 * vx;
    cout << x << ' ' << y << "\n";
  }
}
