anchor.diff:  			{
                   self.writeln("try:")
                   self.indent()
  -                self.writeln("result = target")
  -                self.writeln("args = []")
  -                self.writeln("kargs = {}")
  +                self.writeln("_result = _target")
  +                self.writeln("_args = []")
  +                self.writeln("_kargs = {}")
   			}
   		( predicate )+
   		( INTO ( production )+ )?
   			{
  -                self.writeln("return result")
  +                self.writeln("return _result")
                   self.deindent()
                   self.writeln("except Failure:")
                   self.indent()
  
positive.code: 		{
              if flag:
                  pattern = self.stringify_term(#t)
                  self.writeln("result = self.factory.make(%r, *args, **kargs)" % pattern)
              else:
                  pattern = self.build_term(#t)
                  self.writeln("result = %s.make(*args, **kargs)" % pattern)
          }
  	;
  
  
negative.code: 	        }
  	| pattern=t:stringify_term
  	        {
                  self.writeln("if not self.factory.match(%r, _target, _args, _kargs):" % pattern)
                  self.indent()
                  self.writeln("raise Failure")
                  self.deindent()
                  if not self.is_static_term(#t):
                      self.argn = 0
                      self.post_match_term(#t)
                      self.writeln("_result = self.factory.make(%r, *_args, **_kargs)" % pattern)
  	        }
  	;
  
  