anchor.diff:  }
   
   List<Doll> getXParents(int x) {
  +    print("getting $x parents");
       List<Doll> ret = new List<Doll>();
       List<Doll> tmp = new List<Doll>.from(players);
       for(int i = 0; i<x; i++) {
           Doll doll = rand.pickFrom(tmp);
  -        tmp.add(doll);
  +        //print("got $doll");
  +        ret.add(doll);
           tmp.remove(doll);
       }
       return ret;
   }
   
   Future<Null> drawBabies() async {
  +    int totalWidth = 800;
  +    int totalHeight = 800;
  +    CanvasElement section = new CanvasElement(width: totalWidth, height: totalHeight);
  +    childContainer.append(section);
  +    int x = 0;
  +    int y = 0;
  +    int width = 200;
  +    int height = 200;
  +    int padding = 0;
       for(Doll doll in currentCropChildren) {
  -        CanvasElement canvas = new CanvasElement(width: doll.width, height: doll.height);
  -        childContainer.append(canvas);
  -        DollRenderer.drawDoll(canvas, doll);
  -    }
  +        CanvasElement canvas = await drawDoll(doll, 200, 200);
  +        section.context2D.drawImage(canvas, x, y);
  +        x = (x + width + padding);
  +        if(x > totalWidth) {
  +            x = 0;
  +            y = (y + height + padding);
  +        }
  +
  +    }
  +
   }
   
   
  
positive.code: List<Doll> players = new List<Doll>();
  List<Doll> currentCropChildren = new List<Doll>();
  
  int numBabiesInCrop = 13;
  
  Random rand = new Random();
  
  
negative.code:         DollRenderer.drawDoll(parentCanvas, parent);
      });
  
      removeButton.onClick.listen((Event e) {
          players.remove(parent);
          div.remove();
      });
  
      div.append(ectoJar);
      div.append(loadButton);
      div.append(randomizeButton);
      div.append(randomizeTypeButton);
      div.append(removeButton);
  
      div.append(parentCanvas);
  
  
  