implemented a composite