anchor.diff:    }
   
     void animate(double elapsed) {
  -    for (ShaderProgram prg in _programs.values) {
  +    for (ShaderProgram prg in _programs) {
         prg.animate(elapsed);
       }
     }
  
positive.code: 
  class RenderingPhase {
    final WEBGL.RenderingContext _gl;
    final ChronosFramebuffer _framebuffer;
    Map<String, ShaderProgram> _programs = new Map<String, ShaderProgram>();
    Matrix4 _pMatrix = new Matrix4();
    bool clearBuffer = true;
    final bool _usePerspectiveMatrix;
  
    RenderingPhase(this._gl, this._framebuffer, this._usePerspectiveMatrix);
  
    void draw(PerspectiveParams perspar, LightParams lightpar, Camera camera) {
      if (_framebuffer == null) {
        _gl.bindFramebuffer(WEBGL.FRAMEBUFFER, null);
  
negative.code:       _gl.clear(WEBGL.COLOR_BUFFER_BIT | WEBGL.DEPTH_BUFFER_BIT);
      }
  
      for (ShaderProgram prg in _programs) {
        prg.draw(perspar, lightpar, camera, _pMatrix);
      }
    }
  
    void AddShaderProgram(ShaderProgram s) {
      _programs.add(s);
    }
  
    ShaderProgram createProgram(List<ShaderObject> so) {
  