grr stateChanged api actually sends dict not list