anchor.diff:              hatchLink.href = "${window.location.origin}${window.location.pathname}?${(doll as HatchableDoll).hatch().toDataUrlPart()}";
           }
   
  +        if(grubLink != null && doll is HomestuckTrollDoll) {
  +            HomestuckGrubDoll grub = makeGrub();
  +            grubLink.href = "${window.location.origin}${window.location.pathname}?${grub.toDataUrlPart()}" ;
  +        }
  +
   
           //don't add it to the queue if you're already messing around in it, dunkass. you'll never escape the loop.
           if(!inQueue) {
  
positive.code: 
  
      AnchorElement hatchLink;
  
      List<String> actionQueue = new List<String>();
      int actionQueueIndex = 0;
  
negative.code:             querySelector("#contents").append(redo);
              redo.onClick.listen((e) => redoFunction());
          }
      }
  
      HomestuckGrubDoll makeGrub() {
          HomestuckGrubDoll grub = new HomestuckGrubDoll();
          Doll.convertOneDollToAnother(doll, grub);
  
          grub.canonSymbol.imgNumber = 0;
          grub.symbol.imgNumber = 0;
          grub.pickCasteAppropriateBody();
          return grub;
      }
  
  
  