def connect_inputs(self, datas):
start_pipers = self.get_inputs()<EOL>self.log.debug('<STR_LIT>' %(repr(self), repr(start_pipers)))<EOL>for piper, data in zip(start_pipers, datas):<EOL><INDENT>piper.connect([data])<EOL><DEDENT>self.log.debug('<STR_LIT>' % repr(self))<EOL>
Connects input ``Pipers`` to "datas" input data  in the correct order 
determined, by the ``Piper.ornament`` attribute and the ``Dagger._cmp`` 
function.

It is assumed that the input data is in the form of an iterator and
that all inputs have the same number of input items. A pipeline will
**deadlock** otherwise. 

Arguments:

  - datas (sequence of sequences) An ordered sequence of inputs for 
    all input ``Pipers``.