seperate abstract implementations
fixed issue with actor sending