summaryrefslogtreecommitdiff
path: root/api/pl.treksoft.kvision.remote/-remote-agent
diff options
context:
space:
mode:
Diffstat (limited to 'api/pl.treksoft.kvision.remote/-remote-agent')
-rw-r--r--api/pl.treksoft.kvision.remote/-remote-agent/-init-.html15
-rw-r--r--api/pl.treksoft.kvision.remote/-remote-agent/call-agent.html14
-rw-r--r--api/pl.treksoft.kvision.remote/-remote-agent/call.html37
-rw-r--r--api/pl.treksoft.kvision.remote/-remote-agent/index.html72
-rw-r--r--api/pl.treksoft.kvision.remote/-remote-agent/service-manager.html14
5 files changed, 152 insertions, 0 deletions
diff --git a/api/pl.treksoft.kvision.remote/-remote-agent/-init-.html b/api/pl.treksoft.kvision.remote/-remote-agent/-init-.html
new file mode 100644
index 00000000..8fdf9464
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/-remote-agent/-init-.html
@@ -0,0 +1,15 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>RemoteAgent.<init> - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">RemoteAgent</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
+<br/>
+<h1>&lt;init&gt;</h1>
+<a name="pl.treksoft.kvision.remote.RemoteAgent$&lt;init&gt;(pl.treksoft.kvision.remote.ServiceManager((pl.treksoft.kvision.remote.RemoteAgent.T)))"></a>
+<code><span class="identifier">RemoteAgent</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$<init>(pl.treksoft.kvision.remote.ServiceManager((pl.treksoft.kvision.remote.RemoteAgent.T)))/serviceManager">serviceManager</span><span class="symbol">:</span>&nbsp;<a href="../-service-manager/index.html"><span class="identifier">ServiceManager</span></a><span class="symbol">&lt;</span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span><span class="symbol">)</span></code>
+<p>Client side agent for JSON-RPC remote calls.</p>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-remote-agent/call-agent.html b/api/pl.treksoft.kvision.remote/-remote-agent/call-agent.html
new file mode 100644
index 00000000..461d2166
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/-remote-agent/call-agent.html
@@ -0,0 +1,14 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>RemoteAgent.callAgent - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">RemoteAgent</a>&nbsp;/&nbsp;<a href="./call-agent.html">callAgent</a><br/>
+<br/>
+<h1>callAgent</h1>
+<a name="pl.treksoft.kvision.remote.RemoteAgent$callAgent"></a>
+<code><span class="keyword">val </span><span class="identifier">callAgent</span><span class="symbol">: </span><a href="../-call-agent/index.html"><span class="identifier">CallAgent</span></a></code>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-remote-agent/call.html b/api/pl.treksoft.kvision.remote/-remote-agent/call.html
new file mode 100644
index 00000000..cbb50e19
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/-remote-agent/call.html
@@ -0,0 +1,37 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>RemoteAgent.call - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">RemoteAgent</a>&nbsp;/&nbsp;<a href="./call.html">call</a><br/>
+<br/>
+<h1>call</h1>
+<a name="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function2((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))"></a>
+<code><span class="keyword">inline</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function2((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span></code><br/>
+<a name="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function2((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))))"></a>
+<code><span class="keyword">inline</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function2((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code><br/>
+<a name="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function3((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR)))"></a>
+<code><span class="keyword">inline</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function3((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR"><span class="identifier">PAR</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function3((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR)))/p">p</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR"><span class="identifier">PAR</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function3((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR)))/serializer">serializer</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR"><span class="identifier">PAR</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span></code><br/>
+<a name="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function3((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR)))"></a>
+<code><span class="keyword">inline</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function3((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR"><span class="identifier">PAR</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function3((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR)))/p">p</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR"><span class="identifier">PAR</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function3((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR)))/serializer">serializer</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR"><span class="identifier">PAR</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code><br/>
+<a name="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))"></a>
+<code><span class="keyword">inline</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR1</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR2</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/p1">p1</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/p2">p2</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/serializer1">serializer1</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/serializer2">serializer2</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span></code><br/>
+<a name="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))"></a>
+<code><span class="keyword">inline</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR1</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR2</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/p1">p1</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/p2">p2</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/serializer1">serializer1</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/serializer2">serializer2</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code><br/>
+<a name="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))"></a>
+<code><span class="keyword">inline</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR1</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR2</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR3</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/p1">p1</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/p2">p2</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/p3">p3</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/serializer1">serializer1</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/serializer2">serializer2</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/serializer3">serializer3</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span></code><br/>
+<a name="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))"></a>
+<code><span class="keyword">inline</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR1</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR2</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR3</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/p1">p1</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/p2">p2</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/p3">p3</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/serializer1">serializer1</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/serializer2">serializer2</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/serializer3">serializer3</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code><br/>
+<a name="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))"></a>
+<code><span class="keyword">inline</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR1</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR2</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR3</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR4</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/p1">p1</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/p2">p2</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/p3">p3</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/p4">p4</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/serializer1">serializer1</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/serializer2">serializer2</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/serializer3">serializer3</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/serializer4">serializer4</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span></code><br/>
+<a name="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))"></a>
+<code><span class="keyword">inline</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR1</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR2</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR3</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR4</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/p1">p1</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/p2">p2</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/p3">p3</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/p4">p4</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/serializer1">serializer1</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/serializer2">serializer2</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/serializer3">serializer3</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/serializer4">serializer4</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code><br/>
+<a name="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))"></a>
+<code><span class="keyword">inline</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR1</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR2</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR3</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR4</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR5</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR5"><span class="identifier">PAR5</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p1">p1</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p2">p2</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p3">p3</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p4">p4</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p5">p5</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR5"><span class="identifier">PAR5</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer1">serializer1</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer2">serializer2</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer3">serializer3</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer4">serializer4</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer5">serializer5</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR5"><span class="identifier">PAR5</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span></code><br/>
+<a name="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))"></a>
+<code><span class="keyword">inline</span> <span class="keyword">fun </span><span class="symbol">&lt;</span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR1</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR2</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR3</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR4</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">PAR5</span><span class="symbol">, </span><span class="keyword">reified</span>&nbsp;<span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="keyword">noinline</span> <span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR5"><span class="identifier">PAR5</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p1">p1</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p2">p2</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p3">p3</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p4">p4</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p5">p5</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR5"><span class="identifier">PAR5</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer1">serializer1</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer2">serializer2</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer3">serializer3</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer4">serializer4</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer5">serializer5</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR5"><span class="identifier">PAR5</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code>
+<p>Executes defined call to a remote web service.</p>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-remote-agent/index.html b/api/pl.treksoft.kvision.remote/-remote-agent/index.html
new file mode 100644
index 00000000..c788a33d
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/-remote-agent/index.html
@@ -0,0 +1,72 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>RemoteAgent - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="./index.html">RemoteAgent</a><br/>
+<br/>
+<h1>RemoteAgent</h1>
+<code><span class="keyword">open</span> <span class="keyword">class </span><span class="identifier">RemoteAgent</span><span class="symbol">&lt;</span><span class="keyword">out</span>&nbsp;<span class="identifier">T</span><span class="symbol">&gt;</span></code>
+<p>Client side agent for JSON-RPC remote calls.</p>
+<h3>Constructors</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="-init-.html">&lt;init&gt;</a></p>
+</td>
+<td>
+<code><span class="identifier">RemoteAgent</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$<init>(pl.treksoft.kvision.remote.ServiceManager((pl.treksoft.kvision.remote.RemoteAgent.T)))/serviceManager">serviceManager</span><span class="symbol">:</span>&nbsp;<a href="../-service-manager/index.html"><span class="identifier">ServiceManager</span></a><span class="symbol">&lt;</span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span><span class="symbol">)</span></code>
+<p>Client side agent for JSON-RPC remote calls.</p>
+</td>
+</tr>
+</tbody>
+</table>
+<h3>Properties</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="call-agent.html">callAgent</a></p>
+</td>
+<td>
+<code><span class="keyword">val </span><span class="identifier">callAgent</span><span class="symbol">: </span><a href="../-call-agent/index.html"><span class="identifier">CallAgent</span></a></code></td>
+</tr>
+<tr>
+<td>
+<p><a href="service-manager.html">serviceManager</a></p>
+</td>
+<td>
+<code><span class="keyword">val </span><span class="identifier">serviceManager</span><span class="symbol">: </span><a href="../-service-manager/index.html"><span class="identifier">ServiceManager</span></a><span class="symbol">&lt;</span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span></code></td>
+</tr>
+</tbody>
+</table>
+<h3>Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="call.html">call</a></p>
+</td>
+<td>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function2((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span></code><br/>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function2((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code><br/>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR</span><span class="symbol">, </span><span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function3((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR"><span class="identifier">PAR</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function3((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR)))/p">p</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR"><span class="identifier">PAR</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function3((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR)))/serializer">serializer</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR"><span class="identifier">PAR</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span></code><br/>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR</span><span class="symbol">, </span><span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function3((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR"><span class="identifier">PAR</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function3((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR)))/p">p</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR"><span class="identifier">PAR</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function3((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR)))/serializer">serializer</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR"><span class="identifier">PAR</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code><br/>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR1</span><span class="symbol">, </span><span class="identifier">PAR2</span><span class="symbol">, </span><span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/p1">p1</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/p2">p2</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/serializer1">serializer1</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/serializer2">serializer2</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span></code><br/>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR1</span><span class="symbol">, </span><span class="identifier">PAR2</span><span class="symbol">, </span><span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/p1">p1</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/p2">p2</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/serializer1">serializer1</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function4((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)))/serializer2">serializer2</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code><br/>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR1</span><span class="symbol">, </span><span class="identifier">PAR2</span><span class="symbol">, </span><span class="identifier">PAR3</span><span class="symbol">, </span><span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/p1">p1</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/p2">p2</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/p3">p3</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/serializer1">serializer1</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/serializer2">serializer2</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/serializer3">serializer3</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span></code><br/>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR1</span><span class="symbol">, </span><span class="identifier">PAR2</span><span class="symbol">, </span><span class="identifier">PAR3</span><span class="symbol">, </span><span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/p1">p1</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/p2">p2</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/p3">p3</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/serializer1">serializer1</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/serializer2">serializer2</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function5((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)))/serializer3">serializer3</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code><br/>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR1</span><span class="symbol">, </span><span class="identifier">PAR2</span><span class="symbol">, </span><span class="identifier">PAR3</span><span class="symbol">, </span><span class="identifier">PAR4</span><span class="symbol">, </span><span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/p1">p1</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/p2">p2</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/p3">p3</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/p4">p4</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/serializer1">serializer1</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/serializer2">serializer2</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/serializer3">serializer3</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/serializer4">serializer4</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span></code><br/>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR1</span><span class="symbol">, </span><span class="identifier">PAR2</span><span class="symbol">, </span><span class="identifier">PAR3</span><span class="symbol">, </span><span class="identifier">PAR4</span><span class="symbol">, </span><span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/p1">p1</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/p2">p2</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/p3">p3</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/p4">p4</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/serializer1">serializer1</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/serializer2">serializer2</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/serializer3">serializer3</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function6((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)))/serializer4">serializer4</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code><br/>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR1</span><span class="symbol">, </span><span class="identifier">PAR2</span><span class="symbol">, </span><span class="identifier">PAR3</span><span class="symbol">, </span><span class="identifier">PAR4</span><span class="symbol">, </span><span class="identifier">PAR5</span><span class="symbol">, </span><span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR5"><span class="identifier">PAR5</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p1">p1</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p2">p2</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p3">p3</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p4">p4</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p5">p5</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR5"><span class="identifier">PAR5</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer1">serializer1</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer2">serializer2</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer3">serializer3</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer4">serializer4</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer5">serializer5</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR5"><span class="identifier">PAR5</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span></code><br/>
+<code><span class="keyword">fun </span><span class="symbol">&lt;</span><span class="identifier">PAR1</span><span class="symbol">, </span><span class="identifier">PAR2</span><span class="symbol">, </span><span class="identifier">PAR3</span><span class="symbol">, </span><span class="identifier">PAR4</span><span class="symbol">, </span><span class="identifier">PAR5</span><span class="symbol">, </span><span class="identifier">RET</span>&nbsp;<span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html"><span class="identifier">Any</span></a><span class="symbol">, </span><span class="identifier">T</span><span class="symbol">&gt;</span> <span class="identifier">call</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/function">function</span><span class="symbol">:</span>&nbsp;<a href="call.html#T"><span class="identifier">T</span></a><span class="symbol">.</span><span class="symbol">(</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">,</span>&nbsp;<a href="call.html#PAR5"><span class="identifier">PAR5</span></a><span class="symbol">,</span>&nbsp;<a href="../-request.html"><span class="identifier">Request</span></a><span class="symbol">?</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p1">p1</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p2">p2</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p3">p3</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p4">p4</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/p5">p5</span><span class="symbol">:</span>&nbsp;<a href="call.html#PAR5"><span class="identifier">PAR5</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer1">serializer1</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR1"><span class="identifier">PAR1</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer2">serializer2</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR2"><span class="identifier">PAR2</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer3">serializer3</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR3"><span class="identifier">PAR3</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer4">serializer4</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR4"><span class="identifier">PAR4</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.remote.RemoteAgent$call(kotlin.Function7((pl.treksoft.kvision.remote.RemoteAgent.call.T, pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, pl.treksoft.kvision.remote.Request, kotlinx.coroutines.experimental.Deferred((kotlin.collections.List((pl.treksoft.kvision.remote.RemoteAgent.call.RET)))))), pl.treksoft.kvision.remote.RemoteAgent.call.PAR1, pl.treksoft.kvision.remote.RemoteAgent.call.PAR2, pl.treksoft.kvision.remote.RemoteAgent.call.PAR3, pl.treksoft.kvision.remote.RemoteAgent.call.PAR4, pl.treksoft.kvision.remote.RemoteAgent.call.PAR5, kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR1)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR2)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR3)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR4)), kotlinx.serialization.KSerializer((pl.treksoft.kvision.remote.RemoteAgent.call.PAR5)))/serializer5">serializer5</span><span class="symbol">:</span>&nbsp;<span class="identifier">KSerializer</span><span class="symbol">&lt;</span><a href="call.html#PAR5"><span class="identifier">PAR5</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><span class="identifier">Deferred</span><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="call.html#RET"><span class="identifier">RET</span></a><span class="symbol">&gt;</span><span class="symbol">&gt;</span></code>
+<p>Executes defined call to a remote web service.</p>
+</td>
+</tr>
+</tbody>
+</table>
+</BODY>
+</HTML>
diff --git a/api/pl.treksoft.kvision.remote/-remote-agent/service-manager.html b/api/pl.treksoft.kvision.remote/-remote-agent/service-manager.html
new file mode 100644
index 00000000..00b9f66b
--- /dev/null
+++ b/api/pl.treksoft.kvision.remote/-remote-agent/service-manager.html
@@ -0,0 +1,14 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>RemoteAgent.serviceManager - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.remote</a>&nbsp;/&nbsp;<a href="index.html">RemoteAgent</a>&nbsp;/&nbsp;<a href="./service-manager.html">serviceManager</a><br/>
+<br/>
+<h1>serviceManager</h1>
+<a name="pl.treksoft.kvision.remote.RemoteAgent$serviceManager"></a>
+<code><span class="keyword">val </span><span class="identifier">serviceManager</span><span class="symbol">: </span><a href="../-service-manager/index.html"><span class="identifier">ServiceManager</span></a><span class="symbol">&lt;</span><a href="index.html#T"><span class="identifier">T</span></a><span class="symbol">&gt;</span></code>
+</BODY>
+</HTML>