Finish all the required functions
Finish all required functions