add(composition): add overloading