Problems & Puzzles: Puzzles

Puzzle 950. Bi-truncatable primes

Carlos Rivera asks:

What is the largest bi-truncatable prime?

(A bi-truncatable prime remains prime after deleting simultaneously the extreme digits, until reaching a one digit prime)

The best solution found by CR is:

72173736552996866735119796485956768945999371377377779713333793
171797133971739117999 (83 digits, Central digit = 3)

All of the following are primes:

72173736552996866735119796485956768945999371377377779713333793171797133971739117999

217373655299686673511979648595676894599937137737777971333379317179713397173911799

1737365529968667351197964859567689459993713773777797133337931717971339717391179

73736552996866735119796485956768945999371377377779713333793171797133971739117

373655299686673511979648595676894599937137737777971333379317179713397173911

7365529968667351197964859567689459993713773777797133337931717971339717391

36552996866735119796485956768945999371377377779713333793171797133971739

655299686673511979648595676894599937137737777971333379317179713397173

5529968667351197964859567689459993713773777797133337931717971339717

52996866735119796485956768945999371377377779713333793171797133971

299686673511979648595676894599937137737777971333379317179713397

9968667351197964859567689459993713773777797133337931717971339

96866735119796485956768945999371377377779713333793171797133

686673511979648595676894599937137737777971333379317179713

8667351197964859567689459993713773777797133337931717971

66735119796485956768945999371377377779713333793171797

673511979648595676894599937137737777971333379317179

7351197964859567689459993713773777797133337931717

35119796485956768945999371377377779713333793171

511979648595676894599937137737777971333379317

1197964859567689459993713773777797133337931

19796485956768945999371377377779713333793

979648595676894599937137737777971333379

7964859567689459993713773777797133337

96485956768945999371377377779713333

648595676894599937137737777971333

4859567689459993713773777797133

85956768945999371377377779713

595676894599937137737777971

9567689459993713773777797

56768945999371377377779

676894599937137737777

7689459993713773777

68945999371377377

894599937137737

9459993713773

45999371377

599937137

9993713

99371

937

3

Q. Send your larger solution?

 

Contributions came from Giovanni Resta, Dmitry Kamenetsky, Emmanuel Vantieghem, Vicente F. Izquierdo, Simon Cavegn & Paul Cleary

***

Giovanni wrote on April 20, 2019

The largest ones (97 digits) are:

722882817678679255278166892675
5667258635743361825711373791931117197999133917737137399993737111177

4188833874383292448545821683815655695275762221285913773117991917311713117717991977113317333971797

1287821989562612222626643458638436922617512276927793977113191137371797173933791911399373799979319

***

Dmitry wrote on April 21, 2019

So far my best result is two solutions with 91 digits:
 
2124823821573876118235373589673496371976538993773311199797313939377713911311719399973179339
 
2671812849553226859936976853169546776594782777311737373911717917137193931173317977777399117

Later on April 25, 2019 he added:

I found three solutions with 97 digits. I think these are optimal.

1287821989562612222626643458638436922617512276927793977113191137371797173933791911399373799979319

4188833874383292448545821683815655695275762221285913773117991917311713117717991977113317333971797

7228828176786792552781668926755667258635743361825711373791931117197999133917737137399993737111177

***

Emmanuel wrote on April 23, 2019

Here is a 93-digit solution :

193436592959695989528296138838373723349834962137997191993339311911911731311791973939197137977
 
If you change the first digits (at the left) by 8 and the last digit by 1, you get a second solution.
There might be bigger solutions but I'm not sure I'll find them before the end of the week.
That's why I send you this now.

Later on April 25, 2019 he added:

My biggest bi-truncatable prime is (97 digits, middlest digit 7):
 
1287821989562612222626643458638436922617512276927793977113191137371797173933791911399373799979319
 
There is no bigger prime with central digit 7 nor with central digit 3. It is possible that there is a bigger one with central digit  2  or  5  but I need three days of computing to figure that out.

***

Vicente wrote on April 24, 2019

El menor primo con el 3 en el centro de 93 dígitos:

334948663839297455155866717955389552517458413631397719737737779131737377177179791319391339119

***

Simon wrote on April 26, 2019:

The largest solutions I found for a central 2 have length 91:
4228869957479183989559882545262841789291161752397119979713711797377779713139939191113371771
1992269957479183989559882545262841789291161752397119979713711797377779713139939191113391137
 
