def children_after_parents(self, piper1, piper2):
if piper1 in self[piper2].deep_nodes():<EOL><INDENT>return <NUM_LIT:1><EOL><DEDENT>elif piper2 in self[piper1].deep_nodes():<EOL><INDENT>return - <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>return <NUM_LIT:0><EOL><DEDENT>
Custom compare function. Returns ``1`` if the first ``Piper`` instance 
is upstream of the second ``Piper`` instance, ``-1`` if the first 
``Piper`` is downstream of the second ``Piper`` and ``0`` if the two 
``Pipers`` are independent.

Arguments:

  - piper1(``Piper``) ``Piper`` instance.
  - piper2(``Piper``) ``Piper`` instance.