//れっつバケット法

#include<iostream>
#include <string>
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

using namespace std;

//重なったら1 そうでなければ0
int check(int loc1x, int loc1y, int loc2x, int loc2y){
	int kyori =  abs(pow(loc2x - loc1x, 2) + pow(loc2y - loc1y, 2) );
	
	//cout << "距離測定:" << loc1[0] << "," << loc1[0] << "と" << loc2[0] << "," << loc2[1] << ":" << kyori << endl;
	if(kyori < 400){
		return 1;
	}
	
	return 0;
}
	
int main(){
	int max;
	int count = 0;
	int expand = 1000;	//20000
	int loc[100000][2];
	int in1;
	int in2;
	int block[100000];
	int myblock;
	
	cin >> max;
	for(int i=0; i<max; i++){
		//データ入力部分
		cin >> in1;
		cin >> in2;
		myblock = (in1 / expand) * 20 + in2 / expand;

		loc[i][0] = in1;
		loc[i][1] = in2;
		block[i] = myblock;

		//カウント部分
		for(int i2=0; i2<i; i2++){
			if(block[i] == myblock){
				if(check(in1, in2 ,loc[myblock][0], loc[myblock][1]) == 1){
					break;
				}
			}
		}
		
		if(loc[myblock][0] != -1){
			count ++;
		}
	}
	
	//中身確認
	/*
	for(int i=0; i<max; i++){
		cout << loc[i][0] << "," << loc[i][1] << endl;
	}
	*/
	cout << count << endl;
	
}