improved article factory