@ccc I looked into using timeit to determine performance of all these changes but ultimately decided that performance was almost definitely not the problem my widget was encountering.

Thank you for the dictionary approach anyway, it’s much more concise than I would’ve managed