A central 3 of length 93:
334948663839297455155866717955389552517458413631397719737737779131737377177179791319391339119
 
A central 5 of length 97:
7228828176786792552781668926755667258635743361825711373791931117197999133917737137399993737111177
 
A central 7 of length 95:
3598162437165593287244233137421668156494123323271737977931799337773793397733373733199171139191
3

***

Paul wrote on April 26, 2019:

I found 3 solutions with 97 digits, I do believe they are the maximum.

 

7228828176786792552781668926755667258635743361825711373791931117197999133917737137399993737111177

22882817678679255278166892675566725863574336182571137379193111719799913391773713739999373711117

288281767867925527816689267556672586357433618257113737919311171979991339177371373999937371111

8828176786792552781668926755667258635743361825711373791931117197999133917737137399993737111

82817678679255278166892675566725863574336182571137379193111719799913391773713739999373711

281767867925527816689267556672586357433618257113737919311171979991339177371373999937371

8176786792552781668926755667258635743361825711373791931117197999133917737137399993737

17678679255278166892675566725863574336182571137379193111719799913391773713739999373

767867925527816689267556672586357433618257113737919311171979991339177371373999937

6786792552781668926755667258635743361825711373791931117197999133917737137399993

78679255278166892675566725863574336182571137379193111719799913391773713739999

867925527816689267556672586357433618257113737919311171979991339177371373999

6792552781668926755667258635743361825711373791931117197999133917737137399

79255278166892675566725863574336182571137379193111719799913391773713739

925527816689267556672586357433618257113737919311171979991339177371373

2552781668926755667258635743361825711373791931117197999133917737137

55278166892675566725863574336182571137379193111719799913391773713

527816689267556672586357433618257113737919311171979991339177371

2781668926755667258635743361825711373791931117197999133917737

78166892675566725863574336182571137379193111719799913391773

816689267556672586357433618257113737919311171979991339177

1668926755667258635743361825711373791931117197999133917

66892675566725863574336182571137379193111719799913391

689267556672586357433618257113737919311171979991339

8926755667258635743361825711373791931117197999133

92675566725863574336182571137379193111719799913

267556672586357433618257113737919311171979991

6755667258635743361825711373791931117197999

75566725863574336182571137379193111719799

556672586357433618257113737919311171979

5667258635743361825711373791931117197

66725863574336182571137379193111719

672586357433618257113737919311171

7258635743361825711373791931117

25863574336182571137379193111

586357433618257113737919311

8635743361825711373791931

63574336182571137379193

357433618257113737919

5743361825711373791

74336182571137379

433618257113737

3361825711373

36182571137

618257113

1825711

82571

257

5

 

4188833874383292448545821683815655695275762221285913773117991917311713117717991977113317333971797

18883387438329244854582168381565569527576222128591377311799191731171311771799197711331733397179

888338743832924485458216838156556952757622212859137731179919173117131177179919771133173339717

8833874383292448545821683815655695275762221285913773117991917311713117717991977113317333971

83387438329244854582168381565569527576222128591377311799191731171311771799197711331733397

338743832924485458216838156556952757622212859137731179919173117131177179919771133173339

3874383292448545821683815655695275762221285913773117991917311713117717991977113317333

87438329244854582168381565569527576222128591377311799191731171311771799197711331733

743832924485458216838156556952757622212859137731179919173117131177179919771133173

4383292448545821683815655695275762221285913773117991917311713117717991977113317

38329244854582168381565569527576222128591377311799191731171311771799197711331

832924485458216838156556952757622212859137731179919173117131177179919771133

3292448545821683815655695275762221285913773117991917311713117717991977113

29244854582168381565569527576222128591377311799191731171311771799197711

924485458216838156556952757622212859137731179919173117131177179919771

2448545821683815655695275762221285913773117991917311713117717991977

44854582168381565569527576222128591377311799191731171311771799197

485458216838156556952757622212859137731179919173117131177179919

8545821683815655695275762221285913773117991917311713117717991

54582168381565569527576222128591377311799191731171311771799

458216838156556952757622212859137731179919173117131177179

5821683815655695275762221285913773117991917311713117717

82168381565569527576222128591377311799191731171311771

216838156556952757622212859137731179919173117131177

