anchor.diff:  import 'dart:math';
   
   const int CELL_SIZE = 10;
  +
   void main() {
     new Game(querySelector('#canvas')..focus())..run();
  -}
  -
  -void drawCell(CanvasRenderingContext2D ctx, Point coords, String color) {
  -  ctx..fillStyle = color
  -    ..strokeStyle = "white";
  -
  -  final int x = coords.x * CELL_SIZE;
  -  final int y = coords.y * CELL_SIZE;
  -
  -  ctx..fillRect(x, y, CELL_SIZE, CELL_SIZE)
  -    ..strokeRect(x, y, CELL_SIZE, CELL_SIZE);
   }
   
   class Game {
  
positive.code:   static const int START_LENGTH = 6;
  
    List<Point> _body = [];   // coordinates of the body segments
    Point _dir = RIGHT;   // current travel direction
  
    Snake() {
      int i = START_LENGTH - 1;
  
negative.code:     }
    }
  
    void run() {
      window.animationFrame.then(update);
    }
  
    void update(num delta) {
      final num diff = delta - _lastTimestamp;
  
      if (diff > GAME_SPEED) {
        _lastTimestamp = delta;
        _clear();
        drawCell(_ctx, _food, "blue");
        _snake.update(_ctx, _keyboard);
        _checkForCollisions();
  