More composition - untested.