added sequenced function execution