anchor.diff:    
     Piece(this.id);
     
  -  PieceShape pieceShape(int index) {
  -    switch(index) {
  -      case 0: return PieceShape.CIRCLE;
  -      case 1: return PieceShape.LINE;
  -      case 2: return PieceShape.RECTANGLE;
  -      case 3: return PieceShape.SQUARE;
  -      case 4: return PieceShape.TAG;
  -    }
  -    return null;
  -  }
  -  
     fromJsonMap(Map<String, Object> jsonMap) {
       id  = jsonMap['id'];
  -    index = jsonMap['index'];
  -    shape = pieceShape(index);
  +    shape = PieceShape.values[jsonMap['index']];
       x = jsonMap['x'];
       y = jsonMap['y'];
       width = jsonMap['width'];
  
positive.code:   fromJsonMap(Map<String, Object> jsonMap) {
      super.fromJsonMap(jsonMap);
      distanceHeight = jsonMap['distanceHeight'];
      index = jsonMap['index'];
      shape = pieceShape(index);
      toReappear = jsonMap['toReappear'];
      dy = jsonMap['dy'];
    }
  
negative.code:   static const String defaultCode = '#000000';
   
    int id;
    PieceShape shape = defaultShape;
    num x = 0;
    num y = 0;
  