All of that is way too much work. Variables, or other stored data, can tell us if the machine is waiting for the key to be pressed. It can hold personal data to say only one person can press the button.