use strict;
use Digest::SHA3 qw(sha3_512_hex);
my @vecs = map { eval } <DATA>;
my $numtests = scalar(@vecs) / 2;
print "1..$numtests\n";
for (1 .. $numtests) {
my $data = shift @vecs;
my $digest = shift @vecs;
print "not " unless sha3_512_hex($data) eq $digest;
print "ok ", $_, "\n";
}
__DATA__
"abc"
"18587dc2ea106b9a1563e32b3312421ca164c7f1f07bc922a9c83d77cea3a1e5d0c69910739025372dc14ac9642629379540c17e2a65b19d77aa511a9d00bb96"
"abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
"6aa6d3669597df6d5a007b00d09c20795b5c4218234e1698a944757a488ecdc09965435d97ca32c3cfed7201ff30e070cd947f1fc12b9d9214c467d342bcba5d"
"a" x 1000000
"5cf53f2e556be5a624425ede23d0e8b2c7814b4ba0e4e09cbbf3c2fac7056f61e048fc341262875ebc58a5183fea651447124370c1ebf4d6c89bc9a7731063bb"