anchor.diff:        },
   
         _setExtraCode(code) {
  -        console.debug(`Setting extra ${code}`)
  -        this._getEditorExtra().value = code;
  +        if (this._getEditorExtra().value !== code) {
  +          console.debug(`Setting extra ${code}`)
  +          this._getEditorExtra().value = code;
  +          return true;
  +        }
  +        return false;
         },
   
         _getEditorExtra: function() {
  
positive.code:       _updateSolution() {
          console.debug("Updating solution");
          const blockly = this._getBlockly();
  
          if (this.teacherMode) {
            this._setExtraCode(blockly.workspaceXml);
          } else {
            this._setStudentSolution(blockly.workspaceXml);
          }
  
          // TODO: this hack enables Angular two-way binding for Bibliotheca. Should be replaced with Mumuki events system
  
negative.code:        * to user content in laboratory, and default content in bibliotheca
         */
        _setStudentSolution(code) {
          if (this._getStudentEditor().value !== code) {
            console.debug(`Setting student ${code}`)
            this._getStudentEditor().value = code;
            return true;
          }
          return false;
        },
  
        _getDefaultCode() {
  