renaming depend to require
Implement save requires