1683815655695275762221285913773117991917311713117

68381565569527576222128591377311799191731171311

838156556952757622212859137731179919173117131

3815655695275762221285913773117991917311713

81565569527576222128591377311799191731171

156556952757622212859137731179919173117

5655695275762221285913773117991917311

65569527576222128591377311799191731

556952757622212859137731179919173

5695275762221285913773117991917

69527576222128591377311799191

952757622212859137731179919

5275762221285913773117991

27576222128591377311799

757622212859137731179

5762221285913773117

76222128591377311

622212859137731

2221285913773

22128591377

212859137

1285913

28591

859

5

 

1287821989562612222626643458638436922617512276927793977113191137371797173933791911399373799979319

28782198956261222262664345863843692261751227692779397711319113737179717393379191139937379997931

878219895626122226266434586384369226175122769277939771131911373717971739337919113993737999793

7821989562612222626643458638436922617512276927793977113191137371797173933791911399373799979

82198956261222262664345863843692261751227692779397711319113737179717393379191139937379997

219895626122226266434586384369226175122769277939771131911373717971739337919113993737999

1989562612222626643458638436922617512276927793977113191137371797173933791911399373799

98956261222262664345863843692261751227692779397711319113737179717393379191139937379

895626122226266434586384369226175122769277939771131911373717971739337919113993737

9562612222626643458638436922617512276927793977113191137371797173933791911399373

56261222262664345863843692261751227692779397711319113737179717393379191139937

626122226266434586384369226175122769277939771131911373717971739337919113993

2612222626643458638436922617512276927793977113191137371797173933791911399

61222262664345863843692261751227692779397711319113737179717393379191139

122226266434586384369226175122769277939771131911373717971739337919113

2222626643458638436922617512276927793977113191137371797173933791911

22262664345863843692261751227692779397711319113737179717393379191

226266434586384369226175122769277939771131911373717971739337919

2626643458638436922617512276927793977113191137371797173933791

62664345863843692261751227692779397711319113737179717393379

266434586384369226175122769277939771131911373717971739337

6643458638436922617512276927793977113191137371797173933

64345863843692261751227692779397711319113737179717393

434586384369226175122769277939771131911373717971739

3458638436922617512276927793977113191137371797173

45863843692261751227692779397711319113737179717

586384369226175122769277939771131911373717971

8638436922617512276927793977113191137371797

63843692261751227692779397711319113737179

384369226175122769277939771131911373717

8436922617512276927793977113191137371

43692261751227692779397711319113737

369226175122769277939771131911373

6922617512276927793977113191137

92261751227692779397711319113

226175122769277939771131911

2617512276927793977113191

61751227692779397711319

175122769277939771131

7512276927793977113

51227692779397711

122769277939771

2276927793977

27692779397

769277939

6927793

92779

277

7

 

And here are some statistics

 

The number of bi-truncatable Primes of Length 3 is 59, making a total of 59

The number of bi-truncatable Primes of Length 5 is 494, making a running total of 553

The number of bi-truncatable Primes of Length 7 is 2833, making a running total of 3386

The number of bi-truncatable Primes of Length 9 is 12718, making a running total of 16104

The number of bi-truncatable Primes of Length 11 is 46807, making a running total of 62911

The number of bi-truncatable Primes of Length 13 is 141900, making a running total of 204811

The number of bi-truncatable Primes of Length 15 is 377342, making a running total of 582153

The number of bi-truncatable Primes of Length 17 is 877916, making a running total of 1460069

The number of bi-truncatable Primes of Length 19 is 1783865, making a running total of 3243934

The number of bi-truncatable Primes of Length 21 is 3332745, making a running total of 6576679

The number of bi-truncatable Primes of Length 23 is 5693162, making a running total of 12269841

The number of bi-truncatable Primes of Length 25 is 8840023, making a running total of 21109864

The number of bi-truncatable Primes of Length 27 is 12827559, making a running total of 33937423

The number of bi-truncatable Primes of Length 29 is 17284717, making a running total of 51222140

The number of bi-truncatable Primes of Length 31 is 21660200, making a running total of 72882340

The number of bi-truncatable Primes of Length 33 is 25647604, making a running total of 98529944

The number of bi-truncatable Primes of Length 35 is 28554805, making a running total of 127084749

