user
A Honaker prime is a prime whose digital sum is equal to the digital sum of its position in the sequence of primes.

E.G.

If you look at the sequence of positive integer primes the first prime is **2** at position **1**. The digital sums of **2** and **1** are not equal, so **2** is **not** a Honaker prime. The prime at position **32**: **131** *is* a Honaker prime. The digital sum of **32** (**5**) is equal to the digital sum of **131** (**5**).

Task

* Write a routine (procedure, function, filter, whatever it may be called in your language) to identify Honaker primes.
* Use that routine to find the first fifty Honaker primes and display the position and value for each.

Stretch

* Find and display the ten thousandth Honaker prime (position and value).

See also

* OEIS:A033548 - Honaker primes * Numbers Aplenty - Honaker primes
assistant
```
my @honaker = lazy (^∞).hyper.grep(&is-prime).kv.grep: (1 + *).comb.sum == *.comb.sum;

say "First 50 Honaker primes (index, prime):\n" ~ @honaker[^50].map(&format).batch(5).join: "\n";
say "\nTen thousandth: " ~ @honaker[9999].&format;

sub format ($_) { sprintf "(%3d, %4d)", 1 + .[0], .[1] }

```

Output:

```
First 50 Honaker primes (index, prime):
( 32,  131) ( 56,  263) ( 88,  457) (175, 1039) (176, 1049)
(182, 1091) (212, 1301) (218, 1361) (227, 1433) (248, 1571)
(293, 1913) (295, 1933) (323, 2141) (331, 2221) (338, 2273)
(362, 2441) (377, 2591) (386, 2663) (394, 2707) (397, 2719)
(398, 2729) (409, 2803) (439, 3067) (446, 3137) (457, 3229)
(481, 3433) (499, 3559) (508, 3631) (563, 4091) (571, 4153)
(595, 4357) (599, 4397) (635, 4703) (637, 4723) (655, 4903)
(671, 5009) (728, 5507) (751, 5701) (752, 5711) (755, 5741)
(761, 5801) (767, 5843) (779, 5927) (820, 6301) (821, 6311)
(826, 6343) (827, 6353) (847, 6553) (848, 6563) (857, 6653)

Ten thousandth: (286069, 4043749)
```