Error while trying to run IDL.encode on values around 1.8×10^308 or larger

What type of topic is this?
Bug Report

I am having some problems encoding large bigints

This works

IDL.encode(
    [IDL.Nat],
    [
        170_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000n
    ]
);

But this breaks

IDL.encode(
    [IDL.Nat],
    [
        180_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000_000n
    ]
);

with the following error:

RangeError: Invalid array buffer length
        at new ArrayBuffer (<anonymous>)

      at lebEncode (../../../node_modules/@dfinity/candid/src/utils/leb128.ts:54:25)
      at NatClass.encodeValue (../../../node_modules/@dfinity/candid/src/idl.ts:552:21)
      at ../../../node_modules/@dfinity/candid/src/idl.ts:1575:16
      at ../../../node_modules/@dfinity/candid/src/idl.ts:50:27
          at Array.map (<anonymous>)
      at zipWith (../../../node_modules/@dfinity/candid/src/idl.ts:50:13)
      at Object.encode (../../../node_modules/@dfinity/candid/src/idl.ts:1567:8)

Looks like a potential issue with max size(?) of an ArrayBuffer