added signals and states