anchor.diff:      return ((other.x == x) && (other.y == y));
     }
   
  -  void render(CanvasRenderingContext2D crc) {
  -    crc.fillStyle = "#FFFFFF";
  +  void render(CanvasRenderingContext2D crc, color) {
  +    crc.fillStyle = color;
       crc.fillRect(width * x, height * y, width, height);
     }
   }
  
positive.code:     canvas.strokeText("Inside snake pen", 0, 100);
  
      canvas.fillRect(0, 0, 20, 20);
      snake.render(canvas);
    }
  
  
negative.code: num tailIncreaseInterval = 5000;
  
  
  
  class Gold {
    Random rnd;
    Coord location;
    Snake snake;
    num points = 5;
  
    Gold(final Snake s) {
      this.snake = s;
      this.rnd = new Random();
      setNewLocation();
    }
  
    /**
       * Show the gold
       */
    void show() {
      location.paint("#FFD700");
    }
  
    void render(CanvasRenderingContext2D crc) {
      location.render(crc, "#FFD700");
    }
  
    /**
       * Set the location to a random point within the
       * canvas, but not anywhere on the snake.
       */
    void setNewLocation() {
      Coord newLoc;
      do {
        newLoc = new Coord(rnd.nextInt(snake.cowidth), rnd.nextInt(snake.coheight)
            );
      } while (snake.containsCoord(newLoc));
      location = newLoc;
    }
  
    void gameAction() {
      if (location.equals(snake.head())) {
        snake.addPoints(points + snake.length());
        setNewLocation();
      }
    }
  }
  
  
  class Coord {
    String name;
    int x;
  