anchor.diff:    int enumStatePlaying = 2;  //cards hidden, player can select
     int enumStateFinished = 3;  // Reveal all cards, show score, offer new game
     
  +  int previewState;
  +  
  +  int enumPreviewReady = 0;
  +  int enumPreviewGo = 1;
  +  int enumPreviewReveal = 2;
  +  
  +  int matchesLeft = 0;
  +  
     Game() {
       gameState = enumStateMenu;
     }
     
     // to be run whenever player says to start a new game
     void startGame() {
  -    //initialize all the cards
  +    //TODO initialize all the cards
       
       gameState = enumStatePreview;
  +    previewState = enumPreviewReady;
  +    var timer1 = gameLoop.addTimer((timer) => previewState = enumPreviewGo, 2.0);
  +    var timer2 = gameLoop.addTimer((timer) => previewState = enumPreviewReveal, 2.75);
  +    var timer3 = gameLoop.addTimer((timer) => startPlaying(), 6.75);
  +  }
  +  
  +  void startPlaying() {
  +    gameState = enumStatePlaying;
  +    currentTime.start();
     }
     
     void finishGame() {
       gameState = enumStateFinished;
  -    
  -    // pause the score timer 
  +    currentTime.stop();
     }
     
     void update(double dt) {
  
positive.code: class Game {
    int score =  0;
    int highScore = 0;
    StopWatch currentTime = new StopWatch();
    
    int gameState;
    
  
negative.code:         
          if (click && 
              x < 680 && x > 540 &&
              y < 90 && y > 50) {      
            if (score > highScore) {
              highScore = score;
            }
  