anchor.diff:        ystep <= cfg.ystep;
         xlimit <= cfg.xlimit;
         ylimit <= cfg.ylimit;
  -   endmethod
  +      isFirstReg <= True;
  +      isLastReg <= (cfg.xbase+cfg.xstep) > cfg.xlimit && (cfg.ybase+cfg.ystep) > cfg.ylimit;
  +   endmethod
  +   method Bool isFirst(); return isFirstReg; endmethod
  +   method Bool isLast(); return isLastReg; endmethod
      method Action display();
         $display("XYRangePipe x=%d xlimit=%d y=%d ylimit=%d xstep=%d ystep=%d", x, xlimit, xstep, y, ylimit, ystep);
      endmethod
  
positive.code: 
  interface XYRangePipeIfc#(type a);
     interface PipeOut#(Tuple2#(a,a)) pipe;
     method Action start(XYRangeConfig#(a) cfg);
     method Action display();
  endinterface
  
negative.code:    Reg#(a) xlimit <- mkReg(0);
     Reg#(a) ylimit <- mkReg(0);
     
     Reg#(Bool) isFirstReg <- mkReg(False);
     Reg#(Bool) isLastReg <- mkReg(False);
  
     let guard = x < xlimit && y < ylimit;
     
     interface PipeOut pipe;
  