is(p) = { my (d=digits(p)); for (w=#d\2, #d-1, my (q=fromdigits(d[1..w])); if (isprime(q), if (isprime(q+2) && p%10^#digits(q+2)==q+2 && #digits(q)+#digits(q+2)>#d, return (1) ); if (isprime(q-2) && p%10^#digits(q-2)==q-2 && #digits(q)+#digits(q-2)>#d, return (1) ); ); ); return (0); } n=0; forprime (p=2, oo, if (is(p), print (n++ " " p))) quit