So let's remember: some programmer, somewhere, is right now thinking about building a tri-state boolean because they think it fits their current problem perfectly fine. And they are always wrong.
How you get 5 possible values into a tri state Boolean is beyond me though.