modifications and deletions
a more Require-oriented refactoring