anchor.diff:      var color = colorMapper[entity];
       var hb = hbMapper[entity];
   
  -    var beat = 60000 / hb.frequency;
  +    var beat = 60 / hb.frequency;
       var mod = 0.01;
       var red = color.red;
       var green = color.green;
  
positive.code:     if (heartbeatMod > 0.8 * beat) {
        radius = radius + (1000 * heartbeatMod / beat - 800) * mod;
      }
  
      sizes[index] = radius * 2;
  
      positions[index * 2] = position.x;
      positions[index * 2 + 1] = position.y;
  
      colors[index * 4] = red;
      colors[index * 4 + 1] = green;
      colors[index * 4 + 2] = blue;
      colors[index * 4 + 3] = color.alpha;
    }
  
  
    @override
    void render(int length) {
      buffer('a_Size', sizes, 1);
      buffer('a_Position', positions, 2);
      buffer('a_Color', colors, 4);
  
  
negative.code:     var uModelMatrix = gl.getUniformLocation(program, 'uModelMatrix');
      gl.uniformMatrix4fv(uModelMatrix, false, modelMatrix.storage);
  
      gl.drawArrays(RenderingContext.TRIANGLES, 0, length * maxTriangles * vertices);
    }
  
    @override
    void updateLength(int length) {
      positions = new Float32List(length * 2 * maxTriangles * vertices);
      colors = new Float32List(length * 4 * maxTriangles * vertices);
    }
  
    @override
    String get vShaderSource => '''
  uniform mat4 uModelMatrix;
  attribute vec2 a_Position;
  attribute vec4 a_Color;
  varying vec4 v_Color;
  void main() {
    gl_Position = uModelMatrix * vec4(a_Position.x / 400.0 - 1.0, -(a_Position.y / 300.0 - 1.0), 0.0, 1.0);
    v_Color = a_Color;
  }
  ''';
  