static O rpc(S botName, S method, O... args) { ret unstructure_debug(matchOKOrFail( sendToLocalBot(botName, rpc_makeCall(method, args)))); } static O rpc(DialogIO bot, S method, O... args) { ret unstructure_debug(matchOKOrFail( bot.ask(rpc_makeCall(method, args)))); } static S rpc_makeCall(S method, O... args) { if (empty(args)) ret "call " + method; ret format("call *", concatLists((L) ll(method), asList(args))); }