adaptation to signature + removing apply