Avoid explicitly declaring the list as an empty list. It’s the line:
The power list is usually {}.
that’s causing the issue. It’s not necessary, as the line:
A power list is a list of powers that varies.
will have already set it up as an empty list.
The same problem showed up in Having trouble with list equality.