doing compose part