var n_ND = (number) => {
var n = 0n;
for (var i = 1n; n < number; i++)
if (i % 2n && !i.toString(2).includes("00"))
n++;
return i - 1n;
};
var r_ND = (number) => {
var ND = n_ND(number).toString(2);
var a = Rational();
var b = Rational();
for (var i = 0; i < ND.length; i++)
[a, b] = ND[i] == "0" ? [a.add(1).multiply(3).add(-1), b.multiply(3).add(1)] : [a.add(-1).divide(2), b.divide(2)];
return b.multiply(-1).divide(a);
};