anchor.diff:      function mergeTablesAndVisualize() {
           var dt = mergeDataTables();
           if (dt) {
  -            var headerMap = getHeadersMap(dt);
  +            var headerMap = getHeaderMap(dt);
  +            var caseMap = getCaseMap(dt);
  +            
               var formatter = new google.visualization.PatternFormat(formatPatientLink('{0}'));
               formatter.format(dt, [0]);
               
  
positive.code:         return dt;
      }
      
      function getHeadersMap(dataTable) {
          var map = {};
          var cols = dataTable.getNumberOfColumns();
          for (var i=0; i<cols; i++) {
              map[dataTable.getColumnLabel(i)] = i;
          }
          return map;
      }
  
negative.code:         loadCnaFraction(caseIds);
      });
      
      function CaseSelectObserver() {
          this.funcs = {};
          this.caseId = null;
      }
      CaseSelectObserver.prototype = {
          subscribe: function(listener,func) {
              this.funcs[listener] = func;
              func.call(window,this.caseId);
          },
          fireSelection: function(caseId,source) {
              if (caseId == this.caseId) return;
              this.caseId = caseId;
              for (var listener in this.funcs) {
                  if (listener==source) continue;
                  var func = this.funcs[listener];
                  func.call(window,caseId);
              }
          }
      };
      var csObs = new CaseSelectObserver();
      
      function setupCaseSelect(caseIds) {
          var caseSelect = $('#case-select');
          for (var i=0; i<caseIds.length; i++) {
              caseSelect
                  .append($("<option></option>")
                  .attr("value",caseIds[i])
                  .attr("id",caseIds[i]+"_select")
                  .text(caseIds[i]));
          }
          csObs.subscribe('case-select',function(caseId){
              var op = caseId ? $("#"+caseId+"_select") : $("#null_case_select");
              op.attr("selected","selected");
          });
          caseSelect.change(function(e) {
              var caseId = $('#case-select  option:selected').attr('value');
              csObs.fireSelection(caseId,'case-select')
          });
      }
      
      var clincialDataTableWrapper = null;
  