text: assertEquals(BigInteger._construct([], 1).toString(), "0");
  assertEquals(BigInteger(-1).toString(), "-1");
  assertEquals(BigInteger(-123).toString(), "-123");
  assertEquals(BigInteger(456).toString(), "456");
  assertEquals(BigInteger("+42").toString(), "42");
  assertEquals(BigInteger("23x10^5").toString(), "2300000");
  assertEquals(BigInteger("342.5 x 10 ^ -2").toString(), "3");
  assertEquals(BigInteger("-23x10^5").toString(), "-2300000");
  assertEquals(BigInteger("-3425 x 10 ^ -2").toString(), "-34");
  assertEquals(BigInteger("23.45x10^5").toString(), "2345000");
  assertEquals(BigInteger("3425e-12").toString(), "0");
  assertEquals(BigInteger("-3425e8").toString(), "-342500000000");
  assertEquals(BigInteger("+3425e0").toString(10).toString(), "3425");
  assertEquals(BigInteger("0xDeadBeef").toString(16).toString(), "DEADBEEF");
  assertEquals(BigInteger("-0c715").toString(8).toString(), "-715");
  assertEquals(BigInteger("+0b1101").toString(2).toString(), "1101");
  assertEquals(BigInteger.parse("+42", 5).toString(10).toString(), "22");
  assertEquals(BigInteger.parse("+42", 5).toString(5).toString(), "42");
  assertEquals(BigInteger.parse("12abz", 36).toString(36).toString(), "12ABZ");
  assertEquals(BigInteger.parse("-0c715").toString(), "-461");
  assertEquals(BigInteger('-1').toString(), '-1');
  assertEquals(BigInteger('-10').toString(), '-10');
  assertEquals(BigInteger('-10382920172764259631161291566832110498728571665273468869392943465294841471140482060286063576379366322132921666926978663170724525373317846').toString(), '-10382920172764259631161291566832110498728571665273468869392943465294841471140482060286063576379366322132921666926978663170724525373317846');
  assertEquals(BigInteger('-11').toString(), '-11');
  assertEquals(BigInteger('-1172290517283489544939406852089205386178936311839198780769751961843').toString(), '-1172290517283489544939406852089205386178936311839198780769751961843');
  assertEquals(BigInteger('-12').toString(), '-12');
  assertEquals(BigInteger('-1837136452135876595090550153572873896770651284584639295180294340451197182366215393646776507208945963806918500036871565004942392689').toString(), '-1837136452135876595090550153572873896770651284584639295180294340451197182366215393646776507208945963806918500036871565004942392689');
  assertEquals(BigInteger('-2').toString(), '-2');
  assertEquals(BigInteger('-22500337651075').toString(), '-22500337651075');
  assertEquals(BigInteger('-3').toString(), '-3');
  assertEquals(BigInteger('-3637207813391075449499802309344516805263882000874223693582254353805168176127378').toString(), '-3637207813391075449499802309344516805263882000874223693582254353805168176127378');
  assertEquals(BigInteger('-386177060206595181').toString(), '-386177060206595181');
  assertEquals(BigInteger('-4').toString(), '-4');
  assertEquals(BigInteger('-4058609845030255322787927324697291767462212839343543404480173027642001084243712955124167160014073282561256047537514271126812692432828445').toString(), '-4058609845030255322787927324697291767462212839343543404480173027642001084243712955124167160014073282561256047537514271126812692432828445');
  assertEquals(BigInteger('-48414711404820602860').toString(), '-48414711404820602860');
  assertEquals(BigInteger('-5').toString(), '-5');
  assertEquals(BigInteger('-517283489544939406').toString(), '-517283489544939406');
  assertEquals(BigInteger('-5253733178').toString(), '-5253733178');
  assertEquals(BigInteger('-56476027754399235337367077671129335454475297890272086473917042777774357035192523962600412743390371480817482968845011802503481654919628674396676679172793008943130').toString(), '-56476027754399235337367077671129335454475297890272086473917042777774357035192523962600412743390371480817482968845011802503481654919628674396676679172793008943130');
  assertEquals(BigInteger('-6').toString(), '-6');
  assertEquals(BigInteger('-6200332365770319240482082941470115079599077007166534745743189064').toString(), '-6200332365770319240482082941470115079599077007166534745743189064');
  assertEquals(BigInteger('-62830174493130245841622500337651075078551735130057577990903380908177068729572036547874980598308615836957947097531639434378385662007612195835738520240851492479820084794237').toString(), '-62830174493130245841622500337651075078551735130057577990903380908177068729572036547874980598308615836957947097531639434378385662007612195835738520240851492479820084794237');
  assertEquals(BigInteger('-7').toString(), '-7');
  assertEquals(BigInteger('-8').toString(), '-8');
  assertEquals(BigInteger('-81476721982').toString(), '-81476721982');
  assertEquals(BigInteger('-8551735130057577').toString(), '-8551735130057577');
  assertEquals(BigInteger('-9').toString(), '-9');
  assertEquals(BigInteger('-92641540038838004562939772').toString(), '-92641540038838004562939772');
  assertEquals(BigInteger('-99608').toString(), '-99608');
  assertEquals(BigInteger('-999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999').toString(), '-999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999');
  assertEquals(BigInteger('0').toString(), '0');
  assertEquals(BigInteger('1').toString(), '1');
  assertEquals(BigInteger('10').toString(), '10');
  assertEquals(BigInteger('100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001').toString(), '100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001');
  assertEquals(BigInteger('10666593355947573327272706917131734751210128203987445873731').toString(), '10666593355947573327272706917131734751210128203987445873731');
  assertEquals(BigInteger('1069098453').toString(), '1069098453');
  assertEquals(BigInteger('1157088278178259580357648900890859241864806376958863839397325291381770958183861770602065951818156880455074305').toString(), '1157088278178259580357648900890859241864806376958863839397325291381770958183861770602065951818156880455074305');
  assertEquals(BigInteger('13024584').toString(), '13024584');
  assertEquals(BigInteger('1674508628301744').toString(), '1674508628301744');
  assertEquals(BigInteger('186584847831855051371620112806257408623512415396284950662844187803996672517802144153048620046442071246772010940398135071352737249628365452884576153529405652404446967865012969').toString(), '186584847831855051371620112806257408623512415396284950662844187803996672517802144153048620046442071246772010940398135071352737249628365452884576153529405652404446967865012969');
  assertEquals(BigInteger('19618436088').toString(), '19618436088');
  assertEquals(BigInteger('2').toString(), '2');
  assertEquals(BigInteger('2006543443808700').toString(), '2006543443808700');
  assertEquals(BigInteger('2036547874980598').toString(), '2036547874980598');
  assertEquals(BigInteger('20892053861').toString(), '20892053861');
  assertEquals(BigInteger('22132921').toString(), '22132921');
  assertEquals(BigInteger('259580357648900890').toString(), '259580357648900890');
  assertEquals(BigInteger('277460220803170133683867392965292283112343804101723022926366400443977002252439890142191924145722').toString(), '277460220803170133683867392965292283112343804101723022926366400443977002252439890142191924145722');
  assertEquals(BigInteger('281730631083492345939880995488156886227560025405478318560679548823005924860027080130180488567341041504647761475086105739806209157598562028').toString(), '281730631083492345939880995488156886227560025405478318560679548823005924860027080130180488567341041504647761475086105739806209157598562028');
  assertEquals(BigInteger('291381770958').toString(), '291381770958');
  assertEquals(BigInteger('29345943771049638448341763000882111422888869776329135051738765553372901428808277728681262509298083850142596121922395107683607562149684613672741812462867438468129481833454428891').toString(), '29345943771049638448341763000882111422888869776329135051738765553372901428808277728681262509298083850142596121922395107683607562149684613672741812462867438468129481833454428891');
  assertEquals(BigInteger('3').toString(), '3');
  assertEquals(BigInteger('30514941987010').toString(), '30514941987010');
  assertEquals(BigInteger('331582054172310013635181905646204661989171235666401937872152206243737362946').toString(), '331582054172310013635181905646204661989171235666401937872152206243737362946');
  assertEquals(BigInteger('37002422595522161032086725924934617976428107255803333508613776941553061663685318873827666814514069881821456625761423079496362499025456096895').toString(), '37002422595522161032086725924934617976428107255803333508613776941553061663685318873827666814514069881821456625761423079496362499025456096895');
  assertEquals(BigInteger('3878182266978880305749543422914777569229636428599764504429913656112581921875376162093486587388727').toString(), '3878182266978880305749543422914777569229636428599764504429913656112581921875376162093486587388727');
  assertEquals(BigInteger('398515777680123136680192434809946769445426177827640125940511670935').toString(), '398515777680123136680192434809946769445426177827640125940511670935');
  assertEquals(BigInteger('4').toString(), '4');
  assertEquals(BigInteger('4227224306971170988716827185870519579782234150611831494926052243428192243517312221765490067054576722892784347440519').toString(), '4227224306971170988716827185870519579782234150611831494926052243428192243517312221765490067054576722892784347440519');
  assertEquals(BigInteger('45').toString(), '45');
  assertEquals(BigInteger('455488708838288456390976738').toString(), '455488708838288456390976738');
  assertEquals(BigInteger('457069814657032').toString(), '457069814657032');
  assertEquals(BigInteger('49322023916480219931134361554779109184328608328288970393765456338166453156711394763089925921351717462304949844030257888954892465078891795224360276323254119437225715082044426').toString(), '49322023916480219931134361554779109184328608328288970393765456338166453156711394763089925921351717462304949844030257888954892465078891795224360276323254119437225715082044426');
  assertEquals(BigInteger('5').toString(), '5');
  assertEquals(BigInteger('5084968096321475').toString(), '5084968096321475');
  assertEquals(BigInteger('55').toString(), '55');
  assertEquals(BigInteger('568').toString(), '568');
  assertEquals(BigInteger('57637936').toString(), '57637936');
  assertEquals(BigInteger('5836').toString(), '5836');
  assertEquals(BigInteger('59884393257606720065434438087005410690984535879799964926170716775084968096321475304418452574570698146570322630514941987010240775').toString(), '59884393257606720065434438087005410690984535879799964926170716775084968096321475304418452574570698146570322630514941987010240775');
  assertEquals(BigInteger('6').toString(), '6');
  assertEquals(BigInteger('60806103829201727642').toString(), '60806103829201727642');
  assertEquals(BigInteger('609675204133978287633625528598941105000580436935869275085195396511118657').toString(), '609675204133978287633625528598941105000580436935869275085195396511118657');
  assertEquals(BigInteger('6210519985880524850605465904155380215027236600816531155434179432768928168336607689660372950027916871196753780651842392').toString(), '6210519985880524850605465904155380215027236600816531155434179432768928168336607689660372950027916871196753780651842392');
  assertEquals(BigInteger('6311612915668321104').toString(), '6311612915668321104');
  assertEquals(BigInteger('69269786631707').toString(), '69269786631707');
  assertEquals(BigInteger('7').toString(), '7');
  assertEquals(BigInteger('72857166527346886').toString(), '72857166527346886');
  assertEquals(BigInteger('74').toString(), '74');
  assertEquals(BigInteger('741726877267167619973325056129665793788090097446918345851946144674659150945563383288173470555019454324813728624538707250061357818563470553275478682986167042300023900431181658126').toString(), '741726877267167619973325056129665793788090097446918345851946144674659150945563383288173470555019454324813728624538707250061357818563470553275478682986167042300023900431181658126');
  assertEquals(BigInteger('775231172').toString(), '775231172');
  assertEquals(BigInteger('7788756649308352170040978424345039101369279128462').toString(), '7788756649308352170040978424345039101369279128462');
  assertEquals(BigInteger('78716745').toString(), '78716745');
  assertEquals(BigInteger('79799964926170716').toString(), '79799964926170716');
  assertEquals(BigInteger('8').toString(), '8');
  assertEquals(BigInteger('8452').toString(), '8452');
  assertEquals(BigInteger('88').toString(), '88');
  assertEquals(BigInteger('9').toString(), '9');
  assertEquals(BigInteger('903380908177068729').toString(), '903380908177068729');
  assertEquals(BigInteger('92418648063').toString(), '92418648063');
  assertEquals(BigInteger('92943465').toString(), '92943465');
  assertEquals(BigInteger('9296774590944767474820600872642800769619683318924936104009986193324803815411614362179498856768115670315738686032176477835121223726227113448428529006128447204').toString(), '9296774590944767474820600872642800769619683318924936104009986193324803815411614362179498856768115670315738686032176477835121223726227113448428529006128447204');
  assertEquals(BigInteger('936311839198780769').toString(), '936311839198780769');
  assertEquals(BigInteger('9511570882781').toString(), '9511570882781');
  assertEquals(BigInteger('9588638393973').toString(), '9588638393973');
  assertEquals(BigInteger('988439325760').toString(), '988439325760');
  assertEquals(BigInteger('999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999').toString(), '999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999');