completed more functions.