#include <bits/stdc++.h>
using namespace std;
map<long long int, long long int> Mp;
void read_and_solve() {
  long long int n = ({
    long long int a;
    scanf("%lld", &a);
    a;
  }),
                i, j;
  long long int cnt = 0;
  vector<long long int> v;
  for (i = 1; i <= n; i++) {
    for (j = i; j <= n; j++) {
      long long int y = i ^ j;
      if (y >= j && i + j > y && y + j > i && y + i > j && y <= n) cnt++;
    }
  }
  cout << cnt << endl;
}
int main() {
  read_and_solve();
  return 0;
}
