added fourth stage