extracted functionality to multiple actors