@comm_guard(dict, dict)
def unify_walk(d1, d2, U):
 for (k1, v1) in iteritems(d1):
  if (k1 in d2):
   U = unify_walk(v1, d2[k1], U)
   if (U is False):
    return False
 return U

@ comm_guard ( dict , dict ) def unify_walk ( d1 , d2 , U ) : for ( k1 , v1 ) in iteritems ( d1 ) : if ( k1 in d2 ) : U = unify_walk ( v1 , d2 [ k1 ] , U ) if ( U is False ) : return False return U
nv == nv == nv(union) .