The exclusion isn't necessary until `insertHint()` to determine whether to replace anything in page. It's hard to follow the code spread across `hasHints()`, `getHints()`, and `insertHint()`. Can't this all be done in `insertHint()`?