anchor.diff:  			   let ta <- matL.response.get();
   			   k1jm1 <= ta;
   			endaction
  -			matL.request.put(BRAMRequest{write: True, responseOnWrite: False, address: {0,jj}, datain: max(k0j,k1jm1)});
  +			action
  +			   let tmax = max(k0j,k1jm1);
  +			   $display("     L[%d][%d] = %d = max(%d, %d)", ii, jj, tmax, k0j, k1jm1);
  +			   matL.request.put(BRAMRequest{write: True, responseOnWrite: False, address: {0,jj}, datain: tmax});
  +			endaction
   		     endseq
   		  endseq
   	 endseq
  
positive.code: 		     aData <= ta;
  		     bData <= tb;
  		  endaction
  		  if (aData == bData)
  		     seq
  			matL.request.put(BRAMRequest{write: False, responseOnWrite: False, address: {1,jj-1}, datain: 0});
  			action
  			   let ta <- matL.response.get();
  			   matL.request.put(BRAMRequest{write: True, responseOnWrite: False, address: {0,jj}, datain: ta + 1});
  			endaction
  		     endseq
  
negative.code:       /* Loop through string a */
        for (ii <= 1; ii <= aLenReg; ii <= ii + 1)
  	 seq
  	    $display("hirschB ii = %d", ii);
  	    /* Copy L[1] to L[0].  could pingpong instead, or unroll loop */
  	    /* L[1] is stored in matL[0] and L[0] is stored in matL[1] so that the result is in the right place at the end */
  	    for (jj <= 0; jj <= bLenReg; jj <= jj + 1)
  	       seq
  		  matL.request.put(BRAMRequest{write: False, responseOnWrite: False, address: {0,jj}, datain: 0});
  