@Override
  public boolean equalsByReference(@NotNull KeyFMap o) {
    if (this == o) return true;
    if (!(o instanceof ArrayBackedFMap)) return false;

    ArrayBackedFMap map = (ArrayBackedFMap)o;
    if (map.size() != size()) return false;

    int length = keys.length;
    for (int i = 0; i < length; i++) {
      if (keys[i] != map.keys[i] || values[i] != map.values[i]) return false;
    }
    return true;
  }
@Override
  public boolean equalsByReference(@NotNull KeyFMap o)