implement composer