I am currently trying to implement a common method to pass the requests and response messages between two top-level actors, say TA1 and TA2. These are communication between nested actors of TA1 and TA2 which are not required by the top-level actors but they just provide a means to by-pass this request/response. I tried to make two malleable methods (one for request and the other for response) which can accept any datatype but if I create a message for this method it does not accept different datatypes. I know using variants is the one of the way. Is there any other way I could do this?