diff --git a/buggy.py b/buggy.py
--- a/buggy.py
+++ b/buggy.py
@@ -8,7 +8,7 @@
 
 for i in range(60):
     lo = max(l, 1 << i)
-    hi = min(r + 1, 2 * lo)
+    hi = min(r + 1, 1 << (i + 1))
 
     if hi >= lo and n & (1 << i):
         out += hi - lo
