add Acyclic, improve naming conventions