added composite membership function