add failure protection - prevents huge dark/light blocks but doesn't slow down too much