marks, renaming, resolve functions implemented and tested