more notes on the switching logic