| | """ |
| | The function zetazero(n) computes the n-th nontrivial zero of zeta(s). |
| | |
| | The general strategy is to locate a block of Gram intervals B where we |
| | know exactly the number of zeros contained and which of those zeros |
| | is that which we search. |
| | |
| | If n <= 400 000 000 we know exactly the Rosser exceptions, contained |
| | in a list in this file. Hence for n<=400 000 000 we simply |
| | look at these list of exceptions. If our zero is implicated in one of |
| | these exceptions we have our block B. In other case we simply locate |
| | the good Rosser block containing our zero. |
| | |
| | For n > 400 000 000 we apply the method of Turing, as complemented by |
| | Lehman, Brent and Trudgian to find a suitable B. |
| | """ |
| |
|
| | from .functions import defun, defun_wrapped |
| |
|
| | def find_rosser_block_zero(ctx, n): |
| | """for n<400 000 000 determines a block were one find our zero""" |
| | for k in range(len(_ROSSER_EXCEPTIONS)//2): |
| | a=_ROSSER_EXCEPTIONS[2*k][0] |
| | b=_ROSSER_EXCEPTIONS[2*k][1] |
| | if ((a<= n-2) and (n-1 <= b)): |
| | t0 = ctx.grampoint(a) |
| | t1 = ctx.grampoint(b) |
| | v0 = ctx._fp.siegelz(t0) |
| | v1 = ctx._fp.siegelz(t1) |
| | my_zero_number = n-a-1 |
| | zero_number_block = b-a |
| | pattern = _ROSSER_EXCEPTIONS[2*k+1] |
| | return (my_zero_number, [a,b], [t0,t1], [v0,v1]) |
| | k = n-2 |
| | t,v,b = compute_triple_tvb(ctx, k) |
| | T = [t] |
| | V = [v] |
| | while b < 0: |
| | k -= 1 |
| | t,v,b = compute_triple_tvb(ctx, k) |
| | T.insert(0,t) |
| | V.insert(0,v) |
| | my_zero_number = n-k-1 |
| | m = n-1 |
| | t,v,b = compute_triple_tvb(ctx, m) |
| | T.append(t) |
| | V.append(v) |
| | while b < 0: |
| | m += 1 |
| | t,v,b = compute_triple_tvb(ctx, m) |
| | T.append(t) |
| | V.append(v) |
| | return (my_zero_number, [k,m], T, V) |
| |
|
| | def wpzeros(t): |
| | """Precision needed to compute higher zeros""" |
| | wp = 53 |
| | if t > 3*10**8: |
| | wp = 63 |
| | if t > 10**11: |
| | wp = 70 |
| | if t > 10**14: |
| | wp = 83 |
| | return wp |
| |
|
| | def separate_zeros_in_block(ctx, zero_number_block, T, V, limitloop=None, |
| | fp_tolerance=None): |
| | """Separate the zeros contained in the block T, limitloop |
| | determines how long one must search""" |
| | if limitloop is None: |
| | limitloop = ctx.inf |
| | loopnumber = 0 |
| | variations = count_variations(V) |
| | while ((variations < zero_number_block) and (loopnumber <limitloop)): |
| | a = T[0] |
| | v = V[0] |
| | newT = [a] |
| | newV = [v] |
| | variations = 0 |
| | for n in range(1,len(T)): |
| | b2 = T[n] |
| | u = V[n] |
| | if (u*v>0): |
| | alpha = ctx.sqrt(u/v) |
| | b= (alpha*a+b2)/(alpha+1) |
| | else: |
| | b = (a+b2)/2 |
| | if fp_tolerance < 10: |
| | w = ctx._fp.siegelz(b) |
| | if abs(w)<fp_tolerance: |
| | w = ctx.siegelz(b) |
| | else: |
| | w=ctx.siegelz(b) |
| | if v*w<0: |
| | variations += 1 |
| | newT.append(b) |
| | newV.append(w) |
| | u = V[n] |
| | if u*w <0: |
| | variations += 1 |
| | newT.append(b2) |
| | newV.append(u) |
| | a = b2 |
| | v = u |
| | T = newT |
| | V = newV |
| | loopnumber +=1 |
| | if (limitloop>ITERATION_LIMIT)and(loopnumber>2)and(variations+2==zero_number_block): |
| | dtMax=0 |
| | dtSec=0 |
| | kMax = 0 |
| | for k1 in range(1,len(T)): |
| | dt = T[k1]-T[k1-1] |
| | if dt > dtMax: |
| | kMax=k1 |
| | dtSec = dtMax |
| | dtMax = dt |
| | elif (dt<dtMax) and(dt >dtSec): |
| | dtSec = dt |
| | if dtMax>3*dtSec: |
| | f = lambda x: ctx.rs_z(x,derivative=1) |
| | t0=T[kMax-1] |
| | t1 = T[kMax] |
| | t=ctx.findroot(f, (t0,t1), solver ='illinois',verify=False, verbose=False) |
| | v = ctx.siegelz(t) |
| | if (t0<t) and (t<t1) and (v*V[kMax]<0): |
| | T.insert(kMax,t) |
| | V.insert(kMax,v) |
| | variations = count_variations(V) |
| | if variations == zero_number_block: |
| | separated = True |
| | else: |
| | separated = False |
| | return (T,V, separated) |
| |
|
| | def separate_my_zero(ctx, my_zero_number, zero_number_block, T, V, prec): |
| | """If we know which zero of this block is mine, |
| | the function separates the zero""" |
| | variations = 0 |
| | v0 = V[0] |
| | for k in range(1,len(V)): |
| | v1 = V[k] |
| | if v0*v1 < 0: |
| | variations +=1 |
| | if variations == my_zero_number: |
| | k0 = k |
| | leftv = v0 |
| | rightv = v1 |
| | v0 = v1 |
| | t1 = T[k0] |
| | t0 = T[k0-1] |
| | ctx.prec = prec |
| | wpz = wpzeros(my_zero_number*ctx.log(my_zero_number)) |
| |
|
| | guard = 4*ctx.mag(my_zero_number) |
| | precs = [ctx.prec+4] |
| | index=0 |
| | while precs[0] > 2*wpz: |
| | index +=1 |
| | precs = [precs[0] // 2 +3+2*index] + precs |
| | ctx.prec = precs[0] + guard |
| | r = ctx.findroot(lambda x:ctx.siegelz(x), (t0,t1), solver ='illinois', verbose=False) |
| | |
| | z=ctx.mpc(0.5,r) |
| | for prec in precs[1:]: |
| | ctx.prec = prec + guard |
| | |
| | znew = z - ctx.zeta(z) / ctx.zeta(z, derivative=1) |
| | |
| | z=ctx.mpc(0.5,ctx.im(znew)) |
| | return ctx.im(z) |
| |
|
| | def sure_number_block(ctx, n): |
| | """The number of good Rosser blocks needed to apply |
| | Turing method |
| | References: |
| | R. P. Brent, On the Zeros of the Riemann Zeta Function |
| | in the Critical Strip, Math. Comp. 33 (1979) 1361--1372 |
| | T. Trudgian, Improvements to Turing Method, Math. Comp.""" |
| | if n < 9*10**5: |
| | return(2) |
| | g = ctx.grampoint(n-100) |
| | lg = ctx._fp.ln(g) |
| | brent = 0.0061 * lg**2 +0.08*lg |
| | trudgian = 0.0031 * lg**2 +0.11*lg |
| | N = ctx.ceil(min(brent,trudgian)) |
| | N = int(N) |
| | return N |
| |
|
| | def compute_triple_tvb(ctx, n): |
| | t = ctx.grampoint(n) |
| | v = ctx._fp.siegelz(t) |
| | if ctx.mag(abs(v))<ctx.mag(t)-45: |
| | v = ctx.siegelz(t) |
| | b = v*(-1)**n |
| | return t,v,b |
| |
|
| |
|
| |
|
| | ITERATION_LIMIT = 4 |
| |
|
| | def search_supergood_block(ctx, n, fp_tolerance): |
| | """To use for n>400 000 000""" |
| | sb = sure_number_block(ctx, n) |
| | number_goodblocks = 0 |
| | m2 = n-1 |
| | t, v, b = compute_triple_tvb(ctx, m2) |
| | Tf = [t] |
| | Vf = [v] |
| | while b < 0: |
| | m2 += 1 |
| | t,v,b = compute_triple_tvb(ctx, m2) |
| | Tf.append(t) |
| | Vf.append(v) |
| | goodpoints = [m2] |
| | T = [t] |
| | V = [v] |
| | while number_goodblocks < 2*sb: |
| | m2 += 1 |
| | t, v, b = compute_triple_tvb(ctx, m2) |
| | T.append(t) |
| | V.append(v) |
| | while b < 0: |
| | m2 += 1 |
| | t,v,b = compute_triple_tvb(ctx, m2) |
| | T.append(t) |
| | V.append(v) |
| | goodpoints.append(m2) |
| | zn = len(T)-1 |
| | A, B, separated =\ |
| | separate_zeros_in_block(ctx, zn, T, V, limitloop=ITERATION_LIMIT, |
| | fp_tolerance=fp_tolerance) |
| | Tf.pop() |
| | Tf.extend(A) |
| | Vf.pop() |
| | Vf.extend(B) |
| | if separated: |
| | number_goodblocks += 1 |
| | else: |
| | number_goodblocks = 0 |
| | T = [t] |
| | V = [v] |
| | |
| | number_goodblocks = 0 |
| | m2 = n-2 |
| | t, v, b = compute_triple_tvb(ctx, m2) |
| | Tf.insert(0,t) |
| | Vf.insert(0,v) |
| | while b < 0: |
| | m2 -= 1 |
| | t,v,b = compute_triple_tvb(ctx, m2) |
| | Tf.insert(0,t) |
| | Vf.insert(0,v) |
| | goodpoints.insert(0,m2) |
| | T = [t] |
| | V = [v] |
| | while number_goodblocks < 2*sb: |
| | m2 -= 1 |
| | t, v, b = compute_triple_tvb(ctx, m2) |
| | T.insert(0,t) |
| | V.insert(0,v) |
| | while b < 0: |
| | m2 -= 1 |
| | t,v,b = compute_triple_tvb(ctx, m2) |
| | T.insert(0,t) |
| | V.insert(0,v) |
| | goodpoints.insert(0,m2) |
| | zn = len(T)-1 |
| | A, B, separated =\ |
| | separate_zeros_in_block(ctx, zn, T, V, limitloop=ITERATION_LIMIT, fp_tolerance=fp_tolerance) |
| | A.pop() |
| | Tf = A+Tf |
| | B.pop() |
| | Vf = B+Vf |
| | if separated: |
| | number_goodblocks += 1 |
| | else: |
| | number_goodblocks = 0 |
| | T = [t] |
| | V = [v] |
| | r = goodpoints[2*sb] |
| | lg = len(goodpoints) |
| | s = goodpoints[lg-2*sb-1] |
| | tr, vr, br = compute_triple_tvb(ctx, r) |
| | ar = Tf.index(tr) |
| | ts, vs, bs = compute_triple_tvb(ctx, s) |
| | as1 = Tf.index(ts) |
| | T = Tf[ar:as1+1] |
| | V = Vf[ar:as1+1] |
| | zn = s-r |
| | A, B, separated =\ |
| | separate_zeros_in_block(ctx, zn,T,V,limitloop=ITERATION_LIMIT, fp_tolerance=fp_tolerance) |
| | if separated: |
| | return (n-r-1,[r,s],A,B) |
| | q = goodpoints[sb] |
| | lg = len(goodpoints) |
| | t = goodpoints[lg-sb-1] |
| | tq, vq, bq = compute_triple_tvb(ctx, q) |
| | aq = Tf.index(tq) |
| | tt, vt, bt = compute_triple_tvb(ctx, t) |
| | at = Tf.index(tt) |
| | T = Tf[aq:at+1] |
| | V = Vf[aq:at+1] |
| | return (n-q-1,[q,t],T,V) |
| |
|
| | def count_variations(V): |
| | count = 0 |
| | vold = V[0] |
| | for n in range(1, len(V)): |
| | vnew = V[n] |
| | if vold*vnew < 0: |
| | count +=1 |
| | vold = vnew |
| | return count |
| |
|
| | def pattern_construct(ctx, block, T, V): |
| | pattern = '(' |
| | a = block[0] |
| | b = block[1] |
| | t0,v0,b0 = compute_triple_tvb(ctx, a) |
| | k = 0 |
| | k0 = 0 |
| | for n in range(a+1,b+1): |
| | t1,v1,b1 = compute_triple_tvb(ctx, n) |
| | lgT =len(T) |
| | while (k < lgT) and (T[k] <= t1): |
| | k += 1 |
| | L = V[k0:k] |
| | L.append(v1) |
| | L.insert(0,v0) |
| | count = count_variations(L) |
| | pattern = pattern + ("%s" % count) |
| | if b1 > 0: |
| | pattern = pattern + ')(' |
| | k0 = k |
| | t0,v0,b0 = t1,v1,b1 |
| | pattern = pattern[:-1] |
| | return pattern |
| |
|
| | @defun |
| | def zetazero(ctx, n, info=False, round=True): |
| | r""" |
| | Computes the `n`-th nontrivial zero of `\zeta(s)` on the critical line, |
| | i.e. returns an approximation of the `n`-th largest complex number |
| | `s = \frac{1}{2} + ti` for which `\zeta(s) = 0`. Equivalently, the |
| | imaginary part `t` is a zero of the Z-function (:func:`~mpmath.siegelz`). |
| | |
| | **Examples** |
| | |
| | The first few zeros:: |
| | |
| | >>> from mpmath import * |
| | >>> mp.dps = 25; mp.pretty = True |
| | >>> zetazero(1) |
| | (0.5 + 14.13472514173469379045725j) |
| | >>> zetazero(2) |
| | (0.5 + 21.02203963877155499262848j) |
| | >>> zetazero(20) |
| | (0.5 + 77.14484006887480537268266j) |
| | |
| | Verifying that the values are zeros:: |
| | |
| | >>> for n in range(1,5): |
| | ... s = zetazero(n) |
| | ... chop(zeta(s)), chop(siegelz(s.imag)) |
| | ... |
| | (0.0, 0.0) |
| | (0.0, 0.0) |
| | (0.0, 0.0) |
| | (0.0, 0.0) |
| | |
| | Negative indices give the conjugate zeros (`n = 0` is undefined):: |
| | |
| | >>> zetazero(-1) |
| | (0.5 - 14.13472514173469379045725j) |
| | |
| | :func:`~mpmath.zetazero` supports arbitrarily large `n` and arbitrary precision:: |
| | |
| | >>> mp.dps = 15 |
| | >>> zetazero(1234567) |
| | (0.5 + 727690.906948208j) |
| | >>> mp.dps = 50 |
| | >>> zetazero(1234567) |
| | (0.5 + 727690.9069482075392389420041147142092708393819935j) |
| | >>> chop(zeta(_)/_) |
| | 0.0 |
| | |
| | with *info=True*, :func:`~mpmath.zetazero` gives additional information:: |
| | |
| | >>> mp.dps = 15 |
| | >>> zetazero(542964976,info=True) |
| | ((0.5 + 209039046.578535j), [542964969, 542964978], 6, '(013111110)') |
| | |
| | This means that the zero is between Gram points 542964969 and 542964978; |
| | it is the 6-th zero between them. Finally (01311110) is the pattern |
| | of zeros in this interval. The numbers indicate the number of zeros |
| | in each Gram interval (Rosser blocks between parenthesis). In this case |
| | there is only one Rosser block of length nine. |
| | """ |
| | n = int(n) |
| | if n < 0: |
| | return ctx.zetazero(-n).conjugate() |
| | if n == 0: |
| | raise ValueError("n must be nonzero") |
| | wpinitial = ctx.prec |
| | try: |
| | wpz, fp_tolerance = comp_fp_tolerance(ctx, n) |
| | ctx.prec = wpz |
| | if n < 400000000: |
| | my_zero_number, block, T, V =\ |
| | find_rosser_block_zero(ctx, n) |
| | else: |
| | my_zero_number, block, T, V =\ |
| | search_supergood_block(ctx, n, fp_tolerance) |
| | zero_number_block = block[1]-block[0] |
| | T, V, separated = separate_zeros_in_block(ctx, zero_number_block, T, V, |
| | limitloop=ctx.inf, fp_tolerance=fp_tolerance) |
| | if info: |
| | pattern = pattern_construct(ctx,block,T,V) |
| | prec = max(wpinitial, wpz) |
| | t = separate_my_zero(ctx, my_zero_number, zero_number_block,T,V,prec) |
| | v = ctx.mpc(0.5,t) |
| | finally: |
| | ctx.prec = wpinitial |
| | if round: |
| | v =+v |
| | if info: |
| | return (v,block,my_zero_number,pattern) |
| | else: |
| | return v |
| |
|
| | def gram_index(ctx, t): |
| | if t > 10**13: |
| | wp = 3*ctx.log(t, 10) |
| | else: |
| | wp = 0 |
| | prec = ctx.prec |
| | try: |
| | ctx.prec += wp |
| | h = int(ctx.siegeltheta(t)/ctx.pi) |
| | finally: |
| | ctx.prec = prec |
| | return(h) |
| |
|
| | def count_to(ctx, t, T, V): |
| | count = 0 |
| | vold = V[0] |
| | told = T[0] |
| | tnew = T[1] |
| | k = 1 |
| | while tnew < t: |
| | vnew = V[k] |
| | if vold*vnew < 0: |
| | count += 1 |
| | vold = vnew |
| | k += 1 |
| | tnew = T[k] |
| | a = ctx.siegelz(t) |
| | if a*vold < 0: |
| | count += 1 |
| | return count |
| |
|
| | def comp_fp_tolerance(ctx, n): |
| | wpz = wpzeros(n*ctx.log(n)) |
| | if n < 15*10**8: |
| | fp_tolerance = 0.0005 |
| | elif n <= 10**14: |
| | fp_tolerance = 0.1 |
| | else: |
| | fp_tolerance = 100 |
| | return wpz, fp_tolerance |
| |
|
| | @defun |
| | def nzeros(ctx, t): |
| | r""" |
| | Computes the number of zeros of the Riemann zeta function in |
| | `(0,1) \times (0,t]`, usually denoted by `N(t)`. |
| | |
| | **Examples** |
| | |
| | The first zero has imaginary part between 14 and 15:: |
| | |
| | >>> from mpmath import * |
| | >>> mp.dps = 15; mp.pretty = True |
| | >>> nzeros(14) |
| | 0 |
| | >>> nzeros(15) |
| | 1 |
| | >>> zetazero(1) |
| | (0.5 + 14.1347251417347j) |
| | |
| | Some closely spaced zeros:: |
| | |
| | >>> nzeros(10**7) |
| | 21136125 |
| | >>> zetazero(21136125) |
| | (0.5 + 9999999.32718175j) |
| | >>> zetazero(21136126) |
| | (0.5 + 10000000.2400236j) |
| | >>> nzeros(545439823.215) |
| | 1500000001 |
| | >>> zetazero(1500000001) |
| | (0.5 + 545439823.201985j) |
| | >>> zetazero(1500000002) |
| | (0.5 + 545439823.325697j) |
| | |
| | This confirms the data given by J. van de Lune, |
| | H. J. J. te Riele and D. T. Winter in 1986. |
| | """ |
| | if t < 14.1347251417347: |
| | return 0 |
| | x = gram_index(ctx, t) |
| | k = int(ctx.floor(x)) |
| | wpinitial = ctx.prec |
| | wpz, fp_tolerance = comp_fp_tolerance(ctx, k) |
| | ctx.prec = wpz |
| | a = ctx.siegelz(t) |
| | if k == -1 and a < 0: |
| | return 0 |
| | elif k == -1 and a > 0: |
| | return 1 |
| | if k+2 < 400000000: |
| | Rblock = find_rosser_block_zero(ctx, k+2) |
| | else: |
| | Rblock = search_supergood_block(ctx, k+2, fp_tolerance) |
| | n1, n2 = Rblock[1] |
| | if n2-n1 == 1: |
| | b = Rblock[3][0] |
| | if a*b > 0: |
| | ctx.prec = wpinitial |
| | return k+1 |
| | else: |
| | ctx.prec = wpinitial |
| | return k+2 |
| | my_zero_number,block, T, V = Rblock |
| | zero_number_block = n2-n1 |
| | T, V, separated = separate_zeros_in_block(ctx,\ |
| | zero_number_block, T, V,\ |
| | limitloop=ctx.inf,\ |
| | fp_tolerance=fp_tolerance) |
| | n = count_to(ctx, t, T, V) |
| | ctx.prec = wpinitial |
| | return n+n1+1 |
| |
|
| | @defun_wrapped |
| | def backlunds(ctx, t): |
| | r""" |
| | Computes the function |
| | `S(t) = \operatorname{arg} \zeta(\frac{1}{2} + it) / \pi`. |
| | |
| | See Titchmarsh Section 9.3 for details of the definition. |
| | |
| | **Examples** |
| | |
| | >>> from mpmath import * |
| | >>> mp.dps = 15; mp.pretty = True |
| | >>> backlunds(217.3) |
| | 0.16302205431184 |
| | |
| | Generally, the value is a small number. At Gram points it is an integer, |
| | frequently equal to 0:: |
| | |
| | >>> chop(backlunds(grampoint(200))) |
| | 0.0 |
| | >>> backlunds(extraprec(10)(grampoint)(211)) |
| | 1.0 |
| | >>> backlunds(extraprec(10)(grampoint)(232)) |
| | -1.0 |
| | |
| | The number of zeros of the Riemann zeta function up to height `t` |
| | satisfies `N(t) = \theta(t)/\pi + 1 + S(t)` (see :func:nzeros` and |
| | :func:`siegeltheta`):: |
| | |
| | >>> t = 1234.55 |
| | >>> nzeros(t) |
| | 842 |
| | >>> siegeltheta(t)/pi+1+backlunds(t) |
| | 842.0 |
| | |
| | """ |
| | return ctx.nzeros(t)-1-ctx.siegeltheta(t)/ctx.pi |
| |
|
| |
|
| | """ |
| | _ROSSER_EXCEPTIONS is a list of all exceptions to |
| | Rosser's rule for n <= 400 000 000. |
| | |
| | Alternately the entry is of type [n,m], or a string. |
| | The string is the zero pattern of the Block and the relevant |
| | adjacent. For example (010)3 corresponds to a block |
| | composed of three Gram intervals, the first ant third without |
| | a zero and the intermediate with a zero. The next Gram interval |
| | contain three zeros. So that in total we have 4 zeros in 4 Gram |
| | blocks. n and m are the indices of the Gram points of this |
| | interval of four Gram intervals. The Rosser exception is therefore |
| | formed by the three Gram intervals that are signaled between |
| | parenthesis. |
| | |
| | We have included also some Rosser's exceptions beyond n=400 000 000 |
| | that are noted in the literature by some reason. |
| | |
| | The list is composed from the data published in the references: |
| | |
| | R. P. Brent, J. van de Lune, H. J. J. te Riele, D. T. Winter, |
| | 'On the Zeros of the Riemann Zeta Function in the Critical Strip. II', |
| | Math. Comp. 39 (1982) 681--688. |
| | See also Corrigenda in Math. Comp. 46 (1986) 771. |
| | |
| | J. van de Lune, H. J. J. te Riele, |
| | 'On the Zeros of the Riemann Zeta Function in the Critical Strip. III', |
| | Math. Comp. 41 (1983) 759--767. |
| | See also Corrigenda in Math. Comp. 46 (1986) 771. |
| | |
| | J. van de Lune, |
| | 'Sums of Equal Powers of Positive Integers', |
| | Dissertation, |
| | Vrije Universiteit te Amsterdam, Centrum voor Wiskunde en Informatica, |
| | Amsterdam, 1984. |
| | |
| | Thanks to the authors all this papers and those others that have |
| | contributed to make this possible. |
| | """ |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| | _ROSSER_EXCEPTIONS = \ |
| | [[13999525, 13999528], '(00)3', |
| | [30783329, 30783332], '(00)3', |
| | [30930926, 30930929], '3(00)', |
| | [37592215, 37592218], '(00)3', |
| | [40870156, 40870159], '(00)3', |
| | [43628107, 43628110], '(00)3', |
| | [46082042, 46082045], '(00)3', |
| | [46875667, 46875670], '(00)3', |
| | [49624540, 49624543], '3(00)', |
| | [50799238, 50799241], '(00)3', |
| | [55221453, 55221456], '3(00)', |
| | [56948779, 56948782], '3(00)', |
| | [60515663, 60515666], '(00)3', |
| | [61331766, 61331770], '(00)40', |
| | [69784843, 69784846], '3(00)', |
| | [75052114, 75052117], '(00)3', |
| | [79545240, 79545243], '3(00)', |
| | [79652247, 79652250], '3(00)', |
| | [83088043, 83088046], '(00)3', |
| | [83689522, 83689525], '3(00)', |
| | [85348958, 85348961], '(00)3', |
| | [86513820, 86513823], '(00)3', |
| | [87947596, 87947599], '3(00)', |
| | [88600095, 88600098], '(00)3', |
| | [93681183, 93681186], '(00)3', |
| | [100316551, 100316554], '3(00)', |
| | [100788444, 100788447], '(00)3', |
| | [106236172, 106236175], '(00)3', |
| | [106941327, 106941330], '3(00)', |
| | [107287955, 107287958], '(00)3', |
| | [107532016, 107532019], '3(00)', |
| | [110571044, 110571047], '(00)3', |
| | [111885253, 111885256], '3(00)', |
| | [113239783, 113239786], '(00)3', |
| | [120159903, 120159906], '(00)3', |
| | [121424391, 121424394], '3(00)', |
| | [121692931, 121692934], '3(00)', |
| | [121934170, 121934173], '3(00)', |
| | [122612848, 122612851], '3(00)', |
| | [126116567, 126116570], '(00)3', |
| | [127936513, 127936516], '(00)3', |
| | [128710277, 128710280], '3(00)', |
| | [129398902, 129398905], '3(00)', |
| | [130461096, 130461099], '3(00)', |
| | [131331947, 131331950], '3(00)', |
| | [137334071, 137334074], '3(00)', |
| | [137832603, 137832606], '(00)3', |
| | [138799471, 138799474], '3(00)', |
| | [139027791, 139027794], '(00)3', |
| | [141617806, 141617809], '(00)3', |
| | [144454931, 144454934], '(00)3', |
| | [145402379, 145402382], '3(00)', |
| | [146130245, 146130248], '3(00)', |
| | [147059770, 147059773], '(00)3', |
| | [147896099, 147896102], '3(00)', |
| | [151097113, 151097116], '(00)3', |
| | [152539438, 152539441], '(00)3', |
| | [152863168, 152863171], '3(00)', |
| | [153522726, 153522729], '3(00)', |
| | [155171524, 155171527], '3(00)', |
| | [155366607, 155366610], '(00)3', |
| | [157260686, 157260689], '3(00)', |
| | [157269224, 157269227], '(00)3', |
| | [157755123, 157755126], '(00)3', |
| | [158298484, 158298487], '3(00)', |
| | [160369050, 160369053], '3(00)', |
| | [162962787, 162962790], '(00)3', |
| | [163724709, 163724712], '(00)3', |
| | [164198113, 164198116], '3(00)', |
| | [164689301, 164689305], '(00)40', |
| | [164880228, 164880231], '3(00)', |
| | [166201932, 166201935], '(00)3', |
| | [168573836, 168573839], '(00)3', |
| | [169750763, 169750766], '(00)3', |
| | [170375507, 170375510], '(00)3', |
| | [170704879, 170704882], '3(00)', |
| | [172000992, 172000995], '3(00)', |
| | [173289941, 173289944], '(00)3', |
| | [173737613, 173737616], '3(00)', |
| | [174102513, 174102516], '(00)3', |
| | [174284990, 174284993], '(00)3', |
| | [174500513, 174500516], '(00)3', |
| | [175710609, 175710612], '(00)3', |
| | [176870843, 176870846], '3(00)', |
| | [177332732, 177332735], '3(00)', |
| | [177902861, 177902864], '3(00)', |
| | [179979095, 179979098], '(00)3', |
| | [181233726, 181233729], '3(00)', |
| | [181625435, 181625438], '(00)3', |
| | [182105255, 182105259], '22(00)', |
| | [182223559, 182223562], '3(00)', |
| | [191116404, 191116407], '3(00)', |
| | [191165599, 191165602], '3(00)', |
| | [191297535, 191297539], '(00)22', |
| | [192485616, 192485619], '(00)3', |
| | [193264634, 193264638], '22(00)', |
| | [194696968, 194696971], '(00)3', |
| | [195876805, 195876808], '(00)3', |
| | [195916548, 195916551], '3(00)', |
| | [196395160, 196395163], '3(00)', |
| | [196676303, 196676306], '(00)3', |
| | [197889882, 197889885], '3(00)', |
| | [198014122, 198014125], '(00)3', |
| | [199235289, 199235292], '(00)3', |
| | [201007375, 201007378], '(00)3', |
| | [201030605, 201030608], '3(00)', |
| | [201184290, 201184293], '3(00)', |
| | [201685414, 201685418], '(00)22', |
| | [202762875, 202762878], '3(00)', |
| | [202860957, 202860960], '3(00)', |
| | [203832577, 203832580], '3(00)', |
| | [205880544, 205880547], '(00)3', |
| | [206357111, 206357114], '(00)3', |
| | [207159767, 207159770], '3(00)', |
| | [207167343, 207167346], '3(00)', |
| | [207482539, 207482543], '3(010)', |
| | [207669540, 207669543], '3(00)', |
| | [208053426, 208053429], '(00)3', |
| | [208110027, 208110030], '3(00)', |
| | [209513826, 209513829], '3(00)', |
| | [212623522, 212623525], '(00)3', |
| | [213841715, 213841718], '(00)3', |
| | [214012333, 214012336], '(00)3', |
| | [214073567, 214073570], '(00)3', |
| | [215170600, 215170603], '3(00)', |
| | [215881039, 215881042], '3(00)', |
| | [216274604, 216274607], '3(00)', |
| | [216957120, 216957123], '3(00)', |
| | [217323208, 217323211], '(00)3', |
| | [218799264, 218799267], '(00)3', |
| | [218803557, 218803560], '3(00)', |
| | [219735146, 219735149], '(00)3', |
| | [219830062, 219830065], '3(00)', |
| | [219897904, 219897907], '(00)3', |
| | [221205545, 221205548], '(00)3', |
| | [223601929, 223601932], '(00)3', |
| | [223907076, 223907079], '3(00)', |
| | [223970397, 223970400], '(00)3', |
| | [224874044, 224874048], '22(00)', |
| | [225291157, 225291160], '(00)3', |
| | [227481734, 227481737], '(00)3', |
| | [228006442, 228006445], '3(00)', |
| | [228357900, 228357903], '(00)3', |
| | [228386399, 228386402], '(00)3', |
| | [228907446, 228907449], '(00)3', |
| | [228984552, 228984555], '3(00)', |
| | [229140285, 229140288], '3(00)', |
| | [231810024, 231810027], '(00)3', |
| | [232838062, 232838065], '3(00)', |
| | [234389088, 234389091], '3(00)', |
| | [235588194, 235588197], '(00)3', |
| | [236645695, 236645698], '(00)3', |
| | [236962876, 236962879], '3(00)', |
| | [237516723, 237516727], '04(00)', |
| | [240004911, 240004914], '(00)3', |
| | [240221306, 240221309], '3(00)', |
| | [241389213, 241389217], '(010)3', |
| | [241549003, 241549006], '(00)3', |
| | [241729717, 241729720], '(00)3', |
| | [241743684, 241743687], '3(00)', |
| | [243780200, 243780203], '3(00)', |
| | [243801317, 243801320], '(00)3', |
| | [244122072, 244122075], '(00)3', |
| | [244691224, 244691227], '3(00)', |
| | [244841577, 244841580], '(00)3', |
| | [245813461, 245813464], '(00)3', |
| | [246299475, 246299478], '(00)3', |
| | [246450176, 246450179], '3(00)', |
| | [249069349, 249069352], '(00)3', |
| | [250076378, 250076381], '(00)3', |
| | [252442157, 252442160], '3(00)', |
| | [252904231, 252904234], '3(00)', |
| | [255145220, 255145223], '(00)3', |
| | [255285971, 255285974], '3(00)', |
| | [256713230, 256713233], '(00)3', |
| | [257992082, 257992085], '(00)3', |
| | [258447955, 258447959], '22(00)', |
| | [259298045, 259298048], '3(00)', |
| | [262141503, 262141506], '(00)3', |
| | [263681743, 263681746], '3(00)', |
| | [266527881, 266527885], '(010)3', |
| | [266617122, 266617125], '(00)3', |
| | [266628044, 266628047], '3(00)', |
| | [267305763, 267305766], '(00)3', |
| | [267388404, 267388407], '3(00)', |
| | [267441672, 267441675], '3(00)', |
| | [267464886, 267464889], '(00)3', |
| | [267554907, 267554910], '3(00)', |
| | [269787480, 269787483], '(00)3', |
| | [270881434, 270881437], '(00)3', |
| | [270997583, 270997586], '3(00)', |
| | [272096378, 272096381], '3(00)', |
| | [272583009, 272583012], '(00)3', |
| | [274190881, 274190884], '3(00)', |
| | [274268747, 274268750], '(00)3', |
| | [275297429, 275297432], '3(00)', |
| | [275545476, 275545479], '3(00)', |
| | [275898479, 275898482], '3(00)', |
| | [275953000, 275953003], '(00)3', |
| | [277117197, 277117201], '(00)22', |
| | [277447310, 277447313], '3(00)', |
| | [279059657, 279059660], '3(00)', |
| | [279259144, 279259147], '3(00)', |
| | [279513636, 279513639], '3(00)', |
| | [279849069, 279849072], '3(00)', |
| | [280291419, 280291422], '(00)3', |
| | [281449425, 281449428], '3(00)', |
| | [281507953, 281507956], '3(00)', |
| | [281825600, 281825603], '(00)3', |
| | [282547093, 282547096], '3(00)', |
| | [283120963, 283120966], '3(00)', |
| | [283323493, 283323496], '(00)3', |
| | [284764535, 284764538], '3(00)', |
| | [286172639, 286172642], '3(00)', |
| | [286688824, 286688827], '(00)3', |
| | [287222172, 287222175], '3(00)', |
| | [287235534, 287235537], '3(00)', |
| | [287304861, 287304864], '3(00)', |
| | [287433571, 287433574], '(00)3', |
| | [287823551, 287823554], '(00)3', |
| | [287872422, 287872425], '3(00)', |
| | [288766615, 288766618], '3(00)', |
| | [290122963, 290122966], '3(00)', |
| | [290450849, 290450853], '(00)22', |
| | [291426141, 291426144], '3(00)', |
| | [292810353, 292810356], '3(00)', |
| | [293109861, 293109864], '3(00)', |
| | [293398054, 293398057], '3(00)', |
| | [294134426, 294134429], '3(00)', |
| | [294216438, 294216441], '(00)3', |
| | [295367141, 295367144], '3(00)', |
| | [297834111, 297834114], '3(00)', |
| | [299099969, 299099972], '3(00)', |
| | [300746958, 300746961], '3(00)', |
| | [301097423, 301097426], '(00)3', |
| | [301834209, 301834212], '(00)3', |
| | [302554791, 302554794], '(00)3', |
| | [303497445, 303497448], '3(00)', |
| | [304165344, 304165347], '3(00)', |
| | [304790218, 304790222], '3(010)', |
| | [305302352, 305302355], '(00)3', |
| | [306785996, 306785999], '3(00)', |
| | [307051443, 307051446], '3(00)', |
| | [307481539, 307481542], '3(00)', |
| | [308605569, 308605572], '3(00)', |
| | [309237610, 309237613], '3(00)', |
| | [310509287, 310509290], '(00)3', |
| | [310554057, 310554060], '3(00)', |
| | [310646345, 310646348], '3(00)', |
| | [311274896, 311274899], '(00)3', |
| | [311894272, 311894275], '3(00)', |
| | [312269470, 312269473], '(00)3', |
| | [312306601, 312306605], '(00)40', |
| | [312683193, 312683196], '3(00)', |
| | [314499804, 314499807], '3(00)', |
| | [314636802, 314636805], '(00)3', |
| | [314689897, 314689900], '3(00)', |
| | [314721319, 314721322], '3(00)', |
| | [316132890, 316132893], '3(00)', |
| | [316217470, 316217474], '(010)3', |
| | [316465705, 316465708], '3(00)', |
| | [316542790, 316542793], '(00)3', |
| | [320822347, 320822350], '3(00)', |
| | [321733242, 321733245], '3(00)', |
| | [324413970, 324413973], '(00)3', |
| | [325950140, 325950143], '(00)3', |
| | [326675884, 326675887], '(00)3', |
| | [326704208, 326704211], '3(00)', |
| | [327596247, 327596250], '3(00)', |
| | [328123172, 328123175], '3(00)', |
| | [328182212, 328182215], '(00)3', |
| | [328257498, 328257501], '3(00)', |
| | [328315836, 328315839], '(00)3', |
| | [328800974, 328800977], '(00)3', |
| | [328998509, 328998512], '3(00)', |
| | [329725370, 329725373], '(00)3', |
| | [332080601, 332080604], '(00)3', |
| | [332221246, 332221249], '(00)3', |
| | [332299899, 332299902], '(00)3', |
| | [332532822, 332532825], '(00)3', |
| | [333334544, 333334548], '(00)22', |
| | [333881266, 333881269], '3(00)', |
| | [334703267, 334703270], '3(00)', |
| | [334875138, 334875141], '3(00)', |
| | [336531451, 336531454], '3(00)', |
| | [336825907, 336825910], '(00)3', |
| | [336993167, 336993170], '(00)3', |
| | [337493998, 337494001], '3(00)', |
| | [337861034, 337861037], '3(00)', |
| | [337899191, 337899194], '(00)3', |
| | [337958123, 337958126], '(00)3', |
| | [342331982, 342331985], '3(00)', |
| | [342676068, 342676071], '3(00)', |
| | [347063781, 347063784], '3(00)', |
| | [347697348, 347697351], '3(00)', |
| | [347954319, 347954322], '3(00)', |
| | [348162775, 348162778], '3(00)', |
| | [349210702, 349210705], '(00)3', |
| | [349212913, 349212916], '3(00)', |
| | [349248650, 349248653], '(00)3', |
| | [349913500, 349913503], '3(00)', |
| | [350891529, 350891532], '3(00)', |
| | [351089323, 351089326], '3(00)', |
| | [351826158, 351826161], '3(00)', |
| | [352228580, 352228583], '(00)3', |
| | [352376244, 352376247], '3(00)', |
| | [352853758, 352853761], '(00)3', |
| | [355110439, 355110442], '(00)3', |
| | [355808090, 355808094], '(00)40', |
| | [355941556, 355941559], '3(00)', |
| | [356360231, 356360234], '(00)3', |
| | [356586657, 356586660], '3(00)', |
| | [356892926, 356892929], '(00)3', |
| | [356908232, 356908235], '3(00)', |
| | [357912730, 357912733], '3(00)', |
| | [358120344, 358120347], '3(00)', |
| | [359044096, 359044099], '(00)3', |
| | [360819357, 360819360], '3(00)', |
| | [361399662, 361399666], '(010)3', |
| | [362361315, 362361318], '(00)3', |
| | [363610112, 363610115], '(00)3', |
| | [363964804, 363964807], '3(00)', |
| | [364527375, 364527378], '(00)3', |
| | [365090327, 365090330], '(00)3', |
| | [365414539, 365414542], '3(00)', |
| | [366738474, 366738477], '3(00)', |
| | [368714778, 368714783], '04(010)', |
| | [368831545, 368831548], '(00)3', |
| | [368902387, 368902390], '(00)3', |
| | [370109769, 370109772], '3(00)', |
| | [370963333, 370963336], '3(00)', |
| | [372541136, 372541140], '3(010)', |
| | [372681562, 372681565], '(00)3', |
| | [373009410, 373009413], '(00)3', |
| | [373458970, 373458973], '3(00)', |
| | [375648658, 375648661], '3(00)', |
| | [376834728, 376834731], '3(00)', |
| | [377119945, 377119948], '(00)3', |
| | [377335703, 377335706], '(00)3', |
| | [378091745, 378091748], '3(00)', |
| | [379139522, 379139525], '3(00)', |
| | [380279160, 380279163], '(00)3', |
| | [380619442, 380619445], '3(00)', |
| | [381244231, 381244234], '3(00)', |
| | [382327446, 382327450], '(010)3', |
| | [382357073, 382357076], '3(00)', |
| | [383545479, 383545482], '3(00)', |
| | [384363766, 384363769], '(00)3', |
| | [384401786, 384401790], '22(00)', |
| | [385198212, 385198215], '3(00)', |
| | [385824476, 385824479], '(00)3', |
| | [385908194, 385908197], '3(00)', |
| | [386946806, 386946809], '3(00)', |
| | [387592175, 387592179], '22(00)', |
| | [388329293, 388329296], '(00)3', |
| | [388679566, 388679569], '3(00)', |
| | [388832142, 388832145], '3(00)', |
| | [390087103, 390087106], '(00)3', |
| | [390190926, 390190930], '(00)22', |
| | [390331207, 390331210], '3(00)', |
| | [391674495, 391674498], '3(00)', |
| | [391937831, 391937834], '3(00)', |
| | [391951632, 391951636], '(00)22', |
| | [392963986, 392963989], '(00)3', |
| | [393007921, 393007924], '3(00)', |
| | [393373210, 393373213], '3(00)', |
| | [393759572, 393759575], '(00)3', |
| | [394036662, 394036665], '(00)3', |
| | [395813866, 395813869], '(00)3', |
| | [395956690, 395956693], '3(00)', |
| | [396031670, 396031673], '3(00)', |
| | [397076433, 397076436], '3(00)', |
| | [397470601, 397470604], '3(00)', |
| | [398289458, 398289461], '3(00)', |
| | |
| | [368714778, 368714783], '04(010)', |
| | [437953499, 437953504], '04(010)', |
| | [526196233, 526196238], '032(00)', |
| | [744719566, 744719571], '(010)40', |
| | [750375857, 750375862], '032(00)', |
| | [958241932, 958241937], '04(010)', |
| | [983377342, 983377347], '(00)410', |
| | [1003780080, 1003780085], '04(010)', |
| | [1070232754, 1070232759], '(00)230', |
| | [1209834865, 1209834870], '032(00)', |
| | [1257209100, 1257209105], '(00)410', |
| | [1368002233, 1368002238], '(00)230' |
| | ] |
| |
|