The number of bi-truncatable Primes of Length 37 is 29673844, making a running total of 156758593

The number of bi-truncatable Primes of Length 39 is 29660754, making a running total of 186419347

The number of bi-truncatable Primes of Length 41 is 28530978, making a running total of 214950325

The number of bi-truncatable Primes of Length 43 is 25687627, making a running total of 240637952

The number of bi-truncatable Primes of Length 45 is 22285448, making a running total of 262923400

The number of bi-truncatable Primes of Length 47 is 18646620, making a running total of 281570020

The number of bi-truncatable Primes of Length 49 is 14610420, making a running total of 296180440

The number of bi-truncatable Primes of Length 51 is 11147722, making a running total of 307328162

The number of bi-truncatable Primes of Length 53 is 8209084, making a running total of 315537246

The number of bi-truncatable Primes of Length 55 is 5700667, making a running total of 321237913

The number of bi-truncatable Primes of Length 57 is 3923313, making a running total of 325161226

The number of bi-truncatable Primes of Length 59 is 2644098, making a running total of 327805324

The number of bi-truncatable Primes of Length 61 is 1732683, making a running total of 329538007

The number of bi-truncatable Primes of Length 63 is 1232923, making a running total of 330770930

The number of bi-truncatable Primes of Length 65 is 1044125, making a running total of 331815055

The number of bi-truncatable Primes of Length 67 is 345705, making a running total of 332160760

The number of bi-truncatable Primes of Length 69 is 196214, making a running total of 332356974

The number of bi-truncatable Primes of Length 71 is 107672, making a running total of 332464646

The number of bi-truncatable Primes of Length 73 is 56657, making a running total of 332521303

The number of bi-truncatable Primes of Length 75 is 29827, making a running total of 332551130

The number of bi-truncatable Primes of Length 77 is 15099, making a running total of 332566229

The number of bi-truncatable Primes of Length 79 is 7129, making a running total of 332573358

The number of bi-truncatable Primes of Length 81 is 3404, making a running total of 332576762

The number of bi-truncatable Primes of Length 83 is 1503, making a running total of 332578265

The number of bi-truncatable Primes of Length 85 is 688, making a running total of 332578953

The number of bi-truncatable Primes of Length 87 is 312, making a running total of 332579265

The number of bi-truncatable Primes of Length 89 is 132, making a running total of 332579397

The number of bi-truncatable Primes of Length 91 is 46, making a running total of 332579443

The number of bi-truncatable Primes of Length 93 is 24, making a running total of 332579467

The number of bi-truncatable Primes of Length 95 is 13, making a running total of 332579480

The number of bi-truncatable Primes of Length 97 is 3, making a running total of 332579483

The number of bi-truncatable Primes of Length 99 is 0, making a running total of 332579483

***

On May 6, 2019 Seth Troisi wrote:

I get a slightly different answer than Paul for counts
 
this includes the difference between Paul and my code.

I've also verified that when I count the even length bi-truncatable primes I get the total from OEIS (920720315 = 331780864 + 588939451)

See A077390

