rename nextAppState to nextVMState in ViewModel