code: public Map<String, Value> asMap() {
      checkState(operation != Op.DELETE, "asMap() cannot be called for a DELETE mutation");
      LinkedHashMap<String, Value> map = new LinkedHashMap<>();
      for (int i = 0; i < columns.size(); ++i) {
        Value existing = map.put(columns.get(i), values.get(i));
      }
      return Collections.unmodifiableMap(map);
    }
docs: For all types except {@link Op#DELETE}, constructs a map from column name to value. This is
  mainly intended as a convenience for testing; direct access via {@link #getColumns()} and
  {@link #getValues()} is more efficient.
  
  @throws IllegalStateException if {@code operation() == Op.DELETE}, or if any duplicate columns
  are present. Detection of duplicates does not consider case.