add function3 and function4