add protections against over-clicking