#include <bits/stdc++.h>
using namespace std;
int n, in = 2;
long long suma, bit[1000000];
double x, y, w, ab[100003];
pair<double, double> ar[100004];
map<double, int> busca;
void updt(int p) {
  for (int i = p; i <= n; i += (i & -i)) bit[i]++;
}
int query(int p) {
  int s = 0;
  for (int i = p; i > 0; i -= (i & -i)) s += bit[i];
  return s;
}
bool op(pair<double, double> f, pair<double, double> g) {
  if (f.first != g.first) return f.first < g.first;
  return f.second > g.second;
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cin >> n >> w;
  for (int i = 0; i < n; i++) {
    cin >> x >> y;
    ar[i] = make_pair((y - w) / x, (y + w) / x);
    ab[i] = ar[i].second;
  }
  sort(ar, ar + n, op);
  sort(ab, ab + n);
  busca[ab[0]] = 1;
  for (int i = 1; i < n; i++)
    if (ab[i] != ab[i - 1]) busca[ab[i]] = in++;
  for (int i = 0; i < n; i++) {
    in = busca[ar[i].second];
    suma += query(n - in + 1);
    updt(n - in + 1);
  }
  cout << suma;
  return 0;
}
