Why does `random.randint(a, b)` return a range inclusive of `b`? | Hacker News Reader