use strict;
use warnings;
use Test::More;
plan tests => 1;
use PPR;
my $hello_world = <<'END_SOURCE';
''=~('(?{'.('`'|'%').('['^'-').('`'|'!').('`'|',').'"'.('['^'.').('['^'(').('`'
|+ ((
(( ((
(( ((
(( '%'))))))))))))) .(
(( '{'))^'[').('^'^(('`')| ((
(( '+')))))).'.'.('^'^('`'|'.')). +(
(( '^')) ^((( ((
(( '`') ))) ))
|+ '/') ).( ((
(( '^') ) ))^ +(
(( '`') ) |(( ((
(( '.') )) ) ))) ).
(( ';') ) . ((( ((
(( '[' )) )) ))^ ((
(( '(' )) ) )). +(
(( '`' ))|+ ( '!' ))
.( '[' ^'"' ) .+( ((
(( '{' )))) ^ '[' ).
(( ((( '\\'))))) . '"' .(
(( '`' )) ^ (( ((
(( '(' )) ) )) ))
.( '`' | ( (( ((
(( '%' ) ))))) ))
.( '`' | (( ((
(( ',' ) )))))).('`'|',').('`'|'/').','.(('{')^ ((
(( '[' ))))).("\{"^ "\,").( ( ( "\`"))| ( ((
(( '/' ) ) ))) ).( (( ( ( (( '[' ))) ) ))
^+ ')' ) . ('`'|"\,").( ( ( '`'))|"\$"). ( ((
(( '!' ) ) ) ) ) .+
(( (( ((( ( ( ( (( ( ((
(( (( ( '\\') ) ) )) ) ))
)) )) ) ) ) ) ) ) ))
.+ (( ( '"' ))).';"})');$:= ( '.')^'~';$~= ((
(( (( ( ( ( ( ((
(( ( ( ( ( ( ((
(( ( ( ( '@' ) ) ))
)) ) ))) )) ) ))
)) ) ) )))))))|'(';$^=(')')^ ( ((
(( ( ( '[')))))));$/='`'|'.';$, = ((
(( ( ( '('))))))^'}';$\='`'|"\!"; ( $:
)= ( ( ')')) ^'}';$~=('*')| '`'; ( $^
)= ( ( '+') ) ^ '_' ; $/
=( (( '&' )))|'@';$,="\["& '~' ;(
$\ ) = ((
(( ( ( ((
(( ( ( ((
(( ( ( ( ((
(( ( ( ( ((
(( ( ( ( ((
(( ( ( ( ((
(( ( ( ( ( ((
(( ( ( ( ( ((
(( ( ',' )) ) ))
)) ) ))))))))))) ) ))
)) ))
)) ))
)) ))
)))))))))))))))))))))))))))^'|';$:='.'^'~';$~='@'|'(';$^=')'^'[';$/='`'|'.';#;#
END_SOURCE
ok $hello_world =~ m{ \A (?&PerlOWS) (?&PerlDocument) (?&PerlOWS) \Z $PPR::GRAMMAR }xms
=> "matched Acme::Eyedrops Hello, World!";
done_testing();