I have a function and two convenience functions, like this:<br><br>    @defer.inlineCallbacks<br>    def round_value_and_percent(id, value, percent):<br>            daily = 1.<br><br>            params = dict(nutidin=id, valuein=value, dvin=daily)<br>

            query = &quot;ROUND_NUT_DV&quot;<br>            q_result = yield named_query_param(ctx, &quot;nut&quot;, query, params)   // db query<br>            rounded = {}<br>            rounded[&quot;value&quot;] = q_result[0][0]<br>

            rounded[&quot;percent&quot;] = q_result[0][1]<br>            defer.returnValue((rounded[&#39;value&#39;], rounded[&#39;percent&#39;]))<br>            <br>    @defer.inlineCallbacks<br>    def round_val(id, value, rule):<br>

        &quot;&quot;&quot;<br>        Return first element of round_value_and_percent<br>        &quot;&quot;&quot;<br>        defer.returnValue(round_value_and_percent(id, value, 0, rule)[0])<br><br>        <br>    @defer.inlineCallbacks<br>

    def round_per(id, percent, rule):<br>        &quot;&quot;&quot;<br>        Return second element of round_value_and_percent.<br>        &quot;&quot;&quot;<br>        defer.returnValue(round_value_and_percent(id, 0, percent, rule)[1])<br>

<br>When I do:<br>result = yield round_val(1, 2, 3)<br><br>I get this: Deferred instance has no attribute &#39;__getitem__&#39;<br><br>Clues appreciated!<br>Ken<br><br>