#include <bits/stdc++.h>
using namespace std;
struct point {
  int x;
  int y;
} a[9];
bool scal(int i, int j, int k) {
  return ((a[j].x - a[i].x) * (a[k].x - a[i].x) +
          (a[j].y - a[i].y) * (a[k].y - a[i].y)) == 0;
}
bool norm(int i, int j, int k, int l) {
  return ((a[j].x - a[i].x) * (a[j].x - a[i].x) +
          (a[j].y - a[i].y) * (a[j].y - a[i].y)) ==
         ((a[k].x - a[l].x) * (a[k].x - a[l].x) +
          (a[k].y - a[l].y) * (a[k].y - a[l].y));
}
bool sq(int i, int j, int k, int l) {
  return (
      (scal(i, j, k) && scal(l, j, k) && norm(i, j, k, l) &&
       norm(i, j, i, k)) ||
      (scal(i, j, l) && scal(k, j, l) && norm(i, j, k, l) &&
       norm(i, j, i, l)) ||
      (scal(i, k, l) && scal(j, k, l) && norm(i, k, j, l) && norm(i, k, i, l)));
}
bool rect(int i, int j, int k, int l) {
  return ((scal(i, j, k) && scal(l, j, k) && norm(i, j, k, l)) ||
          (scal(i, j, l) && scal(k, j, l) && norm(i, j, k, l)) ||
          (scal(i, k, l) && scal(j, k, l) && norm(i, k, j, l)));
}
int main() {
  int i, j, k, l, i1, j1, k1, l1, t;
  bool p, q, f = 1;
  for (i = 1; i < 9; i++) cin >> a[i].x >> a[i].y;
  i = 1;
  while ((i < 6) && f) {
    j = i + 1;
    while ((j < 7) && f) {
      k = j + 1;
      while ((k < 8) && f) {
        l = k + 1;
        while ((l < 9) && f) {
          p = sq(i, j, k, l);
          t = 1;
          while ((t == i) || (t == j) || (t == k) || (t == l)) t++;
          i1 = t;
          t++;
          while ((t == i) || (t == j) || (t == k) || (t == l)) t++;
          j1 = t;
          t++;
          while ((t == i) || (t == j) || (t == k) || (t == l)) t++;
          k1 = t;
          t++;
          while ((t == i) || (t == j) || (t == k) || (t == l)) t++;
          l1 = t;
          t++;
          q = rect(i1, j1, k1, l1);
          if (p && q) {
            f = 0;
            cout << "YES\n";
            cout << i << ' ' << j << ' ' << k << ' ' << l << '\n';
            cout << i1 << ' ' << j1 << ' ' << k1 << ' ' << l1 << '\n';
          }
          l++;
        }
        k++;
      }
      j++;
    }
    i++;
  }
  if (f) cout << "NO";
  return 0;
}
