#include <iostream>
#include <iomanip>
#include <vector>
#include <string>
#include <stack>
#include <queue>
#include <deque>
#include <set>
#include <map>
#include <algorithm>
#include <sstream>
#include <cstdlib>
#include <cstring>
#include <functional>
#include <numeric>
#include <cmath>
#include <climits>
#include <limits>
#include <cfloat>
#include <fstream>
using namespace std;

int main()
{
	const double base[] = { 0.0, 0.2, 0.6, 1.1, DBL_MAX };
	//»è	Í
	//A	1.1Èã
	//B	0.6Èã1.1¢
	//C	0.2Èã0.6¢
	//D	0.2¢ 

	string str = "";
	vector <vector <int> > t (4, vector<int> (2, 0 ) );
	int size = sizeof (base )/sizeof (base[0] );
	int i,j;

	while (getline (cin, str ) ){

		vector <double> eyes(2, 0.);
		stringstream ss(str);
		ss >> eyes[0] >> eyes[1];	// left, right order

		for (i = 0; i < 2; ++i){
			for (j = 0; j < size - 1; ++j){
				if (eyes[i] >= base[j] && eyes[i] < base[j+1] ){
					++t[j][i];
				} // end if
			} // end for
		} // end for
	} // end while

	for (i = 3; i >= 0; --i){
		cout << t[i][0] << ' ' << t[i][1] << endl;
	} // end for
		
	return 0;
}