func_code_string: #include <bits/stdc++.h>   using namespace std;   template <class T>   using vv = vector<vector<T>>;   template <class T>   ostream &operator<<(ostream &os, const vector<T> &t) {     os <<  { ;     for (int(i) = 0; (i) < (t.size()); ++(i)) {       os << t[i] <<  , ;     }     os <<  }  << endl;     return os;   }   template <class S, class T>   ostream &operator<<(ostream &os, const pair<S, T> &t) {     return os <<  (  << t.first <<  ,  << t.second <<  ) ;   }   template <class T>   inline bool MX(T &l, const T &r) {     return l < r ? l = r, 1 : 0;   }   template <class T>   inline bool MN(T &l, const T &r) {     return l > r ? l = r, 1 : 0;   }   vector<string> s_p_l_i_t(const string &s, char c) {     vector<string> v;     stringstream ss(s);     string x;     while (getline(ss, x, c)) v.emplace_back(x);     return move(v);   }   void e_r_r(vector<string>::iterator it) {}   template <typename T, typename... Args>   void e_r_r(vector<string>::iterator it, T a, Args... args) {     if (*it ==   1  || *it ==  1 )       cerr << endl;     else       cerr << it->substr((*it)[0] ==    , it->length()) <<   =   << a <<  ,  ;     e_r_r(++it, args...);   }   const long long MOD = 1e9 + 7;   int main() {     ios_base::sync_with_stdio(false);     cout << fixed << setprecision(0);     int n;     cin >> n;     cout <<  YES  << endl;     int a, b, c, d;     for (int(i) = 0; (i) < (n); ++(i)) {       cin >> a >> b >> c >> d;       cout << abs(a) % 2 * 2 + abs(b) % 2 + 1 << endl;     }     return 0;   }   