Update article and refactor