Add Post that state pattern in design patterns