public bool Equals(Bool other) => this.value == other.value;
public static Bool IsDefined(this Bool input) => Undefined.IsDefined(input);
public int CompareTo(Bool other) => this.value - other.value;
public static Bool IsDefined(Bool input) => (Bool) !input.Equals(UndefinedBool);