@0xa1b2c3d4e5f6a7b8; interface Calculator { evaluate @0 (expression :Text) -> (value :Float64); add @1 (a :Float64, b :Float64) -> (result :Float64); ping @2 () -> (); } struct CalcServer { calc @0 :Calculator; }