#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; long long MOD = 1000000007; long long A; long long f[5] = { 3,5,17,257,65537 }; int func( long long a, int i ) { if ( a > A ) { return 0; } if ( i == 5 ) { return ( a >= 3 ? 1 : 0); } return func( a*f[i], i+1 ) + func( a, i+1 ); } int main() { cin >> A; long long a = 1; int ans = 0; while ( true ) { if ( a > A ) { break; } ans += func( a, 0 ); a *= 2; } cout << ans << endl; return 0; }