anchor.diff:  	| #( APPL post_match_term post_match_term )
   	| #( TRNSF n=id )
   		{
  -            self.writeln("_args[%i] = self.%s(_args[%i])" % (self.argn, n, self.argn))
  +            self.writeln("_[%i] = self.%s(_[%i])" % (self.argn, n, self.argn))
               self.argn += 1
   		}
   	| a:ACTION
   		{
  -            self.writeln("_argn = %s " % self.argn)
  -            self.writeln("_args[%i] = %s" % (self.argn, #a.getText()))
  +            self.writeln("_n = %s " % self.argn)
  +            self.writeln("_[%i] = %s" % (self.argn, #a.getText()))
               self.argn += 1
   		}
   	| NIL
  
positive.code: 			{
                  self.writeln("try:")
                  self.indent()
                  self.writeln("_result = _target")
                  self.writeln("_args = []")
                  self.writeln("_kargs = __kargs.copy()")
  			}
  		( predicate )+
  		( INTO ( production )+ )?
  			{
                  self.writeln("return _result")
                  self.deindent()
                  self.writeln("except Failure:")
                  self.indent()
  
negative.code:                 self.writeln()
                  self.writeind()
                  
                  self.write("def %s(self, _t" % n)
                  self.declare_args(#args)
                  self.write("):")
                  self.writeeol()
                  self.indent()
                  self.writeln("_f = self.factory")
                  self.import_args(#args)
              }
  		( action )?
  