def _annotated_unpack_infer(stmt, context=None):
 if isinstance(stmt, (List, Tuple)):
  for elt in stmt.elts:
   inferred = safe_infer(elt)
   if (inferred and (inferred is not YES)):
    (yield (elt, inferred))
  return
 for infered in stmt.infer(context):
  if (infered is YES):
   continue
  (yield (stmt, infered))

def _annotated_unpack_infer ( stmt , context = None ) : if isinstance ( stmt , ( List , Tuple ) ) : for elt in stmt . elts : inferred = safe_infer ( elt ) if ( inferred and ( inferred is not YES ) ) : ( yield ( elt , inferred ) ) return for infered in stmt . infer ( context ) : if ( infered is YES ) : continue ( yield ( stmt , infered ) )
recursively generate nodes inferred by the given statement .