better blinking, dry'ing code