(xor
 (seq
  (seq
   (seq
    (seq
     (seq
      (seq
       (seq
        (seq
         (seq
          (call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
          (call %init_peer_id% ("getDataSrv" "names") [] names)
         )
         (call %init_peer_id% ("getDataSrv" "greet") [] greet)
        )
        (call %init_peer_id% ("getDataSrv" "node") [] node)
       )
       (call %init_peer_id% ("getDataSrv" "echo_service_id") [] echo_service_id)
      )
      (call %init_peer_id% ("getDataSrv" "greeting_service_id") [] greeting_service_id)
     )
     (call -relay- ("op" "noop") [])
    )
    (xor
     (seq
      (seq
       (call -relay- ("op" "noop") [])
       (call node (echo_service_id "echo") [names] echo_names)
      )
      (fold echo_names result
       (seq
        (call node (greeting_service_id "greeting") [result.$.echo! greet] $res)
        (next result)
       )
      )
     )
     (seq
      (call -relay- ("op" "noop") [])
      (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
     )
    )
   )
   (call -relay- ("op" "noop") [])
  )
  (xor
   (call %init_peer_id% ("callbackSrv" "response") [$res])
   (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
  )
 )
 (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3])
)
