Add state pattern