changed composition semantics back again