SubSolution<N> sSolution = solution.getSolution();
// conditional node
if(sSolution instanceof PipQuast){
PipQuast<N> __quast = (PipQuast<N>)sSolution;
Expression ineq = PipVectorToExpression(__quast.getCondition(), __params, __new_param);
Condition __cond = new Condition(new Inequation(ineq.GetLeftChild(), Inequation.Predicate.FADA_GREATER_EQ, ineq.GetRightChild()));
log.trace("Cond: " + __cond);
return new Quast(__cond,
FromPipQuast(__index, __deep, __counters, __params, __quast.getThen(), __new_param),
FromPipQuast(__index, __deep, __counters, __params, __quast.getElse(), __new_param));
} else if(sSolution instanceof PipList){ // leaf