created composite func
created composite func