// Complex hang test case - cross-object method calls print("=== Complex Hang Test ===") box MessageHub { init { handlers } setup() { print("MessageHub setup start") me.handlers = new MapBox() print("MessageHub setup complete") } deliver(messageType, data, from) { print("Message: " + from + " -> " + messageType + " = " + data) } } box PeerNode { init { nodeId, messageHub } setup(hub) { print("PeerNode setup start") me.nodeId = "Node123" me.messageHub = hub print("PeerNode setup complete") } send(recipient, message) { print("Sending message via hub...") // This could cause the hang - complex field access in method call me.messageHub.deliver("message", message, me.nodeId) } } print("Creating MessageHub...") local hub hub = new MessageHub() hub.setup() print("Creating PeerNode...") local node node = new PeerNode() node.setup(hub) print("Testing cross-object method call...") node.send("alice", "Hello!") print("Complex test completed!")