#include <bits/stdc++.h>   using namespace std;   long long a[9][5], b[8];   long long dis(int i, int j) {     long long x = a[i][0] - a[j][0], y = a[i][1] - a[j][1], z = a[i][2] - a[j][2];     return x * x + y * y + z * z;   }   bool check() {     for (int i = 0; i < 8; i++) {       for (int j = 0; j < 8; j++) {         if (i == j) continue;         if (j < i)           b[j] = dis(i, j);         else           b[j - 1] = dis(i, j);       }       sort(b, b + 7);       long long t1 = b[0], t2 = 2 * b[0], t3 = 3 * b[0];       if (t1 == 0 || t1 != b[1] || t1 != b[2] || t2 != b[3] || t2 != b[4] ||           t2 != b[5] || t3 != b[6])         return false;     }     return true;   }   bool is_ok(int cur) {     if (cur == 8) {       return check();     }     sort(a[cur], a[cur] + 3);     do {       if (is_ok(cur + 1)) return true;     } while (next_permutation(a[cur], a[cur] + 3));     return false;   }   int main() {     for (int i = 0; i < 8; i++) cin >> a[i][0] >> a[i][1] >> a[i][2];     if (!is_ok(0))       puts( NO );     else {       puts( YES );       for (int i = 0; i < 8; i++)         for (int j = 0; j < 3; j++) {           cout << a[i][j] <<    ;           if (j == 2) cout << endl;         }     }     return 0;   }   