```
public int rangeBitwiseAnd(int m, int n) {
if (m == n) {
return m;
}
if (m - n == 1) {
return m & n;
}
//else m == n
return rangeBitwiseAnd(m >> 1, n >> 1) << 1; //忘了m-n == 1!!!
}
```

I got TLE on this case: 2147483647 2147483647. Isn't it just return 2147483647?