code: function replaceThenMergeAnnotations(annos, nannos) {
    var rannos = (annos || []).splice(0);
    var nanno, n, a, anno;
    // Iterate through annos, comparing one nanno at a time. if it's the same and the user doesn't need validation, replace anno with nano.
    for (a = 0; a < rannos.length; a++) {
      anno = rannos[a];
      for (n = nannos.length - 1; n > -1; n--) {
        nanno = nannos[n];
        if (anno.flattened === nanno.flattened) {
          var nuser = GLOBAL.svc.auth.getUserByUsername(nanno.annotatedBy);
          if (!nuser.needsValidation) {
            rannos[a] = nanno;
          }
          nannos.splice(n, 1);
        }
      }
    }
    return rannos.concat(nannos);
  }
docs: replace current annos with new then add remainder only users with needsValidation === false can overwrite annos