@startuml #PaleVioletRed:Receive message from peer; fork :Unpack to_server message; floating note left: Full process :Decrypt to_server message; :Deserialize to_server message; :Enqueue to_server message for server processing; :Build ack from_server message containing to_server message id; :Serialize from_server message; :Encrypt from_server message; :Pack from_server message; fork again :ProcessInbound to_server message; floating note right: Simplified process with helper functions :Enqueue to_server message for server processing; :Build ack from_server message containing to_server message id; :ProcessOutbound from_server message; end fork #Palegreen:Send back to peer; @enduml