(note: Please notice in A077390 the introduction of the "even digits bi-truncatable" concept and results.

...

The number of bi-truncatable Primes of Length 3 is 59 making a running total of 63 smallest is 127 largest is 977
The number of bi-truncatable Primes of Length 5 is 494 making a running total of 557 smallest is 11273 largest is 99719
The number of bi-truncatable Primes of Length 7 is 2833 making a running total of 3390 smallest is 1112731 largest is 9997133
The number of bi-truncatable Primes of Length 9 is 12718 making a running total of 16108 smallest is 111239197 largest is 999859739
The number of bi-truncatable Primes of Length 11 is 46807 making a running total of 62915 smallest is 11121577913 largest is 99998297939
The number of bi-truncatable Primes of Length 13 is 141900 making a running total of 204815 smallest is 1111222777913 largest is 9999982979333
The number of bi-truncatable Primes of Length 15 is 377342 making a running total of 582157 smallest is 111112227779131 largest is 999998953399913
The number of bi-truncatable Primes of Length 17 is 877916 making a running total of 1460073 smallest is 11112237511133797 largest is 99999928579913339
The number of bi-truncatable Primes of Length 19 is 1783865 making a running total of 3243938 smallest is 1111128373377713737 largest is 9999996852379993313
The number of bi-truncatable Primes of Length 21 is 3332745 making a running total of 6576683 smallest is 111112349373993173191 largest is 999999892227397733333
The number of bi-truncatable Primes of Length 23 is 5693162 making a running total of 12269845 smallest is 11111265238273913737979 largest is 99999976597511197997399
The number of bi-truncatable Primes of Length 25 is 8840023 making a running total of 21109868 smallest is 1111112652382739137379797 largest is 9999999512457797719313993
The number of bi-truncatable Primes of Length 27 is 12827559 making a running total of 33937427 smallest is 111111321225757171391737373 largest is 999999995124577977193139933
The number of bi-truncatable Primes of Length 29 is 17284717 making a running total of 51222144 smallest is 11111156958538273719331319731 largest is 99999997313637397997117399933
The number of bi-truncatable Primes of Length 31 is 21660200 making a running total of 72882344 smallest is 1111112171214125113713137797373 largest is 9999999812755255777177399999313
The number of bi-truncatable Primes of Length 33 is 25647604 making a running total of 98529948 smallest is 111111152925239523917713913737319 largest is 999999985171983151131797117339933
The number of bi-truncatable Primes of Length 35 is 28554805 making a running total of 127084753 smallest is 11111114396359726591191991919737373 largest is 99999992364616487739337173193333391
The number of bi-truncatable Primes of Length 37 is 29673844 making a running total of 156758597 smallest is 1111111394999827277371719977197379197 largest is 9999999894152981485937791131313319999
The number of bi-truncatable Primes of Length 39 is 29660754 making a running total of 186419351 smallest is 111111266846556973823779179333919319791 largest is 999999989433553385359113997311791939939
The number of bi-truncatable Primes of Length 41 is 28530978 making a running total of 214950329 smallest is 11111125117311395823531313391119111913731 largest is 99999995322142969928591739311919373199933
The number of bi-truncatable Primes of Length 43 is 25687627 making a running total of 240637956 smallest is 1111111423941135285467717771179797997379197 largest is 9999999931633765662952319917917331793993993
The number of bi-truncatable Primes of Length 45 is 22285448 making a running total of 262923404 smallest is 111111151839224226223659971319973319993137373 largest is 999999999266551257112151731991913133133339333
The number of bi-truncatable Primes of Length 47 is 18647299 making a running total of 281570703 smallest is 11111136121115526459258217199333779797719791919 largest is 99999999922125889827338273371779171919393333333
The number of bi-truncatable Primes of Length 49 is 14610917 making a running total of 296181620 smallest is 1111112873629663899869272777999193919973717313737 largest is 9999999872347562591691382999391371733737339973993
The number of bi-truncatable Primes of Length 51 is 11147972 making a running total of 307329592 smallest is 111111581865896873875492479399117177977913391973731 largest is 999999989686361848386591521731179391133911933939939
The number of bi-truncatable Primes of Length 53 is 8208662 making a running total of 315538254 smallest is 11111244388626565576415911279311991111397117973937373 largest is 99999985257526149565827338273371771797997391911999313
The number of bi-truncatable Primes of Length 55 is 5697725 making a running total of 321235979 smallest is 1111113343859848638259433643331919177733331373993137913 largest is 9999999514253267424246734222793973371131973713119913939
The number of bi-truncatable Primes of Length 57 is 3911948 making a running total of 325147927 smallest is 111111355917567531432437632557931139393719939973119319797 largest is 999999933845395356192724285251173977111137991993919399993
The number of bi-truncatable Primes of Length 59 is 2609130 making a running total of 327757057 smallest is 11111266238983172849833826246771113193793777937373793713737 largest is 99999913529895896991499239395219939939979337193797717139933
The number of bi-truncatable Primes of Length 61 is 1639381 making a running total of 329396438 smallest is 1111121589358869816763783849222799937939917779737131913991979 largest is 9999993232185447391623524558837377113713977999197931913333999
The number of bi-truncatable Primes of Length 63 is 1015824 making a running total of 330412262 smallest is 111111632494563623463839471981853919791913797139331331799379197 largest is 999999693319726811759559919598353731371373193791977173999799993
The number of bi-truncatable Primes of Length 65 is 604159 making a running total of 331016421 smallest is 11111455816739623424673623275918773393731931391731799793311919731 largest is 99999893869797671291388127279374311993171331771937939793797973939
The number of bi-truncatable Primes of Length 67 is 345710 making a running total of 331362131 smallest is 1111165784523997285414255962889325793197731733799119393193339991319 largest is 9999998938697976712913881272793743119931713317719379397937979739393
The number of bi-truncatable Primes of Length 69 is 196217 making a running total of 331558348 smallest is 111128592296566913952295645219569277937393199377973777933139117193137 largest is 999999989386979767129138812727937431199317133177193793979379797393933
The number of bi-truncatable Primes of Length 71 is 107676 making a running total of 331666024 smallest is 11112763857893261612258426836631968213373193197777113917397931919119197 largest is 99999684269887519211763537268461598297399777117973737771793131711319339
The number of bi-truncatable Primes of Length 73 is 56658 making a running total of 331722682 smallest is 1111949548899713293532885676334976135973397193191117139973311317711739737 largest is 9999986396948965863792856333185686243371799133933137939379799993999739999
The number of bi-truncatable Primes of Length 75 is 29829 making a running total of 331752511 smallest is 111126413256259638515532227525932363739793793197919191131391931191119911319 largest is 999995626951179932226387923284957183337799719931979973979173913719919719939
The number of bi-truncatable Primes of Length 77 is 15099 making a running total of 331767610 smallest is 11114659823539213822234529812682297994219993779793197399113739913977139997373 largest is 99999673332685119811826838122166898684211371933397937371173917319137997933991
The number of bi-truncatable Primes of Length 79 is 7129 making a running total of 331774739 smallest is 1112327386562529238195185397932681829757739193371391371991377773917371791191319 largest is 9999133762511814625597929516837829279213979391979331711137917771371317311319331
The number of bi-truncatable Primes of Length 81 is 3404 making a running total of 331778143 smallest is 111798631563265892275145868571326283636673339713377137379191139797719937999791319 largest is 999991337625118146255979295168378292792139793919793317111379177713713173113193319
The number of bi-truncatable Primes of Length 83 is 1503 making a running total of 331779646 smallest is 11184462681535435471932563931263281853242293917937991119997191973773379777173733313 largest is 99959466838426931232834333487127579254623593931971197139339371371177993393197173333
The number of bi-truncatable Primes of Length 85 is 688 making a running total of 331780334 smallest is 1188343588967712954678342373778385882223695399171117337373933331139371137973171777337 largest is 9992998623592385239837297453721893534779743179373393199117113333931911331377937331939
The number of bi-truncatable Primes of Length 87 is 312 making a running total of 331780646 smallest is 113495799496231165686351386519288968985534773779119119773777199397979191999917917193319 largest is 999868762382316493496746826335871842925432173993773333377739113931737999971973777797339
The number of bi-truncatable Primes of Length 89 is 132 making a running total of 331780778 smallest is 12482382157387611823537358967349637197653899377331119979731393937771391131171939997317933 largest is 99998687623823164934967468263358718429254321739937733333777391139317379999719737777973399
The number of bi-truncatable Primes of Length 91 is 46 making a running total of 331780824 smallest is 1689533827176778332399656143667332656323457682393111193793393393739333317399979919139719911 largest is 9816243716559328724423313742166815649412332327173797793179933777379339773337373319917113919
The number of bi-truncatable Primes of Length 93 is 24 making a running total of 331780848 smallest is 193436592959695989528296138838373723349834962137997191993339311911911731311791973939197137977 largest is 988338743832924485458216838156556952757622212859137731179919173117131177179919771133173339717
The number of bi-truncatable Primes of Length 95 is 13 making a running total of 331780861 smallest is 18883387438329244854582168381565569527576222128591377311799191731171311771799197711331733397179 largest is 89883387438329244854582168381565569527576222128591377311799191731171311771799197711331733397173
The number of bi-truncatable Primes of Length 97 is 3 making a running total of 331780864 smallest is 1287821989562612222626643458638436922617512276927793977113191137371797173933791911399373799979319 largest is 7228828176786792552781668926755667258635743361825711373791931117197999133917737137399993737111177

***

 

On May 7, 2019 Paul Cleary, who was advised by me about the results sent by Seth Troisi, accepted that the Troisi's results were the good ones.

 

***

 


Records   |  Conjectures  |  Problems  |  Puzzles