composition not inheritance