default(parisize,"60M")
isprime(5368962301599408606279497323618896374219)
isprime(4309513411435775833571)
isprime(26959946667150639794667015087019630673557916260026308143510066298881)

p=10^6+3; q=10^6+33;
isprime(1+24*p*q, 1)
\\ isprime(1+232*p^2*q^3, 1) /* need N-1 + ECPP */

isprime([2,3,4])
isprime([2,3,4],1)
isprime([2,3,4],2)
isprime([2,3,4],3)
ispseudoprime([1,3,4,5],2)
\\isprime(2^3515+159, 2) 10 min
\\isprime(2^2000+841, 2) 1 min
\\isprime(2^1600+895, 2) 27s
isprime(2^1000+297, 2)
p=2^256+5721;
isprime(p)
addprimes([38430950967054905712282083,237470764391881188851670682297783,1029859]);
isprime(p,1)
setrand(1); c=primecert(p);apply(x->x[1],c)
primecertisvalid(c)
c[1][1]++; primecertisvalid(c)
c=primecert(p,1)
primecertisvalid(c)
c[2][4][1]++; primecertisvalid(c)

isprime(18446744073709551557, 3)
isprime(437256732647720373392867051041, 3)
isprime(10^472+69169)

split(s)=
{
  my(V=Vec(s),L=List(),a=1);
  for(i=1,#V,
    if(V[i]=="\n",
      listput(L,concat(V[a..i]));
      a=i+1));
  Vec(L);
}

primecert(1)
primecert(2)
primecert(18446744073709551557);
primecert(18446744073709551629);
primecertisvalid(primecert(18446744073709551557))
primecertisvalid(primecert(18446744073709551629))
cert = [[100000000000000000000000000000000069, 546867911035452074, 2963504668391148, 0, [33871007718198692871763537900223244, 37634983931409678910567952612637528]], [33743830764501150277, -11610830419, 734208843, 0, [16662256621764551072, 717141744113721531]]];
primecertexport(cert)
primecertexport(cert,2)
concat(split(primecertexport(cert,1))[^6])
primecert(104847485105117585996751891729845662843364912851385667939830682169316283979217507303783276087270751367988006094556790411454173939259895051951577787259);
primecertisvalid(primecert(16285004170961712447000975451705488808641461042245717587564868626116060638362995676584291019647333487131164585910692526519723394628478390124381641415798852319473605083279694798821564187404325769317838108581838244806431287065930206020985599594140650596158360451027455871094479408389113611410568437054557))

\\ Errors, keep at end of file
primecertexport([0],1)
primecertexport([],1)
