@NotNull
  @Override
  public DfType join(@NotNull DfType other) {
    if (other.equals(this)) return this;
    if (other instanceof DfBooleanType) return DfTypes.BOOLEAN;
    return DfType.TOP;
  }
@NotNull
  @Override
  public DfType join(@NotNull DfType other)