7¤0ìÑ9R{LˆDc       B     ÀÜ0öäÁ¹)ôS:^ˆ'ì‘Ée	Ž ¦¡êiØ—k[ Ùî&"Ôbk°ßX 3ÀNr÷ 6ƒ 
FÃñˆH(×…õ Á“¥˜‘fâ4Ëa…ŒBÆB     $ñjµ™™BÆˆ€                 class;

    # The lock_keys() prototype won't work since we require Hash::Util :(
    &Hash::Util::lock_keys(\%$self, _accessible_keys($class));
    return $self;
  }
}

sub _accessible_keys {
    my ($class) = @_;
    return (
        keys %{$class.'::FIELDS'},
        map(_accessible_keys($_), @{$class.'::ISA'}),
    );
}

sub phash {
    die "Pseudo-hashes have been removed from Perl" if $] >= 5.009;
C'\fR and import \f(CWclone_negate()\fR and \f(CWtoggle_negate()\fR.
.SH WHY?
.IX Header "WHY?"
Until perl 5.18 the \*(Aqfallback\*(Aq parameter to overload would not be inherited,
so we cannot use inheritance for the behavior we actually want. This module
works around the problem by emulating the \f(CW\*(C`use overload\*(C'\fR call we want for each
consumer class.
.SH ATTRIBUTES
.IX Header "ATTRIBUTES"
.ie n .IP "$bool = $obj\->negate" 4
.el .IP "\f(CW$bool\fR = \f(CW$obj\fR\->negate" 4
.IX Item "$bool = $obj->negate"
.PD 0
.ie n l. A single underscore character ("_") may be placed between any two
digits. If the input is invalid, a NaN is returned. The exponent is in base 2
using decimal digits.
.Sp
If called as an instance method, the value is assigned to the invocand.
.IP \fBfrom_bytes()\fR 4
.IX Item "from_bytes()"
.Vb 1
\&    $x = Math::BigFloat\->from_bytes("\exf3\ex6b");  # $x = 62315
.Ve
.Sp
Interpret the input as a byte string, assuming big endian byte order. The
output is always a non\-negative, finite integer.
.Sp
See "\fBfrom_bytes()\fR" in Math:n be treated as a
latin1\-encoded JSON text or a native Unicode string. The \f(CW\*(C`decode\*(C'\fR method
will not be affected in any way by this flag, as \f(CW\*(C`decode\*(C'\fR by default
expects Unicode, which is a strict superset of latin1.
.PP
If \f(CW$enable\fR is false, then the \f(CW\*(C`encode\*(C'\fR method will not escape Unicode
characters unless required by the JSON syntax or other flags.
.PP
See also the section \fIENCODING/CODESET FLAG NOTES\fR later in this document.
.PP
The main use for this flag is efficiently Utils::ParseXS::Node\*(C'\fR class, and its various subclasses, hold the
state for the nodes of an Abstract Syntax Tree (AST), which represents the
parsed state of an XS file.
.PP
Each node is a hash of fields. Which field names are legal varies by the
node type. The hash keys and values can be accessed directly: there are no
getter/setter methods.
.PP
Each node may have a \f(CW\*(C`kids\*(C'\fR field which points to an array of all the
children of that node: this is what provides the tree structure. In
addition, some of those kidsThis dummy class exists to signal that the class inheriting it should
be skipped when reporting exceptions from autodie.  This is useful
for utility classes like Path::Tiny that wish to report the location
of where they were called on failure.
.PP
If your class has a better way of doing roles, then you should not
load this class and instead simply say that your class \fIDOES\fR
\&\f(CW\*(C`autodie::skip\*(C'\fR instead.
.SH AUTHOR
.IX Header "AUTHOR"
Copyright 2013, Paul Fenwick <pjf@cpan.org>
.SH LICENSE
.IX Header "LICENSE"
This $got && $expected );
\&    cmp_ok( $got, \*(Aq&&\*(Aq, $expected, \*(Aqthis && that\*(Aq );
\&    ...etc...
.Ve
.Sp
Its advantage over \f(CWok()\fR is when the test fails you\*(Aqll know what \f(CW$got\fR
and \f(CW$expected\fR were:
.Sp
.Vb 5
\&    not ok 1
\&    #   Failed test in foo.t at line 12.
\&    #     \*(Aq23\*(Aq
\&    #         &&
\&    #     undef
.Ve
.Sp
It\*(Aqs also useful in those cases where you are comparing numbers and
\&\f(CWis()\fR\*(Aqs use of \f(CW\*(C`eq\*(C'\fR will interfere:
.Sp
.Vb 1
\&    cmp_ok( $big_Aq)\*(C'\fR will return
\&\f(CW\*(C`qr/^#(.*)/\*(C'\fR.
.PP
\fR\f(CI\*(C`handler_for\*(C'\fR\fI\fR
.IX Subsection "handler_for"
.PP
.Vb 1
\&  my $handler = $grammar\->handler_for($token_type);
.Ve
.PP
Returns a code reference which, when passed an appropriate line of TAP,
returns the lexed token corresponding to that line.  As a result, the basic
TAP parsing loop looks similar to the following:
.PP
.Vb 10
\& my @tokens;
\& my $grammar = TAP::Grammar\->new;
\& LINE: while ( defined( my $line = $parser\->_next_chunk_of_tap ) ) {
\&  ethod only works on Perl v5.9.4 or later.
.IP \fBhex()\fR/\fBoct()\fR 4
.IX Item "hex()/oct()"
\&\f(CW\*(C`bigfloat\*(C'\fR overrides these routines with versions that can also handle big
integer values. Under Perl prior to version v5.9.4, however, this will not
happen unless you specifically ask for it with the two import tags "hex" and
"oct" \- and then it will be global and cannot be disabled inside a scope with
\&\f(CW\*(C`no bigfloat\*(C'\fR:
.Sp
.Vb 1
\&    use bigfloat qw/hex oct/;
\&
\&    print hex("0x1234567890123456");
\Pod::Man v6.0.2 (Pod::Simple 3.48)
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
.ie n \{\
.    ds C` ""
.    ds C' ""
'br\}
.el\{\
.    ds C`
.    ds C'
'br\}
.\"
.\" Escape single quotes in literal strings from groff's Unicode traPTION"
This module\*(Aqs default exports override the core \fBgetprotoent()\fR,
\&\fBgetprotobyname()\fR, and \fBgetnetbyport()\fR functions, replacing them with
versions that return "Net::protoent" objects.  They take default
second arguments of "tcp".  This object has methods that return the
similarly named structure field name from the C\*(Aqs protoent structure
from \fInetdb.h\fR; namely name, aliases, and proto.  The aliases method
returns an array reference, the rest scalars.
.PP
You may also import all the structure fields dr until it reaches the
uncompressed offset specified in the parameters to \f(CW\*(C`seek\*(C'\fR. For very small
files this may be acceptable behaviour. For large files it may cause an
unacceptable delay.
.PP
The \f(CW$whence\fR parameter takes one the usual values, namely SEEK_SET,
SEEK_CUR or SEEK_END.
.PP
Returns 1 on success, 0 on failure.
.SS binmode
.IX Subsection "binmode"
Usage is
.PP
.Vb 2
\&    $z\->binmode
\&    binmode $z ;
.Ve
.PP
This is a noop provided for completeness.
.SS opened
.IX Subsection "opened"
.Vb 1
\&    ion is only valid when the \f(CW$output\fR parameter is a filehandle. If
specified, and the value is true, it will result in the \f(CW$output\fR being
closed once either the \f(CW\*(C`close\*(C'\fR method is called or the \f(CW\*(C`IO::Compress::Gzip\*(C'\fR
object is destroyed.
.Sp
This parameter defaults to 0.
.ie n .IP """Append => 0|1""" 5
.el .IP "\f(CWAppend => 0|1\fR" 5
.IX Item "Append => 0|1"
Opens \f(CW$output\fR in append mode.
.Sp
The behaviour of this option is dependent on the type of \f(CW$output\fR.
.RS 5
.IP \(bu 5mpressed
data to the file \f(CW\*(C`file1.txt.gz\*(C'\fR.
.PP
.Vb 3
\&    use strict ;
\&    use warnings ;
\&    use IO::Compress::Gzip qw(gzip $GzipError) ;
\&
\&    my $input = "file1.txt";
\&    gzip $input => "$input.gz"
\&        or die "gzip failed: $GzipError\en";
.Ve
.PP
\fIReading from a Filehandle and writing to an in\-memory buffer\fR
.IX Subsection "Reading from a Filehandle and writing to an in-memory buffer"
.PP
To read from an existing Perl filehandle, \f(CW$input\fR, and write the
compressed data to a buffer, \f(CW the software tree is installed.
.PP
If \f(CW\*(C`perl\*(C'\fR is invoked using the \f(CW\*(C`\-e\*(C'\fR option or the Perl script is read from
\&\f(CW\*(C`STDIN\*(C'\fR, then \f(CW\*(C`FindBin\*(C'\fR sets both \f(CW$Bin\fR and \f(CW$RealBin\fR to the current
directory.
.SH "EXPORTABLE VARIABLES"
.IX Header "EXPORTABLE VARIABLES"
.ie n .IP "$Bin or $Dir" 4
.el .IP "\f(CW$Bin\fR or \f(CW$Dir\fR" 4
.IX Item "$Bin or $Dir"
Path to the bin \fBdirectory\fR from where script was invoked
.ie n .IP $Script 4
.el .IP \f(CW$Script\fR 4
.IX`READ\*(C'\fR, \f(CW\*(C`WRITE\*(C'\fR and \f(CW\*(C`EXCEPTION\*(C'\fR are either \f(CW\*(C`undef\*(C'\fR or
\&\f(CW\*(C`IO::Select\*(C'\fR objects. \f(CW\*(C`TIMEOUT\*(C'\fR is optional and has the same effect as
for the core select call.
.Sp
If at least one handle is ready for the specified kind of operation,
the result will be an array of 3 elements, each a reference to an array
which will hold the handles that are ready for reading, writing and
have exceptions respectively.  Upon timeout, an empty list is returned,
with \f(CW$!O"
.IX Header "SEE ALSO"
Test2::Manual \- Primary index of the manual.
.SH SOURCE
.IX Header "SOURCE"
The source code repository for Test2\-Manual can be found at
\&\fIhttps://github.com/Test\-More/test\-more/\fR.
.SH MAINTAINERS
.IX Header "MAINTAINERS"
.IP "Chad Granum <exodist@cpan.org>" 4
.IX Item "Chad Granum <exodist@cpan.org>"
.SH AUTHORS
.IX Header "AUTHORS"
.IP "Chad Granum <exodist@cpan.org>" 4
.IX Item "Chad Granum <exodist@cpan.org>"
.SH COPYRIGHT
.IX Header "COPYRIGHT"
Copyright Chad Granum <exodist@cpan.org>.
.PP
Thiswork for parsing Pod
.SH SYNOPSIS
.IX Header "SYNOPSIS"
.Vb 4
\&    # using an existing formatter
\&    use Pod::Simple::XHTML;
\&    my $parser = Pod::Simple::XHTML\->new;
\&    $parser\->parse_file(\*(Aqpath/to/file.pod\*(Aq);
\&
\&    # creating a new formatter
\&    package Pod::Simple::SomeFormatter;
\&    use parent qw(Pod::Simple);
\&    sub _handle_element_start {
\&        my ($parser, $element_name, $attr_hash_r) = @_;
\&        ...
\&    }
\&    ...
.Ve
.SH DESCRIPTION
.IX Header "DESCRIPTION"
Pod::Simple is a Perl libra.Sp
.Vb 2
\&    use Encode;
\&    my $data = $tar\->get_content();
\&
\&    # Make it a Unicode string
\&    $data = decode(\*(Aqutf8\*(Aq, $data);
.Ve
.Sp
There is no easy way to provide this functionality in \f(CW\*(C`Archive::Tar\*(C'\fR,
because a tarball can contain many files, and each of which could be
encoded in a different way.
.SH CAVEATS
.IX Header "CAVEATS"
The AIX tar does not fill all unused space in the tar archive with 0x00.
This sometimes leads to warning messages from \f(CW\*(C`Archive::Tar\*(C'\fR.
.PP
.Vb 1
\&    4        true       |   yes    no       yes          no         yes
\&  \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
\&   note: if variable => non\-ignorable, camel doesn\*(Aqt match c\-a\-m\-e\-l
\&         at any level.
.Ve
.SS "Other Methods"
.IX Subsection "Other Methods"
.ie n .IP """%old_tailoring = $Collator\->change(%new_tailoring)""" 4
.el .IP "\f(CW%old_tailoring = $Collator\->change(%new_tailoring)\fR" 4
.IX Item "2"
..
.        if !\nF==2 \{\
.            nr % 0
.            nr F 2
.        \}
.    \}
.\}
.rr rF
.\"
.\" Required to disable full justification in groff 1.23.0.
.if n .ds AD l
.\" ========================================================================
.\"
.IX Title "Test2::Compare::Bag 3"
.TH Test2::Compare::Bag 3 2026-06-22 "perl v5.44.0" "Perl Programmers Reference Guide"
.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH NAME
Te
.IX Header "AUTHOR"
Tom Christiansen
.\" -*- mode: troff; coding: utf-8 -*-
.\" Automatically generated by Pod::Man v6.0.2 (Pod::Simple 3.48)
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
.ie n \{\
.    ds C` ""
.    ds C' ""
'br\}ft;
    my %hash = @_;

    my ($to);
    my $tmpl = {
        to  => { required => 1, store => \$to }
    };
    check( $tmpl, \%hash ) or return;

    ### see if we have a ftp binary ###
    my $ftp;
    unless( $ftp = can_run('ftp') ) {
        $METHOD_FAIL->{'ftp'} = 1;
        return;
    }

    my $fh = FileHandle->new;

    local $SIG{CHLD} = 'IGNORE';

    unless ($fh->open("$ftp -n", '|-')) {
        return $self->_error(loc("%1 creation failed: %2", $ftp, $!));
    }

    my @dialog = (
        "lcd " . dirname($to),
        # Open the temp directory
      if (mkdir( $path, 0700)) {
        # in case of odd umask
        chmod(0700, $path);

        return undef, $path;
      } else {

        # Abort with error if the reason for failure was anything
        # except EEXIST
        unless ($!{EEXIST}) {
          ${$options{ErrStr}} = "Could not create directory $path: $!";
          return ();
        }

        # Loop round for another try

      }

    } else {

      # Return true if the file can not be found
      # Directory has been checked 
  my $count = 0;
  my($disrec,$tag,$name);
  my $last_name = '';
  while(<I18N::LangTags::List::DATA>) {
    if($seeking) {
      $seeking = 0 if m/=for woohah/;
    } elsif( ($disrec, $tag, $name) =
          m/(\[?)\{([-0-9a-zA-Z]+)\}(?:\s*:)?\s*([^\[\]]+)/
    ) {
      $name =~ s/\s*[;\.]*\s*$//g;
      next unless $name;
      ++$count;
      print "<$tag> <$name>\n" if $Debug;
      $last_name = $Name{$tag} = $name;
      $Is_Disrec{$tag} = 1 if $disrec;
    } elsif (m/[Ff]ormerly \"([-a-z0-9]+)\"/) {
      $Name{$1} = "$lasternal format is UTF-8 to your advantage. Encode
explicitly to avoid weird bugs, and to show to maintenance programmers that you
thought this through.

=head2 Is there a way to automatically decode or encode?

If all data that comes from a certain handle is encoded in exactly the same
way, you can tell the PerlIO system to automatically decode everything, with
the C<encoding> layer. If you do this, you can't accidentally forget to decode
or encode anymore, on things that use the layered handle.

You can provide this layer when C<opupdated since Perl 5.8.1:

=over 4

=item Devel::PPPort

=item Digest::MD5

=item I18N::LangTags

=item libnet

=item MIME::Base64

=item Pod::Perldoc

=item strict

Documentation improved

=item Tie::Hash

Documentation improved

=item Time::HiRes

=item Unicode::Collate

=item Unicode::Normalize

=item UNIVERSAL

Documentation improved

=back

=head1 Selected Bug Fixes

Some syntax errors involving unrecognized filetest operators are now handled
correctly by the parser.

=head1 Changed Internals

Interpreter initialization is mor> being populated, and
filetest bypasses stat().

=head2 UTF-8 problems

The handling of Unicode still is unclean in several places, where it's
dependent on whether a string is internally flagged as UTF-8. This will
be made more consistent in perl 5.12, but that won't be possible without
a certain amount of backwards incompatibility.

=head1 Platform Specific Problems

When compiled with g++ and thread support on Linux, it's reported that the
C<$!> stops working correctly. This is related to the fact that the glibc
provides two strll could not execute the
named program for the indicated reason.  Typical reasons include: the
permissions were wrong on the file, the file wasn't found in
C<$ENV{PATH}>, the executable in question was compiled for another
architecture, or the #! line in a script points to an interpreter that
can't be run for similar reasons.  (Or maybe your system doesn't support
#! at all.)

=item Can't exec %s

(F) Perl was trying to execute the indicated program for you because
that's what the #! line said.  If that's not what you wanted, you med.

=over 3

 void       save_rcpv(      char **prcpv)
 void  Perl_save_rcpv(pTHX_ char **prcpv)

=back

=back

=for hackers
Declared at embed.fnc, line 3201; documented at scope.c, line 389

=over 4

=item C<save_scalar_at>
X<save_scalar_at>

A helper function for localizing the SV referenced by C<*sptr>.

If C<SAVEf_KEEPOLDELEM> is set in in C<flags>, the function returns the input
scalar untouched.

Otherwise it replaces C<*sptr> with a new C<undef> scalar, and returns that.
The new scalar will have the old one's magic (if any)urrent package
(or globally by importing them into the CORE::GLOBAL:: namespace).
Overriding C<require> will also affect C<use>, provided the override
is visible at compile-time.
See L<perlsub/"Overriding Built-in Functions">.

=head2 $^X variables may now have names longer than one character

Formerly, $^X was synonymous with ${"\cX"}, but $^XY was a syntax
error.  Now variable names that begin with a control character may be
arbitrarily long.  However, for compatibility reasons, these variables
I<must> be written with explicit brpriate to send to a publicly archived mailing list, then please send it
to perl5-security-report@perl.org.  This points to a closed subscription
unarchived mailing list, which includes all the core committers, who will be
able to help assess the impact of issues, figure out a resolution, and help
co-ordinate the release of patches to mitigate or fix the problem across all
platforms on which Perl is supported.  Please only use this address for
security issues in the Perl core, not for modules independently distributed on
CPAN.

=hea the future.
The compound form is guaranteed to not become obsolete, and its meaning is
clearer anyway.  See L<perlunicode/"Blocks"> for more information about this.

User-defined properties must begin with "In" or "Is".  These override any
Unicode property of the same name.


=back

=back

The table below has two columns.  The left column contains the C<\p{}>
constructs to look up, possibly preceded by the flags mentioned above; and
the right column contains information about them, like a description, or
synonyms.  The table showsnd libraries. Earlier releases will suffer a greater
load time than either the static library, or Apple's pre-bound dynamic library.

=head2 Updating Apple's Perl

In a word - don't, at least not without a *very* good reason. Your scripts
can just as easily begin with "#!/usr/local/bin/perl" as with
"#!/usr/bin/perl". Scripts supplied by Apple and other third parties as
part of installation packages and such have generally only been tested
with the /usr/bin/perl that's installed by Apple.

If you find that you do need to update thehat if a developer only needs a module for the BAR standard,
they should not be forced to install libraries for FOO as well.

=head2 What's in a name?

Make sure you choose an appropriate name for your module early on.  This
will help people find and remember your module, and make programming
with your module more intuitive.

When naming your module, consider the following:

=over 4

=item *

Be descriptive (i.e. accurately describes the purpose of the module).

=item *

Be consistent with existing modules.

=item *

Reflect the fu $filename =~ s{
      ^ ~             # find a leading tilde
      (               # save this in $1
          [^/]        # a non-slash character
                *     # repeated 0 or more times (0 means me)
      )
    }{
      $1
          ? (getpwnam($1))[7]
          : ( $ENV{HOME} || $ENV{LOGDIR} )
    }ex;

=head2 When I open a file read-write, why does it wipe it out?
X<clobber> X<read-write> X<clobbering> X<truncate> X<truncating>

Because you're using something like this, which truncates the file
I<then> gives you read-wcally interpolated into lists.  See L<perlfunc/wantarray>
for how you would dynamically discern your function's calling
context.

=head2 Scalar values
X<scalar> X<number> X<string> X<reference>

All data in Perl is a scalar, an array of scalars, or a hash of
scalars.  A scalar may contain one single value in any of three
different flavors: a number, a string, or a reference.  In general,
conversion from one form to another is transparent.  Although a
scalar may not directly hold multiple values, it may contain a
reference to an arrd'} = 17	${$href}{'red'} = 17  Assigning an element

Whatever you want to do with a reference, B<Use Rule 1> tells you how
to do it.  You just write the Perl code that you would have written
for doing the same thing to a regular array or hash, and then replace
the array or hash name with C<{$reference}>.  "How do I loop over an
array when all I have is a reference?"  Well, to loop over an array, you
would write

        for my $element (@array) {
          ...
        }

so replace the array name, C<@array>, with the reference:

  ted modules have been updated to the
newest versions from CPAN: CGI, CPAN, DB_File, File::Spec, File::Temp,
Getopt::Long, Math::BigFloat, Math::BigInt, the podlators bundle
(Pod::Man, Pod::Text), Pod::LaTeX [561+], Pod::Parser, Storable,
Term::ANSIColor, Test, Text-Tabs+Wrap.

=item *

attributes::reftype() now works on tied arguments.

=item *

AutoLoader can now be disabled with C<no AutoLoader;>.

=item *

B::Deparse has been significantly enhanced by Robin Houston.  It can
now deparse almost all of the standard test suite (so ted to have a previous appropriate
value in them.

=head1 EXAMPLES

=head2 â„ž 0: Standard preamble

Unless otherwise noted, all examples below require this standard preamble
to work correctly, with the C<#!> adjusted to work on your system:

 #!/usr/bin/env perl

 use v5.36;     # or later to get "unicode_strings" feature,
                #   plus strict, warnings
 use utf8;      # so literals and identifiers can be in UTF-8
 use warnings  qw(FATAL utf8);    # fatalize encoding glitches
 use open      qw(:std :encoding(UTF-8)); # uto coordinate the interactions
between themselves and their data, to avoid race conditions and the like.
Some of these are designed to resemble the common techniques used in thread
libraries such as C<pthreads>; others are Perl-specific. Often, the
standard techniques are clumsy and difficult to get right (such as
condition waits). Where possible, it is usually easier to use Perlish
techniques such as queues, which remove some of the hard work involved.

=head2 Controlling access: lock()

The C<lock()> function takes a shared variaif your subroutines
recurse more than 100 deep; and innumerable other things.

This switch really just enables the global C<$^W> variable; normally,
the lexically scoped C<use warnings> pragma is preferred. You
can disable or promote into fatal errors specific warnings using
C<__WARN__> hooks, as described in L<perlvar> and L<perlfunc/warn>.
See also L<perldiag> and L<perltrap>.  A fine-grained warning
facility is also available if you want to manipulate entire classes
of warnings; see L<warnings>.

=item B<-W>
X<-W>

Enables all w take precedence over fixes for the previous
release series.

=item *

To the best of our ability, we will provide "critical" security patches
/ releases for any major version of Perl whose 5.x.0 release was within
the past three years.  We can only commit to providing these for the
most recent .y release in any 5.x.y series.

=item *

We will not provide security updates or bug fixes for development
releases of Perl.

=item *

We encourage vendors to ship the most recent supported release of
Perl at the time of their code freeze.
ed, not those that were already installed.

=item *

Add comments to the code explaining what you are testing for.

=item *

Make updating the '1..42' string unnecessary.  Or make sure that you
update it.

=item *

Test _all_ behaviors of a given operator, library, or function.

Test all optional arguments.

Test return values in various contexts (boolean, scalar, list, lvalue).

Use both global and lexical variables.

Don't forget the exceptional, pathological cases.

=back

=head2 Patching a core module

This works just like patce error handling.

=item *

L<Term::ReadLine> has been upgraded to 1.10.  This fixes the
use of the B<cpan> and B<cpanp> shells on Windows in the event that the current
drive happens to contain a F<\dev\tty> file.

=item *

L<Test::Harness> has been upgraded to 3.26.

Fix glob semantics on Win32 [rt.cpan.org #49732].

Don't use C<Win32::GetShortPathName> when calling perl [rt.cpan.org #47890].

Ignore -T when reading shebang [rt.cpan.org #64404].

Handle the case where we don't know the wait status of the test more
gracefully.

Makare known to have contributed
the improvements that became Perl 5.26.1:

Aaron Crane, Andy Dougherty, Aristotle Pagaltzis, Chris 'BinGOs' Williams,
Craig A. Berry, Dagfinn Ilmari MannsÃ¥ker, David Mitchell, E. Choroba, Eric
Herman, Father Chrysostomos, Jacques Germishuys, James E Keenan, John SJ
Anderson, Karl Williamson, Ken Brown, Lukas Mai, Matthew Horsfall, Ricardo
Signes, Sawyer X, Steve Hay, Tony Cook, Yves Orton, Zefram.

The list above is almost certainly incomplete as it is automatically generated
from version control histC<$pattern> after the first substitution happens, Perl
will ignore it.  If you don't want any substitutions at all, use the
special delimiter C<m''>:

    @pattern = ('Seuss');
    while (<>) {
        print if m'@pattern';  # matches literal '@pattern', not 'Seuss'
    }

Similar to strings, C<m''> acts like apostrophes on a regexp; all other
C<'m'> delimiters act like quotes.  If the regexp evaluates to the empty string,
the regexp in the I<last successful match> is used instead.  So we have

    "dog" =~ /d/;  # 'd' matches
    issues/20763>]

=head2 Calling the import method of an unknown package produces a warning

Historically, it has been possible to call the C<import> or C<unimport> method of
any class, including ones which have not been defined, with an argument and not
experience an error.  For instance, this code will not throw an error in Perl
5.38:

    Class::That::Does::Not::Exist->import("foo");

However, as of Perl 5.39.1 this is deprecated and will issue a warning. Note
that calling these methods with no arguments continues to silently succ LETTER I WITH DOT ABOVE (U+0130); and the lowercase of C<"I"> is LATIN
SMALL LETTER DOTLESS I (U+0131).  Unicode furnishes alternate casing
rules for use with Turkic languages.  Previously, Perl ignored these,
but now, it uses them when it detects that it is operating under a
Turkic UTF-8 locale.

=head2 It is now possible to compile perl to always use thread-safe locale operations

Previously, these calls were only used when the perl was compiled to be
multi-threaded.  To always enable them, add

 -Accflags='-DUSE_THREAD_SAFE_LOCspond.  That means only the Latin script is suitable for these,
and Unicode has only two sets of these, the familiar ASCII set, and the
fullwidth forms starting at U+FF10 (FULLWIDTH DIGIT ZERO).

=back

There are various other synonyms that can be used besides the names
listed in the table.  For example, C<\p{XPosixAlpha}> can be written as
C<\p{Alpha}>.  All are listed in
L<perluniprops/Properties accessible through \p{} and \P{}>.

Both the C<\p> counterparts always assume Unicode rules are in effect.
On ASCII platforms, this mea      line 4

The left-hand character up there indicates the context in which the
function was called, with C<$> and C<@> meaning scalar or list
contexts respectively, and C<.> meaning void context (which is
actually a sort of scalar context).  The display above says
that you were in the function C<main::infested> when you ran the
stack dump, and that it was called in scalar context from line
10 of the file I<Ambulation.pm>, but without any arguments at all,
meaning it was called as C<&infested>.  The next stack frame shows
that thterprising users.  If you fall into either category, just
manually set the $DB::doccmd variable to whatever viewer to view
the Perl documentation on your system.  This may be set in an rc
file, or through direct assignment.  We're still waiting for a
working example of something along the lines of:

    $DB::doccmd = 'netscape -remote http://something.here/';

=back

=head2 Configurable Options

The debugger has numerous options settable using the C<o> command,
either interactively or from the environment or an rc file. The file
isnside an C<eval> block, where
it would only make that block return.

Like other control-flow syntax, C<try> and C<catch> will yield the last
evaluated value when placed as the final statement in a function or a C<do>
block. This permits the syntax to be used to create a value. In this case
remember not to use the C<return> expression, or that will cause the
containing function to return.

    my $value = do {
        try {
            get_thing(@args);
        }
        catch ($e) {
            warn "Unable to get thing - $e";
    
C<v5.11> or above, a subsequent second declaration that requests an earlier
version will print a deprecation warning. For example,

    use v5.14;
    say "We can use v5.14's features here";

    use v5.10;        # This prints a warning

This was deprecated in Perl 5.36 and is now fatal.

This is because of an intended related change to the interaction between
C<use VERSION> and C<use strict>. If you specify a version >= 5.11, strict is
enabled implicitly. If you request a version < 5.11, strict will become
disabled I<even if youerrors, but sometimes you just want to trap errors
and stop them interfering with the rest of the program.

This scenario will mostly be applicable to code that is meant to be called
from within destructors, asynchronous callbacks, and signal handlers.
In such situations, where the code being called has little relation to the
surrounding dynamic context, the main program needs to be insulated from
errors in the called code, even if they can't be handled intelligently.
It may also be useful to do this with code for C<__DIE__> or C<_pped only on machines supporting C<setregid()>.

Mnemonic: parentheses are used to I<group> things.  The effective gid
is the group that's I<right> for you, if you're running setgid.

=item $REAL_USER_ID

=item $UID

=item $<
X<< $< >> X<$UID> X<$REAL_USER_ID>

The real uid of this process.  You can change both the real uid and the
effective uid at the same time by using C<POSIX::setuid()>.  Since
changes to C<< $< >> require a system call, check C<$!> after a change
attempt to detect any possible errors.

Mnemonic: it's the uid yoThis release takes this optimization a
step further, by not calling any C<DESTROY> method that begins with a
C<return> statement.  This can be useful for destructors that are only
used for debugging:

    use constant DEBUG => 1;
    sub DESTROY { return unless DEBUG; ... }

Constant-folding will reduce the first statement to C<return;> if DEBUG
is set to 0, triggering this optimization.

=item *

Assigning to a variable that holds a typeglob or copy-on-write scalar
is now much faster.  Previously the typeglob would be stringified either an object (a
blessed reference) or a class name (that is, a package name).  See
L<perlobj>.

The right side may also be the name of a subroutine, prefixed with the C<&>
sigil.  This creates what looks like a lexical method invocation, where the
method subroutine is resolved lexically instead of by name by a search within
the packages of the object's class.  This resolution happens entirely at
compile-time, and performs the same as a regular subroutine call at runtime.

The dereferencing cases (as opposed to method-calling ca and conditions.  You may not impose any further
 restrictions on the recipients' exercise of the rights granted herein.

   7. The Free Software Foundation may publish revised and/or new
 versions of the General Public License from time to time.  Such new
 versions will be similar in spirit to the present version, but may
 differ in detail to address new problems or concerns.

 Each version is given a distinguishing version number.  If the Program
 specifies a version number of the license which applies to it and "any
 later versi using code which has already been tried and tested in
production for years.

=head2 How do I strip blank space from the beginning/end of a string?

(contributed by brian d foy)

A substitution can do this for you. For a single line, you want to
replace all the leading or trailing whitespace with nothing. You
can do that with a pair of substitutions:

    s/^\s+//;
    s/\s+$//;

You can also write that as a single substitution, although it turns
out the combined statement is slower than the separate ones. That
might not matter to s the least significant byte of the two's
complement sum of the preceding bytes. Example: C<:0300300002337A1E>.

The first step of processing such a line is the conversion, to binary,
of the hexadecimal data, to obtain the four fields, while checking the
checksum. No surprise here: we'll start with a simple C<pack> call to
convert everything to binary:

   my $binrec = pack( 'H*', substr( $hexrec, 1 ) );

The resulting byte sequence is most convenient for checking the checksum.
Don't slow your program down with a for loop adding th Perl stores values
and some well-defined representation as might be required in the
environment of a Perl program. Unfortunately, they're also two of
the most misunderstood and most often overlooked functions that Perl
provides. This tutorial will demystify them for you.


=head1 The Basic Principle

Most programming languages don't shelter the memory where variables are
stored. In C, for instance, you can take the address of some variable,
and the C<sizeof> operator tells you how many bytes are allocated to
the variable. Using thly to be important for the list of arguments to
F<Configure>, which can readily exceed the limit if, for example, it names
several non-default installation paths.  This change also adds the first unit
tests for perlbug.
L<[perl #128020]|https://rt.perl.org/Public/Bug/Display.html?id=128020>

=back

=head1 Configuration and Compilation

=over 4

=item *

C<-Ddefault_inc_excludes_dot> was added, and enabled by default.

=item *

The C<dtrace> build process has further changes
L<[GH #15718]|https://github.com/Perl/perl5/issues/15718>:This problem was assigned
[L<CVE-2026-4176|https://www.cve.org/CVERecord?id=CVE-2026-4176>] by the
L<CPAN Security Group|https://security.metacpan.org/>.

=head1 Incompatible Changes

There are no changes intentionally incompatible with 5.40.3.  If any exist,
they are bugs, and we request that you submit a report.  See L</Reporting Bugs>
below.

=head1 Modules and Pragmata

=head2 Updated Modules and Pragmata

=over 4

=item *

L<Compress::Raw::Zlib> has been upgraded from version 2.212 to 2.222.

=item *

L<Module::CoreList> has bctions
are available via the C<:mode> tag.

=item File::Compare

A compare_text() function has been added, which allows custom
comparison functions.  See L<File::Compare>.

=item File::Find

File::Find now works correctly when the wanted() function is either
autoloaded or is a symbolic reference.

A bug that caused File::Find to lose track of the working directory
when pruning top-level directories has been fixed.

File::Find now also supports several other options to control its
behavior.  It can follow symbolic links if the C<fol://www.perl.org/> , the Perl Home Page.

If you believe you have an unreported bug, please run the L<perlbug> program
included with your release.  Be sure to trim your bug down to a tiny but
sufficient test case.  Your bug report, along with the output of C<perl -V>,
will be sent off to perlbug@perl.org to be analysed by the Perl porting team.

If the bug you are reporting has security implications which make it
inappropriate to send to a publicly archived mailing list, then see
L<perlsec/SECURITY VULNERABILITY CONTACT INFORMATION> 5,
you can do so by running the C<perlthanks> program:

    perlthanks

This will send an email to the Perl 5 Porters list with your show of thanks.

=head1 SEE ALSO

The F<Changes> file for an explanation of how to view exhaustive details on
what changed.

The F<INSTALL> file for how to build Perl.

The F<README> file for general stuff.

The F<Artistic> and F<Copying> files for copyright information.

=cut
=encoding utf8

=head1 NAME

perl5420delta - what is new for perl v5.42.0

=head1 DESCRIPTION

This document describes differt the perl hints files for them deliberately turn off the
possibility of using them.

The converse is that on systems with only a global locale, having
different threads using different locales is not likely to work well;
and changing the locale is dangerous, often leading to crashes.

Perl has extensive code to work as well as possible on both types of
systems.  You should always use C<Perl_setlocale()> to change and query
the locale, as it portably works across the range of possibilities.

=head1 SEE ALSO

L<perlapi>, L<perlapio>e.

=head1 Acknowledgements

Perl 5.44.0 represents approximately 12 months of development since Perl
5.42.0 and contains approximately 270,000 lines of changes across 1,300
files from 71 authors.

Excluding auto-generated files, documentation and release tools, there were
approximately 110,000 lines of changes to 860 .pm, .t, .c and .h files.

Perl continues to flourish into its fourth decade thanks to a vibrant
community of users and developers. The following people are known to have
contributed the improvements that became Perl ol history.  In particular, it does not include the names of
the (very much appreciated) contributors who reported issues to the Perl bug
tracker.

Many of the changes included in this version originated in the CPAN modules
included in Perl's core.  We're grateful to the entire CPAN community for
helping Perl to flourish.

For a more complete list of all of Perl's historical contributors, please see
the F<AUTHORS> file in the Perl source distribution.

=head1 Reporting Bugs

If you find what you think is a bug, you might check the ete?);

=item 7

For globbing (see L<perlfunc/glob>, L<perlop/"I/O Operators">)
(obsolete? Perl uses builtin globbing nowadays...).

=back

For the sake of speed for a common case, in the above algorithms 
backslashes in the command name are not considered as shell metacharacters.

Perl starts scripts which begin with cookies
C<extproc> or C<#!> directly, without an intervention of shell.  Perl uses the
same algorithm to find the executable as F<pdksh>: if the path
on C<#!> line does not work, and contains C</>, then the directory
r> has been upgraded from version 0.16 to 0.17.

=back

=head1 Documentation

=head2 New Documentation

=head3 L<perlrepository>

This document was removed (actually, renamed L<perlgit> and given a major
overhaul) in Perl v5.14, causing Perl documentation websites to show the now
out of date version in Perl v5.12 as the latest version.  It has now been
restored in stub form, directing readers to current information.

=head2 Changes to Existing Documentation

=head3 L<perldata>

=over 4

=item *

New sections have been added to docuused. If $base is
relative, then it is converted to absolute form using
L</rel2abs()>. This means that it is taken to be relative to
L<cwd()|Cwd>.

On systems that have a grammar that indicates filenames, this ignores
the $base filename. Otherwise all path components are assumed to be
directories.

If $path is absolute, it is cleaned up and returned using L</canonpath()>.

No checks against the filesystem are made.  On VMS, there is
interaction with the working environment, as logicals and
macros are expanded.

Based on code writte:Spec->catfile('a', 'b', 'c');

which returns 'a/b/c' under Unix. Or:

	use File::Spec::Functions;

	my $x = catfile('a', 'b', 'c');

=head1 DESCRIPTION

This module is designed to support operations commonly performed on file
specifications (usually called "file names", but not to be confused with the
contents of a file, or Perl's file handles), such as concatenating several
directory and file names into a single path, or determining whether a path
is rooted. It is based on code directly taken from MakeMaker 5.17, code
written by „     AUATUSHƒìH‹OÌ  H‹-Í  L‹-ñË  H‹H�HüH‰
H‹U Hc H�ÂH‰ÃI‹E H)ÈHÁøƒø…Y  ƒÃHcÛH‹ÚL�$Ý    ö@„I  H‹x‹G%   =   „²   ¾   è(�ÿÿH‰ÇH…ÿtxöG …ö   H‹ÇË  H‰øH)ÐHƒøH†Ï   ‹GöÄÿtVöÄ…~   öÄ…¥   öÄtH‹Gö@t9H‹ H‹ ö@t-1öH‰T$èÎœÿÿH‹T$H�J0„ÀHDÑëD  H‹YË  HƒÂ0H‹E H‰ØLe M‰e HƒÄ[]A\A]Ãf�H‹H‹x éOÿÿÿ@ H‹H…ÀtÇH‹@HƒøwÁH…Àt¸H‹G€80•ÁH�B0„ÉHDÐë¦ H‹Hƒx  •Áëä H9×”ÀélÿÿÿD  H‰|$èfŸÿÿH‹|$éöþÿÿH�5ÆR  è žÿÿH�=hL  1ÀèRžÿÿf�AUATUSHƒìH‹�Ê  H‹8Ê  H‹H‹H�HüH‰
H‹DË  ‹ H‹
HcÐH�4ÑH‰ÚH)òHÁúƒú…Ì   ƒÀH˜H‹/x86_64 crti.S crtn.S                  ¬M                       °M                                         ñÿ                     €#                   °#              !     ð#              7     ¨q             C     hm              j     0$              v     `m              •    ñÿ                ›     @$      ù       ª     @%      ë       ½     0&      Ä      Ñ      (      È       à     Ð(      d           @)                `,      1      ,     /      »      D    pm `ÿÿÿÿ%‚O  h	   éPÿÿÿÿ%zO  h
   é@ÿÿÿÿ%rO  h   é0ÿÿÿÿ%jO  h   é ÿÿÿÿ%bO  h   éÿÿÿÿ%ZO  h   é ÿÿÿÿ%RO  h   éðþÿÿÿ%JO  h   éàþÿÿÿ%BO  h   éÐþÿÿÿ%:O  h   éÀþÿÿÿ%2O  h   é°þÿÿÿ%*O  h   é þÿÿÿ%"O  h   é�þÿÿÿ%O  h   é€þÿÿÿ%O  h   épþÿÿÿ%
O  h   é`þÿÿÿ%O  h   éPþÿÿÿ%úN  h   é@þÿÿÿ%òN  h   é0þÿÿÿ%êN  h   é þÿÿÿ%âN  h   éþÿÿÿ%ÚN  h   é þÿÿÿ%ÒN  h   éðýÿÿÿ%ÊN  h    éàýÿÿÿ%ÂN  h!   éÐýÿÿÿ%ºN  h"   éÀýÿÿÿ%²N  h#   é°ýÿÿÿ%ªN  h$   é ýÿÿÿ%¢N  h%   é�ýÿÿÿ%šN  h&   é€ýÿÿÿ%’N  h'   épýÿÿÿ%ŠN  h(   é`ýÿÿÿ%‚N  h)   éPýÿÿÿ%úL _helper_ PL_tainting PL_tainted Perl_sv_magic Perl_mg_size Perl_safesysmalloc Perl_save_destructor_x Perl_safesysfree PL_WARN_ALL PL_WARN_NONE Perl_av_shift Perl_av_undef Perl_av_clear PL_user_def_props Perl_sv_2bool_flags Perl_mg_get Perl_av_extend Perl_newSVpvf PL_tmps_ix PL_tmps_max PL_tmps_stack Perl_tmps_grow_p Perl_av_exists Perl_get_sv Perl_push_scope Perl_pop_scope Perl_save_I32 Perl_sv_setuv PL_savestack_ix PL_scopestack_ix Perl_pv_pretty PL_regnode_name Perl_save_pushptr Perl_amagic_call Perl_sv_setsv_flags Perl_sv_pvn_foD$èo<ÿÿH‰ÃH…ítH‰ï¾   èŠ=ÿÿH‰ÅH…ÛtƒCI‹t$HI‹|$ H‰ÚH�FI‰D$Hè#<ÿÿH…À„J  H…ítAö„$  uZH‹D$dH+%(   …{  HƒÄ H‰Ø[]A\Ãf.„     H‹—°   H�BH9‡¸   rÂH‹H‰‡°   H‰T$éNÿÿÿ„     H‹yé  H‹H…Ò„Ý   H‹
H‰H‹xé  Hƒ H¸      HÇB    H‰BH�BðH‰�cÿÿ÷ÿH‰Z�J   A‹´$  …ötG‹E©   t5H‹M H‹q H…öt(‹I<…ÉtHƒ> t1öH‰ïH‰T$è~<ÿÿH‹T$…Àur‹E%ÿÿÿï‰EH‰îH‰×H‰T$è;ÿÿH‹T$‹rHÇB    ƒþv5ƒî‰réÐþÿÿf.„     1Ûé¿þÿÿf„     è+<ÿÿH‰Âé'ÿÿÿ H‰×èˆ>ÿÿé™þÿÿAÇ„$      H‹Bö@tƒH‹ H‹ �H   éqÿÿÿè6:ÿÿfD  ATI‰üUSHƒì H‹Ÿà   dH‹,%(   H‰l$Hd , returning %ld
     Filter::Util::Call::filter_read Filter::Util::Call::real_import Filter::Util::Call::filter_del  ;L      øíÿÿh   8ðÿÿ�   ñÿÿ¨   ˜ñÿÿÐ   Èòÿÿô   xôÿÿ8  Húÿÿ„  øûÿÿÐ             zR x�  $      ˆíÿÿ@   FJw€ ?;*3$"       D    ïÿÿ           $   \   Xðÿÿ‰    A†AƒD €AA    „   Àðÿÿ!   D ‹
A�
A  @   ¨   Ìñÿÿ©   BŽB�B ŒA(†A0ƒD@ì
0A(A BBBH H   ì   8óÿÿÎ   B�EŽB �B(ŒA0†A8ƒD`ï
8C0A(B BBBDH   8  ¼øÿÿ¥   B�BŽB    á                      crtstuff.c deregister_tm_clones __do_global_dtors_aux completed.0 __do_global_dtors_aux_fini_array_entry frame_dummy __frame_dummy_init_array_entry attributes.c XS_attributes__fetch_attrs XS_attributes__modify_attrs XS_attributes__guess_stash __FRAME_END__ _fini __dso_handle _DYNAMIC __GNU_EH_FRAME_HDR __TMC_END__ _GLOBAL_OFFSET_TABLE_ _init Perl_save_sptr PL_stack_sp Perl_stack_grow _ITM_deregisterTMCloneTable Perl_pop_scope Perl_validate_proto PL_markstack_ptr __stack_chk_fail@GLIBC_2.4 PL_stack_max PL.5 Perl_sv_utf8_downgrade_flags Perl_sv_newmortal PL_op  .symtab .strtab .shstrtab .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rela.dyn .rela.plt .init .plt.got .text .fini .rodata .eh_frame_hdr .eh_frame .note.gnu.property .init_array .fini_array .dynamic .got.plt .data .bss .comment .debug_aranges .debug_info .debug_abbrev .debug_line .debug_str .debug_line_str .debug_rnglists                                                                        öÿÿo       p      p      $                             %               HƒìH‹}o  H…ÀtÿÐHƒÄÃ         ÿ5Êo  ÿ%Ìo  @ ÿ%Êo  h    éàÿÿÿÿ%Âo  h   éÐÿÿÿÿ%ºo  h   éÀÿÿÿÿ%²o  h   é°ÿÿÿÿ%ªo  h   é ÿÿÿÿ%¢o  h   é�ÿÿÿÿ%šo  h   é€ÿÿÿÿ%’o  h   épÿÿÿÿ%Šo  h   é`ÿÿÿÿ%‚o  h	   éPÿÿÿÿ%zo  h
   é@ÿÿÿÿ%ro  h   é0ÿÿÿÿ%jo  h   é ÿÿÿÿ%Ân  f�        H�=Yo  H�Ro  H9øtH‹.n  H…Àt	ÿà€    Ã€    H�=)o  H�5"o  H)þH‰ðHÁî?HÁøHÆHÑþtH‹Mn  H…ÀtÿàfD  Ã€    óú€=ån   u+UHƒ=2n   H‰åtH‹=Æn  èYÿÿÿèdÿÿÿÆ½n  ]Ã Ã€    óúéwÿÿÿ€    AW¾   AVAUATI‰üH�=  USHƒìH‹\m  L‹0ètþÿÿL‰çH‰ÅèÙþÿÿH‰ÃH‹‡m  H‹è     @:            ô¶     H:            Àè     X:            ™¦     `:            Àè     p:            G     x:            Àè     �:            €9      :            -_     ¨:            Àè     ¸:            ‰œ     À:            Àè     Ð:            ¶¶     Ø:            Àè     è:            ±     ð:            Àè      ;            ¨£     ;            Àè     ;            =b      ;            Àè     0;            !)     8;            Àè     H;            Ö¶     P;       `             hd                             <    #        `             ld                                                   ]   €       f   -   i      ]   € U%    U%   b     .   û          D   V   V    	 `      Á Lu=/  	hd      Ó  ^     .   û          D   ]   ]    	`      'K  	ld      +K ../sysdeps/x86_64/crti.S /home/rorka/backup/rorkos-old-20260904/build-pkg/src/glibc-2.44/csu GNU AS 2.47 ../sysdl Perl_stack_grow Perl_call_pv Perl_more_sv Perl_markstack_grow Perl_sv_free2 boot_Encode__JP Perl_xs_handshake cp932_encoding euc_jp_encoding jis0201_raw_encoding jis0208_raw_encoding jis0212_raw_encoding MacJapanese_encoding shiftjis_encoding Perl_xs_boot_epilog libc.so.6 GLIBC_2.2.5                                                                        ui	         pC            ÀQ     xC            €Q     €C             P     ˆC            àN     �C            F`      C            @`     ÈC  PL_markstack_ptr PL_sv_immortals __stack_chk_fail@GLIBC_2.4 Perl_av_store Perl_newSVnv Perl_sv_2pv_flags Perl_xs_boot_epilog boot_Math__BigInt__FastCalc __gmon_start__ Perl_croak_xs_usage Perl_sv_2nv_flags PL_sv_root Perl_croak Perl_av_push Perl_more_sv Perl_av_pop Perl_newXS_deffile Perl_more_bodies Perl_sv_2mortal Perl_newSVuv Perl_xs_handshake Perl_av_fetch PL_sv_count Perl_newRV _ITM_registerTMCloneTable PL_stack_base Perl_newSViv Perl_sv_setiv Perl_newSVpvn __cxa_finalize@GLIBC_2.2.5 Perl_av_extend  .symtab .strtab .shstrtab A]A^A_Ãf�H‹H‹@ ë¦€    èÛèÿÿI‹U I‰Äé7ÿÿÿ€    L‰çè€èÿÿë­‹GL�ö  öÄuöÄÿL�ø  H�ø  LEÀI‰ùL‰ù1ÀH�¹÷  H�5üü  H�=ü  èøæÿÿH�5Ÿ÷  è¬æÿÿ�ff.„     AWAVAUATUSHƒìH‹4 L‹-t4 H‹-ý3 H‹H�HüH‰
I‹U Hc H�ÂH‰ÃH‹E H)ÈHÁøƒø…Y  H‹J4 ƒÃH‹ ö@#„Ú   H‹HH‹ï3 H‹ L‹$ÈHcÛL�=d÷  H‹<ÚL�4Ý    ‹GöÄ„×   L‰þèîäÿÿI‹U H‹<Ú„À„°   H‹‹G%   =   tk¾   è1äÿÿH‹ppA‹D$‰Â�âÿ�™ƒúH‹Ž3 ”Á¶ƒò„ÑtaH…öx\€ÌI‰t$A‰D$I‹E L‰$ØMu L‰u HƒÄ[]A\A]A^A_Ã„     H‹H‹@ ë–€    èçÿÿI‹U I‰Äé'ÿÿÿ€    L‰çèÀæÿÿë§‹GL�_ô  öÄuöÄÿL�Mö  H�Lö        µ6             ¼6             É6             Ò6      	       Ü6             è6      
       ó6             û6             7                                    –                            Ü-             Ð@                           Ø@                    õþÿo    p             ¸             ˜      
       ¬                           èO             p                           ¸             à	             Ø      	              þÿÿo    À	      ÿÿÿo           ðÿÿo    d	      ùÿÿo    ™       ;
	}
	elsif ($o =~ /^-stash=(.*)/) {
	    my $pkg = $1;
	    no strict 'refs';
	    if (! %{$pkg.'::'}) {
		eval "require $pkg";
	    } else {
		require Config;
		if (!$Config::Config{usedl}
		    && keys %{$pkg.'::'} == 1
		    && $pkg->can('bootstrap')) {
		    # It is something that we're statically linked to, but hasn't
		    # yet been used.
		    eval "require $pkg";
		}
	    }
	    push @render_packs, $pkg;
	}
	# line-style options
	elsif (exists $style{substr($o, 1)}) {
	    $stylename = substr($o, 1);
	    set_style_standadr structure for the socket on
the peer host

=item peerport ()

Return the port number for the socket on the peer host.

=item peerhost ()

Return the address part of the sockaddr structure for the socket on the
peer host in a text form xx.xx.xx.xx

=back

=head1 SEE ALSO

L<Socket>, L<IO::Socket>

=head1 AUTHOR

Graham Barr. Currently maintained by the Perl Porters.  Please report all
bugs at L<https://github.com/Perl/perl5/issues>.

=head1 COPYRIGHT

Copyright (c) 1996-8 Graham Barr <gbarr@pobox.com>. All rights reserved.
This pss since the first call to clock() (the definition is B<not>
"since the start of the process", though if you are lucky these times
may be quite close to each other, depending on the system).  What this
means is that you probably need to store the result of your first call
to clock(), and subtract that value from the following results of clock().

The time returned also includes the process times of the terminated
child processes for which wait() has been executed.  This value is
somewhat like the second value returned by the times('t necessarily considered stable, and could be changed or removed in some
future release without warning.  It is therefore a bad idea to use them
without further checking.  It could be that these are considered to be for
perl core use only; or it could be, though, that C<Devel::PPPort> doesn't know
where to find their documentation, or that it's just an oversight that they
haven't been documented.  If you want to use one, and potentially have it
backported, first send mail to L<mailto:perl5-porters@perl.org>.

=over 4

=item perl 5f
normalization implemented by this module depends on what has been
compiled into your perl.  The following table lists the default Unicode
version that comes with various perl versions.  (It is possible to change
the Unicode version in any perl version to be any earlier Unicode version,
so one could cause Unicode 3.2 to be used in any perl version starting with
5.8.0.  Read F<C<$Config{privlib}>/unicore/README.perl> for details.

    perl's version     implemented Unicode version
       5.6.1              3.0.1
       5.7.2       pression, e.g.:

  define_alias( qr/^iso8859-(\d+)$/i => '"iso-8859-$1"' );

In this case, if I<ENCODING> is not a reference, it is C<eval>-ed
in order to allow C<$1> etc. to be substituted.  The example is one
way to alias names as used in X11 fonts to the MIME names for the
iso-8859-* family.  Note the double quotes inside the single quotes.

(or, you don't have to do this yourself because this example is predefined)

If you are using a regex here, you have to use the quotes as shown or
it won't work.  Also note that regex handlins the buffer size used to carry out the decompression.

=head2 Examples

Here is an example of using C<inflate>.

    use strict ;
    use warnings ;

    use Compress::Raw::Zlib;

    my $x = new Compress::Raw::Zlib::Inflate()
       or die "Cannot create a inflation stream\n" ;

    my $input = '' ;
    binmode STDIN;
    binmode STDOUT;

    my ($output, $status) ;
    while (read(STDIN, $input, 4096))
    {
        $status = $x->inflate($input, $output) ;

        print $output ;

        last if $status != Z_OK ;
    }

    dH_)|(1U<<CC_IDFIRST_)|(1U<<CC_PRINT_)|(1U<<CC_PUNCT_)|(1U<<CC_UNDERSCORE_)|(1U<<CC_WORDCHAR_),
/* U+60 '`' */ (1U<<CC_ASCII_)|(1U<<CC_GRAPH_)|(1U<<CC_MAGICAL_)|(1U<<CC_PRINT_)|(1U<<CC_PUNCT_)|(1U<<CC_QUOTEMETA_),
/* U+61 'a' */ (1U<<CC_ALPHA_)|(1U<<CC_ALPHANUMERIC_)|(1U<<CC_ASCII_)|(1U<<CC_CASED_)|(1U<<CC_CHARNAME_CONT_)|(1U<<CC_GRAPH_)|(1U<<CC_IDFIRST_)|(1U<<CC_IS_IN_SOME_FOLD_)|(1U<<CC_LOWER_)|(1U<<CC_MAGICAL_)|(1U<<CC_NONLATIN1_FOLD_)|(1U<<CC_NON_FINAL_FOLD_)|(1U<<CC_PRINT_)|(1U<<CC_WORDCHAR_)|(1U<<CC_XDIGIT_),
/* U+62 'b' */ (1            Ia     Ia                   p       p       p      À¯     À¯                  ð$?     ð$?     ð$?     àN     €¾                    @       @       @     Ð      Ð                   �?     �?     �?     0       0              Såtd   �?     �?     �?     0       0              Påtd   èÕ<     èÕ<     èÕ<     ´J      ´J             Qåtd                                                  Råtd   ð$?     ð$?     ð$?                        ÷             €#€ ‘Œ€`�    BÐ  Z   s us to determine under what
circumstances we should decrement the refcount of the parent when freeing
the child.

There is a further complication with non-closure anonymous subs (i.e. those
that do not refer to any lexicals outside that sub).  In this case, the
anonymous prototype is shared rather than being cloned.  This has the
consequence that the parent may be freed while there are still active
children, I<e.g.>,

    BEGIN { $a = sub { eval '$x' } }

In this case, the BEGIN is freed immediately after execution since there
areend of compilation of a Perl subroutine (or
equivalently independent piece of Perl code) to perform fixups of
some ops and to perform small-scale optimisations.  The function is
called once for each subroutine that is compiled, and is passed, as sole
parameter, a pointer to the op that is the entry point to the subroutine.
It modifies the op tree in place.

The peephole optimiser should never be completely replaced.  Rather,
add code to it by wrapping the existing optimiser.  The basic way to do
this can be seen in L<perlguts/Compi           Perl_sv_2pvutf8_flags(aTHX_ a,b,c)
# define sv_2uv_flags(a,b)                      Perl_sv_2uv_flags(aTHX_ a,b)
# define sv_backoff                             Perl_sv_backoff
# define sv_bless(a,b)                          Perl_sv_bless(aTHX_ a,b)
# define sv_can_swipe_pv_buf(a)                 Perl_sv_can_swipe_pv_buf(aTHX_ a)
# define sv_cat_decode(a,b,c,d,e,f)             Perl_sv_cat_decode(aTHX_ a,b,c,d,e,f)
# define sv_catpv(a,b)                          Perl_sv_catpv(aTHX_ a,b)
# define sv_catpv_flags(a,b,c)      _BUNDLE == FEATURE_BUNDLE_CUSTOM && \
	 FEATURE_IS_ENABLED_MASK(FEATURE_APOS_AS_NAME_SEP_INDEX, FEATURE_APOS_AS_NAME_SEP_BIT)) \
    )


#define SAVEFEATUREBITS() \
    STMT_START {  \
        SAVEI32(PL_compiling.cop_features.bits[0]);  \
    } STMT_END

#define CLEARFEATUREBITS() \
    (PL_compiling.cop_features.bits[0] = 0)

#define FETCHFEATUREBITSHH(hh) S_fetch_feature_bits_hh(aTHX_ (hh))

#endif /* PERL_CORE or PERL_EXT */

#ifdef PERL_IN_OP_C
PERL_STATIC_INLINE void
S_enable_feature_bundle(pTHX_ SV *ver)
{
    SV *comp_ver = matches.
 *
 *      Note that /d rules are no longer encouraged; 'use 5.14' or higher
 *      deselects them.  But they are still supported, and a flag is required
 *      so that they can be properly handled.  But it can be a shared flag: see
 *      4) below.
 *
 *  3)  Also under /d rules, something like /[\Wfoo]/ will match everything in
 *      the \x80-\xFF range, unless the string being matched against is UTF-8.
 *      An inversion list could be created for this case, but this is
 *      relatively common, and it turns out  0,  1465,  3453,   3,  12, UNI_LB__HL }   /* wb=hebrewletter */,
  {    20,  5131,   653,  18,   5, UNI_INCB__NONE }   /* indicconjunctbreak=none */,
  {     2,  2622,  4732,   8,   5, UNI_XPOSIXUPPER }   /* isxposixupper */,
  {     1,  6464,   565,   3,   6, UNI_SC__ONAO }   /* sc=olonal */,
  {     1,    98,     0,   4,   0, UNI_HLUW }   /* hluw */,
  {     0,  8226,   174,  16,   2, UNI_PC }   /* generalcategory=pc */,
  {     0,  1911,  1269,   7,   4, UNI_SC__THAI }   /* script=thai */,
  {    18,   135,   662,   2,   7, UNata)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_reentrant_retint == ERANGE) ? (struct hostent *) Perl_reentrant_retry("gethostbyname", a) : 0))
#      endif
#      if defined(gethostbyname)
#        define PERL_REENTR_USING_GETHOSTBYNAME_R
#      endif
#    endif
#  endif /* HAS_GETHOSTBYNAME_R */


#  ifdef HAS_GETHOSTENT_R
#    if defined(PERL_REENTR_API) && (PERL_REENTR_API+0 == 1)
#      undef gethostent
#      if !defined(gethostent) && GETHOSTENT_R_PROTO == REENTRANT_PROTO_I_SBWRE
#        define gethostent() ((PL_re HAS_MISSING_LANGINFO_ITEM_
#endif

/* The rest of the items are gnu extensions, and are not #defined by its
 * langinfo.h.  There is a slight possibility that one of these numbers could
 * conflict with some other value, in which case after much gnashing of teeth
 * you will find this comment, and end up having to adjust the numbers.   But
 * glibc values are not (so far) negative.
 *
 * Android is special in that it doesn't define any of these, but has the
 * corresponding category */
#if defined(__ANDROID__) || ! defined(HAS_NLility__("hidden");
#define PERL_ARGS_ASSERT_AV_EXTEND_GUTS         \
        Perl_assert_aTHX; assert(!av || SvTYPE(av) == SVt_PVAV); assert(maxp); \
        assert(allocp); assert(arrayp)

PERL_CALLCONV SV **
Perl_av_fetch(pTHX_ AV *av, SSize_t key, I32 lval)
        Perl_attribute_nonnull_aTHX
        Perl_attribute_nonnull(pTHX_1)
        __attribute__warn_unused_result__;
#define PERL_ARGS_ASSERT_AV_FETCH               \
        Perl_assert_aTHX; assert(av); assert(SvTYPE(av) == SVt_PVAV)

PERL_CALLCONV void
Perl_av_fill(pTHX_ ymbol will be defined if the C compiler supports long long.
 */
/* LONGLONGSIZE:
 *	This symbol contains the size of a long long, so that the
 *	C preprocessor can make decisions based on it.  It is only
 *	defined if the system supports long long.
 */
#define HAS_LONG_LONG		/**/
#ifdef HAS_LONG_LONG
#define LONGLONGSIZE 8		/**/
#endif

/* HAS_MKSTEMP:
 *	This symbol, if defined, indicates that the mkstemp routine is
 *	available to exclusively create and open a uniquely named
 *	temporary file.
 */
#define HAS_MKSTEMP		/**/

/* HA   376  /*      0x178 */
#define GOSUB_tb_p8                       377  /*      0x179 */
#define GOSUB_t8_pb                       378  /*      0x17a */
#define GOSUB_t8_p8                       379  /*      0x17b */

#define GROUPPN                      95      /* -*- mode: C; buffer-read-only: t -*-
   !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
   This file is built by opcode.pl from its data.
   Any changes made here will be lost!
 */

PERL_CALLCONV PP(do_kv) __attribute__visibility__("hidden");
PERL_CALLCONV PP(pp_aassign) __attf8_safe|U8 * s|U8 * end
=for apidoc_item ||isPUNCT_uvchr|UV ch
Returns a boolean indicating whether the specified character is a
punctuation character, analogous to C<m/[[:punct:]]/>.
Note that the definition of what is punctuation isn't as
straightforward as one might desire.  See L<perlrecharclass/POSIX Character
Classes> for details.
See the L<top of this section|/Character classification> for an explanation of
the variants.

=for apidoc Am|bool|isSPACE|UV ch
=for apidoc_item ||isSPACE_A|UV ch
=for apidoc_item ||isSPACE_LC|UV cha
 *  critical resource when you are about to throw an exception. */
#define croak(...)  Perl_croak_nocontext(__VA_ARGS__)
#define die(...)    Perl_die_nocontext(__VA_ARGS__)
#ifndef MULTIPLICITY
#  define Perl_croak_nocontext  Perl_croak
#  define Perl_die_nocontext  Perl_die
#endif

/*
=for apidoc_section $warning

=for apidoc qerror

A deprecated alias for L</defer_error>.

=cut
*/

#define qerror(err) defer_error(err)

#ifdef VMS
#  define PERL_FILE_IS_ABSOLUTE(f) \
        (*(f) == '/'							\
         || (strchr(f,':')						\-L cache of fail positions of WHILEMs */
} regmatch_info_aux;


/*
=for apidoc Ay||regmatch_info
Some basic information about the current match that is created by
Perl_regexec_flags and then passed to regtry(), regmatch() etc.
It is allocated as a local var on the stack, so nothing should be
stored in it that needs preserving or clearing up on croak().
For that, see the aux_info and aux_info_eval members of the
regmatch_state union.

=cut
*/

typedef struct {
    REGEXP *prog;        /* the regex being executed */
    const char * riginally maintained in Perl core by the Perl 5 Porters.

It was extracted to dual-life on CPAN at version 1.95 by
Paul Evans <leonerd@leonerd.org.uk>

=cut

use Carp;
use warnings::register;

require Exporter;
require XSLoader;
our @ISA = qw(Exporter);

# <@Nicholas> you can't change @EXPORT without breaking the implicit API
# Please put any new constants in @EXPORT_OK!

# List re-ordered to match documentation above. Try to keep the ordering
# consistent so it's easier to see which ones are or aren't documented.
our @EXPORT = qw(symbol, which
indicates to the C program that the fdim() routine is available.

=item C<d_fdopendir>

From F<d_fdopendir.U>:

This variable conditionally defines C<HAS_FDOPENDIR> if fdopendir() is
available to open a directory using an opened file descriptor already
referring to that directory.

=item C<d_fds_bits>

From F<d_fd_set.U>:

This variable contains the eventual value of the C<HAS_FDS_BITS> symbol,
which indicates if your fd_set typedef contains the fds_bits member.
If you have an fd_set typedef, but the dweebs who instals.  This documentation assumes that the
reader knows a fair amount about perl's internals including such
things as SVs, OPs and the internal symbol table and syntax tree
of a program.

=head1 OVERVIEW

The C<B> module contains a set of utility functions for querying the
current state of the Perl interpreter; typically these functions
return objects from the B::SV and B::OP classes, or their derived
classes.  These classes in turn define methods for querying the
resulting objects about their own internal state.

=head1 Utility Funct floating point number.

See also L</ilogb>.

=item C<link>

This is identical to Perl's builtin C<link()> function
for creating hard links into files, see L<perlfunc/link>.

=item C<localeconv>

Get numeric formatting information.  Returns a reference to a hash
containing the formatting values of the locale that currently underlies
the program, regardless of whether or not it is called from within the
scope of a S<C<use locale>>.  Users of this function should also read
L<perllocale>, which provides a comprehensive discussion of Pre the other directives.  However they have both
compile-time and run-time effects.

=head2 Exportable Functions

As of perl 5.9.5, the C<re> module contains a number of utility functions that
may be optionally exported into the caller's namespace. They are listed below.

=over 4

=item is_regexp($ref)

Returns true if the argument is a compiled regular expression as returned
by C<qr//>, false if it is not.

This function will not be confused by overloading or blessing. In
internals terms, this extracts the regexp pointer out of th    # check for cached value (which may be undef so we use exists not defined)
    return exists $self->{$key} ? $self->{$key} : $self->fetch_string($key);
}

sub TIEHASH {
    bless $_[1], $_[0];
}

sub DESTROY { }

sub AUTOLOAD {
    require 'Config_heavy.pl';
    goto \&launcher unless $Config::AUTOLOAD =~ /launcher$/;
    die "&Config::AUTOLOAD failed on $Config::AUTOLOAD";
}

# tie returns the object, so the value returned to require will be true.
tie %Config, 'Config', {
    archlibexp => '/usr/lib/perl5/5.44.0/x86_64-linux',version {
    my($self, $wanted) = @_;
    my $pkg = ref $self || $self;
    return ${pkg}->VERSION($wanted);
}

sub heavy_export_tags {
  _push_tags((caller)[0], "EXPORT",    \@_);
}

sub heavy_export_ok_tags {
  _push_tags((caller)[0], "EXPORT_OK", \@_);
}

1;
# -*- mode: Perl; buffer-read-only: t -*-
#
#    lib/B/Op_private.pm
#
#    Copyright (C) 2014 by Larry Wall and others
#
#    You may distribute under the terms of either the GNU General Public
#    License or the Artistic License, as specified in the README file.
#
# !!!!op is not a pattern matching operation\n";
                }

=item C<extract_quotelike>

C<extract_quotelike> can successfully extract "here documents" from an input
string, but with an important caveat in list contexts.

Unlike other types of quote-like literals, a here document is rarely
a contiguous substring. For example, a typical piece of code using
here document might look like this:

        <<'EOMSG' || die;
        This is the message.
        EOMSG
        exit;

Given this as an input string in a scalar context, C<extrt will use the current operating system as a
default if no OS name is provided.

=head1 SEE ALSO

=over 4

=item *

L<Devel::CheckOS>

=back

=for :stopwords cpan testmatrix url annocpan anno bugtracker rt cpants kwalitee diff irc mailto metadata placeholders metacpan

=head1 SUPPORT

=head2 Bugs / Feature Requests

Please report any bugs or feature requests through the issue tracker
at L<https://github.com/Perl-Toolchain-Gang/Perl-OSType/issues>.
You will be notified automatically of any progress on your issue.

=head2 Source Codeeference, each element in
the array must be a filename.

The input data will be read from each file in turn.

The complete array will be walked to ensure that it only
contains valid filenames before any data is uncompressed.

=item An Input FileGlob string

If C<$input_filename_or_reference> is a string that is delimited by the
characters "<" and ">" C<inflate> will assume that it is an
I<input fileglob string>. The input is the list of files that match the
fileglob.

See L<File::GlobMapper|File::GlobMapper> for more details.

=bacData> will return the data that is
left in the filehandle input buffer once the end of the compressed data
stream has been reached. You can then use the filehandle to read the rest
of the input file.

Don't bother using C<trailingData> if the input is a filename.

If you know the length of the compressed data stream before you start
uncompressing, you can avoid having to use C<trailingData> by setting the
C<InputLength> option in the constructor.

=head1 Importing

No symbolic constants are required by IO::Uncompress::Bunzip2 at prod will be called automatically, but
not until global destruction of all live objects when the program is
terminating.

Therefore, if you want your scripts to be able to run on all versions
of Perl, you should call C<close> explicitly and not rely on automatic
closing.

Returns true on success, otherwise 0.

If the C<AutoClose> option has been enabled when the IO::Uncompress::Gunzip
object was created, and the object is associated with a file, the
underlying file will also be closed.

=head2 nextStream

Usage is

    my $status = $r Options>.

It returns an C<IO::Compress::RawDeflate> object on success and C<undef> on failure.
The variable C<$RawDeflateError> will contain an error message on failure.

If you are running Perl 5.005 or better the object, C<$z>, returned from
IO::Compress::RawDeflate can be used exactly like an L<IO::File|IO::File> filehandle.
This means that all normal output file operations can be carried out
with C<$z>.
For example, to write to a compressed file/buffer you can use either of
these forms

    $z->print("hello world\n");
    prrence> is a single
file/buffer the input files/buffers will be stored
in C<$output_filename_or_reference> as a concatenated series of compressed data streams.

=head2 Optional Parameters

The optional parameters for the one-shot function C<bzip2>
are (for the most part) identical to those used with the OO interface defined in the
L</"Constructor Options"> section. The exceptions are listed below

=over 5

=item C<< AutoClose => 0|1 >>

This option applies to any input or output data streams to
C<bzip2> that are filehandles.

If C<Aing, you probably won't need to use this module
directly.

=head2 METHODS

=head3 C<new>

  # see TAP::Parser::ResultFactory for preferred usage

  # to use directly:
  my $result = TAP::Parser::Result->new($token);

Returns an instance the appropriate class for the test token passed in.

=cut

# new() implementation provided by TAP::Object

sub _initialize {
    my ( $self, $token ) = @_;
    if ($token) {

       # assign to a hash slice to make a shallow copy of the token.
       # I guess we could assign to the hash as (by defahat control which tests may be executed in
parallel. If no rules are declared and L<CPAN::Meta::YAML> is available,
C<TAP::Harness> attempts to load rules from a YAML file specified by the
C<rulesfile> parameter. If no rules file exists, the default is for all
tests to be eligible to be run in parallel.

Here some simple examples. For the full details of the data structure
and the related glob-style pattern matching, see
L<TAP::Parser::Scheduler/"Rules data structure">.

    # Run all tests in sequence, except those starting with "s out how to handle the
source and creates a <TAP::Parser::Iterator> for it.  The iterator is used by
the parser to read in the TAP stream.

By default the L<TAP::Parser::SourceHandler::Executable> class will create a
L<TAP::Parser::Iterator::Process> object to handle the source.  This passes the
array reference strings as command arguments to L<IPC::Open3::open3|IPC::Open3>:

 exec => [ '/usr/bin/ruby', 't/my_test.rb' ]

If any C<test_args> are given they will be appended to the end of the command
argument list.

To configure the ring
13744		classifier (dancer/acrobat)
13745		Phonemogram
13747		Classifier moving back and forth
13748		Phonemogram (cryptography)
13749		Logogram (in combination with \C268B)
1374A		Classifier moon
1374B		Classifier moon/light (together with Re, representing the sun and the moon as the two lights)
1374D	1374E	Logogram (Geb)
1374F		Logogram (the earthmaker (divinity))
13751	13752	Logogram (the utterance, divinity)
13753	13754	Logogram (perception/knowledge (divinity))
13758		Logogram (first person singular, for Harsomtus)
13759		!   IT IS DEPRECATED TO USE THIS FILE   !!!!!!!

# This file is for internal use by core Perl only.  It is retained for
# backwards compatibility with applications that may have come to rely on it,
# but its format and even its name or existence are subject to change without
# notice in a future Perl version.  Don't use it directly.  Instead, its
# contents are now retrievable through a stable API in the Unicode::UCD
# module: Unicode::UCD::prop_invmap('Bidi_Mirroring_Glyph') (Values for individual
# code points can be retrieved vito the empty string

return <<'END';
13000		1,1
13001		2,4
13003		2,14
13005		15,3
13006		13,5
13007		14,1
13009		2,9
1300A		3,7
1300B		11,6
1300F		24,5
13011		27,4
13012		7,11
13013		6,10
13014		34,1
13016		35,7
13017		9,7
13018		9,5
13019		8,15
1301C		22,8
1301E		4,5
1301F		5,7
13020		5,11
13021		6,2
13022		6,4
13023		4,16
13024		29,9
13025		29,12
13027		16,9
13028		16,12
13029		15,14
1302B		32,5
1302C		32,4
1302D		38,9
1302E		38,14
1302F		38,11
13030		39,5
13031		39,14
13033		42,14
13034		42,7
13035		44,4
13036		44,9
13037		44,6, connected by three lines, in front of a spear made into a standard, with a circle on either side of the spear tip, with a loop over the standard (Jsesh/Gardiner R15), on top of a standard used for carrying religious symbols (R12), written on top of a parcel of land with irrigation ditches (N24).
13229		Man/god, standing, with a double plume/feather headdress, right arm forward, hand at the height of the shoulder, holding a crook (S38) of the size of the man, left arm hanging beside the body, holding a flagellum (S45) horizontally3C		F-29-011
1313D		F-30-001
1313E		F-02-021
1313F		G-26-001
13140		G-26-004
13141		G-26-022
13142		G-02-003
13143		G-12-002
13144		G-12-005
13145		G-12-144
13146		G-12-047
13147		G-12-132
13148		G-12-133
13149		G-12-148
1314A		G-12-015
1314B		G-12-151
1314C		G-15-001
1314D		G-15-002
1314E		G-15-003
1314F		G-15-012
13150		G-24-001
13151		G-24-018
13152		G-24-029
13153		G-09-001
13154		G-09-006
13155		G-09-023
13156		G-09-008
13157		G-09-013
13158		G-22-002
13159		G-17-001
1315A		G-23-001
1315B		G-23-005
1315C		G-11-081
1315D		G-11-After
200B		ZWSpace
200C		Combining_Mark
200D		ZWJ
200E	200F	Combining_Mark
2010		Unambiguous_Hyphen
2011		Glue
2012	2013	Unambiguous_Hyphen
2014		Break_Both
2018		Pi_QU
2019		Pf_QU
201A		Open_Punctuation
201B	201C	Pi_QU
201D		Pf_QU
201E		Open_Punctuation
201F		Pi_QU
2024	2026	Inseparable
2027		Break_After
2028	2029	Mandatory_Break
202A	202E	Combining_Mark
202F		Glue
2030	2037	Postfix_Numeric
2039		Pi_QU
203A		Pf_QU
203C		ExtPict_NS
203D		Nonstarter
2044		Infix_Numeric
2045		Open_Punctuation
2046		Close_Punctuation
2047	2048	Nonsta2\x86" => "\x{0028}\x{0031}\x{0039}\x{0029}", # U+2486 => 0028 0031 0039 0029
"\xE2\x92\x87" => "\x{0028}\x{0032}\x{0030}\x{0029}", # U+2487 => 0028 0032 0030 0029
"\xE2\x92\x88" => "\x{0031}\x{002E}",         # U+2488 => 0031 002E
"\xE2\x92\x89" => "\x{0032}\x{002E}",         # U+2489 => 0032 002E
"\xE2\x92\x8A" => "\x{0033}\x{002E}",         # U+248A => 0033 002E
"\xE2\x92\x8B" => "\x{0034}\x{002E}",         # U+248B => 0034 002E
"\xE2\x92\x8C" => "\x{0035}\x{002E}",         # U+248C => 0035 002E
"\xE2\x92\x8D" => "\x{0036}\x{002ase.



# The name this table is to be known by, with the format of the mappings in
# the main body of the table, and what all code points missing from this file
# map to.
$Unicode::UCD::SwashInfo{'ToIdentifierType'}{'format'} = 'sw'; # string, but some elements are interpreted as a list; white space occurs only as list item separators
$Unicode::UCD::SwashInfo{'ToIdentifierType'}{'missing'} = 'Not_Character';

return <<'END';
9	D	Not_XID
20	26	Not_XID
27		Inclusion
28	2C	Not_XID
2D	2E	Inclusion
2F		Not_XID
30	39	Recommended
3A		Inc9A		SINGLE CHARACTER INTRODUCER: control
9A		SCI: abbreviation
9B		CONTROL SEQUENCE INTRODUCER: control
9B		CSI: abbreviation
9C		STRING TERMINATOR: control
9C		ST: abbreviation
9D		OPERATING SYSTEM COMMAND: control
9D		OSC: abbreviation
9E		PRIVACY MESSAGE: control
9E		PM: abbreviation
9F		APPLICATION PROGRAM COMMAND: control
9F		APC: abbreviation
A0		NBSP: abbreviation
AD		SHY: abbreviation
1A2		LATIN CAPITAL LETTER GHA: correction
1A3		LATIN SMALL LETTER GHA: correction
34F		CGJ: abbreviation
616		ARABIC SMALL HIGH LIGATURE ALEF'; # code point maps to itself

# Some code points require special handling because their mappings are each to
# multiple code points.  These do not appear in the main body, but are defined
# in the hash below.

# Each key is the string of N bytes that together make up the UTF-8 encoding
# for the code point.  (i.e. the same as looking at the code point's UTF-8
# under "use bytes").  Each value is the UTF-8 of the translation, for speed.
%Unicode::UCD::ToSpecNFKCCF = (
"\xC2\xA8" => "\x{0020}\x{0308}",             # U+00A8 => 0020 36
65949
65952
65953
66000
66046
66176
66205
66208
66257
66272
66300
66304
66340
66349
66379
66384
66427
66432
66462
66463
66500
66504
66518
66560
66718
66720
66730
66736
66772
66776
66812
66816
66856
66864
66916
66927
66939
66940
66955
66956
66963
66964
66966
66967
66978
66979
66994
66995
67002
67003
67005
67008
67060
67072
67383
67392
67414
67424
67432
67456
67462
67463
67505
67506
67515
67584
67590
67592
67593
67594
67638
67639
67641
67644
67645
67647
67670
67671
67743
67751
67760
67808
67827
67828
67830
67835
67868
67871
67898
00
69623
69632
69710
69714
69750
69759
69821
69822
69827
69840
69865
69872
69882
69888
69941
69942
69960
69968
70007
70016
70112
70113
70133
70144
70162
70163
70210
70272
70279
70280
70281
70282
70286
70287
70302
70303
70314
70320
70379
70384
70394
70400
70404
70405
70413
70415
70417
70419
70441
70442
70449
70450
70452
70453
70458
70459
70469
70471
70473
70475
70478
70480
70481
70487
70488
70493
70500
70502
70509
70512
70517
70528
70538
70539
70540
70542
70543
70544
70582
70583
70593
70594
70595
70597
70598
70599
70603
70604
70614

72848
72850
72872
72873
72887
72960
72967
72968
72970
72971
73015
73018
73019
73020
73022
73023
73032
73040
73050
73056
73062
73063
73065
73066
73103
73104
73106
73107
73113
73120
73130
73136
73180
73184
73194
73440
73465
73472
73489
73490
73531
73534
73563
73648
73649
73664
73714
73727
74650
74752
74863
74864
74869
74880
75076
77712
77811
77824
78934
78944
82939
82944
83527
90368
90426
92160
92729
92736
92767
92768
92778
92782
92863
92864
92874
92880
92910
92912
92918
92928
92998
93008
93018
93019
93026
93027
93048
93053
93072
93552
126553
126554
126555
126556
126557
126558
126559
126560
126561
126563
126564
126565
126567
126571
126572
126579
126580
126584
126585
126589
126590
126591
126592
126602
126603
126620
126625
126628
126629
126634
126635
126652
126704
126706
126976
127020
127024
127124
127136
127151
127153
127168
127169
127184
127185
127222
127232
127406
127462
127491
127504
127548
127552
127561
127568
127570
127584
127590
127744
128729
128732
128749
128752
128765
128768
128986
128992
129004
129008
129009
129024
129036
129040
129096
129104
129114
1
7958
7960
7966
7968
8006
8008
8014
8016
8024
8025
8026
8027
8028
8029
8030
8031
8062
8064
8117
8118
8133
8134
8148
8150
8156
8157
8176
8178
8181
8182
8191
8192
8293
8294
8306
8308
8335
8336
8349
8352
8386
8400
8433
8448
8588
8592
9258
9280
9291
9312
11124
11126
11508
11513
11558
11559
11560
11565
11566
11568
11624
11631
11633
11647
11671
11680
11687
11688
11695
11696
11703
11704
11711
11712
11719
11720
11727
11728
11735
11736
11743
11744
11870
11904
11930
11931
12020
12032
12246
12272
12352
12353
12439
12441
12544
12549
12592
125943791
43793
43799
43808
43815
43816
43823
43824
43880
43888
44014
44016
44026
44032
55204
55216
55239
55243
55292
55296
64110
64112
64218
64256
64263
64275
64280
64285
64311
64312
64317
64318
64319
64320
64322
64323
64325
64326
64450
64467
64832
64848
64912
64914
64968
64976
65022
65024
65050
65056
65107
65108
65127
65128
65132
65136
65141
65142
65277
65279
65280
65281
65471
65474
65480
65482
65488
65490
65496
65498
65501
65504
65511
65512
65519
65529
65548
65549
65575
65576
65595
65596
65598
65599
65614
65616
65630
65664
65787
6572
3428
3430
3456
3457
3460
3461
3479
3482
3506
3507
3516
3517
3518
3520
3527
3530
3531
3535
3541
3542
3543
3544
3552
3558
3568
3570
3573
3585
3643
3647
3676
3713
3715
3716
3717
3718
3723
3724
3748
3749
3750
3751
3774
3776
3781
3782
3783
3784
3790
3792
3802
3804
3808
3840
3912
3913
3949
3953
3992
3993
4029
4030
4045
4046
4059
4096
4294
4295
4296
4301
4302
4304
4681
4682
4686
4688
4695
4696
4697
4698
4702
4704
4745
4746
4750
4752
4785
4786
4790
4792
4799
4800
4801
4802
4806
4808
4823
4824
4881
4882
4886
4888
4955
4957
4989
4992
5018
65
2571
2575
2577
2579
2601
2602
2609
2610
2612
2613
2615
2616
2618
2620
2621
2622
2627
2631
2633
2635
2638
2641
2642
2649
2653
2654
2655
2662
2679
2689
2692
2693
2702
2703
2706
2707
2729
2730
2737
2738
2740
2741
2746
2748
2758
2759
2762
2763
2766
2768
2769
2784
2788
2790
2802
2809
2816
2817
2820
2821
2829
2831
2833
2835
2857
2858
2865
2866
2868
2869
2874
2876
2885
2887
2889
2891
2894
2901
2904
2908
2910
2911
2916
2918
2936
2946
2948
2949
2955
2958
2961
2962
2966
2969
2971
2972
2973
2974
2976
2979
2981
2984
2987
2990
3002
3006
3011119808
119893
119894
119965
119966
119968
119970
119971
119973
119975
119977
119981
119982
119994
119995
119996
119997
120004
120005
120070
120071
120075
120077
120085
120086
120093
120094
120122
120123
120127
120128
120133
120134
120135
120138
120145
120146
120486
120488
120780
120782
120832
122928
122990
126464
126468
126469
126496
126497
126499
126500
126501
126503
126504
126505
126515
126516
126520
126521
126522
126523
126524
126530
126531
126535
126536
126537
126538
126539
126540
126541
126544
126545
126547
126548
126549
12655
68736
68787
68800
68851
68858
68864',
'V6
43392
43470
43472
43482
43486
43488',
'V4
43264
43310
43311
43312',
'V4
70144
70162
70163
70210',
'V4
69760
69827
69837
69838',
'V6
67072
67383
67392
67414
67424
67432',
'V4
42192
42240
73648
73649',
'V2
66176
66205',
'V4
67872
67898
67903
67904',
'V2
69968
70007',
'V4
2112
2140
2142
2143',
'V4
68288
68327
68331
68343',
'V4
71168
71237
71248
71258',
'V6
72096
72104
72106
72152
72154
72165',
'V4
70656
70748
70749
70754',
'V4
124368
124411
124415
124416',
'V2
68608
68681',
'V4
66736
66772
66xpressed as character values in hex. If there is more than one character,
# they are separated by spaces. Other than as used to separate elements, spaces are
# to be ignored.
#
# The <condition_list> is optional. Where present, it consists of one or more language IDs
# or casing contexts, separated by spaces. In these conditions:
# - A condition list overrides the normal behavior if all of the listed conditions are true.
# - The casing context is always the context of the characters in the original string,
#   NOT in the resulting ile is machine-generated by lib/unicore/mktables from the Unicode
# database, Version 17.0.0.  Any changes made here will be lost!

# !!!!!!!   INTERNAL PERL USE ONLY   !!!!!!!
# This file is for internal use by core Perl only.  The format and even the
# name or existence of this file are subject to change without notice.  Don't
# use it directly.  Use Unicode::UCD to access the Unicode character data
# base.


return <<'END';
00000
NULL

00000
NUL

00001
START OF HEADING

00001
SOH

00002
START OF TEXT

00002
STX

00003
END OF TEXue> meaning that the operation was a success. When a method
states that it returns a value, failure will be returned as I<undef> or an
empty list.

C<Net::NNTP> inherits from C<Net::Cmd> so methods defined in C<Net::Cmd> may
be used to send commands to the remote NNTP server in addition to the methods
documented here.

=over 4

=item C<host()>

Returns the value used by the constructor, and passed to IO::Socket::INET,
to connect to the host.

=item C<starttls()>

Upgrade existing plain connection to SSL.
Any arguments necessary forift;
  my $arr  = @_ == 1 && ref($_[0]) ? $_[0] : \@_;
  my $line = join("", @$arr);

  # Perls < 5.10.1 (with the exception of 5.8.9) have a performance problem with
  # the substitutions below when dealing with strings stored internally in
  # UTF-8, so downgrade them (if possible).
  # Data passed to datasend() should be encoded to octets upstream already so
  # shouldn't even have the UTF-8 flag on to start with, but if it so happens
  # that the octets are stored in an upgraded string (as can sometimes occur)
  # then they wou    # TODO: file-discipline things here!
  }

  $self->{'source_fh'} = $handle;
  DEBUG and print STDERR "  Its handle is $handle\n";
  return 1;
}

# ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~

sub get_title_short {  shift->get_short_title(@_)  } # alias

sub get_short_title {
  my $title = shift->get_title(@_);
  $title = $1 if $title =~ m/^(\S{1,60})\s+--?\s+./s;
    # turn "Foo::Bar -- bars for your foo" into "Foo::Bar"
  return $title;
}

sub get_title       { shift->_get_titled_section(
  'NAME'ta (i.e., not really processed at
all), or as verbatim (mostly just expanding tabs), or as processed text
(parsing formatting codes like BE<lt>...E<gt>).

For example, to accept a new directive "=method", you'd presumably
use:

    $parser->accept_directive_as_processed("method");

so that you could have Pod lines like:

    =method I<$whatever> thing B<um>

Making up your own directives breaks compatibility with other Pod
formatters, in a way that using "=for I<target> ..." lines doesn't;
however, you may find this useful if you're> );

Pod::Simple::Search will by default internally make an assumption
based on the underlying filesystem where the class file is found
whether it is case insensitive or not.

If it is determined to be case insensitive, during survey() it may
skip pod files/modules that happen to be equal to names it's already
seen, ignoring case.

However, it's possible to have distinct files in different directories
that intentionally has the same name, just differing in case, that should
be reported. Hence, you may force the behavior by settinhey are specifically intended for use within (a) the
F<Pod-Html> distribution (modules and test programs) shipped as part of the
Perl 5 core and (b) other parts of the core such as the F<installhtml>
program.  These functions may be modified or relocated within the core
distribution -- or removed entirely therefrom -- as the core's needs evolve.
Hence, you should not rely on these functions in situations other than those
just described.

=cut

=head2 C<process_command_line()>

Process command-line switches (options).  Returns a refions are
desired.

WARNING: The input encoding of the POD source is independent from the output
encoding, and setting this option does not affect the interpretation of the
POD input.  Unless your POD source is US-ASCII, its encoding should be
declared with the C<=encoding> command in the source, as near to the top of
the file as possible.  If this is not done, Pod::Simple will will attempt to
guess the encoding and may be successful if it's Latin-1 or UTF-8, but it will
produce warnings.  See L<perlpod(1)> for more information.

=iode transform.
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\"
.\" If the F register is >0, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD.  Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
.\"
.\" Avoid warning from groff about undefined register 'F'.
.de IX
..
.nr rF 0
.if \n(.g .if rF .nr rF 1
.if (\n(rF:(\n(.g==0)) \{\
.    if \nF \{\
.        de IX
.        tm Index:\\$1\t\\n%\t"\\$2"
..
.set or the POD specials C<verbar> and C<sol>. I<Currently, this warning
only appears if a character entity was found that does not have a Unicode
character. This should be fixed to adhere to the original warning.>

=item * empty =over/=back block

The list opened with C<=over> does not contain anything.

=item * empty section in previous paragraph

The previous section (introduced by a C<=head> command) does not contain
any valid content. This usually indicates that something is missing. Note: A
C<=head1> followed immediately by C<_directory {
    my ( $class, $dir, $files ) = @_;

    my @files;

    if ( $files ) {
      @files = @$files;
    }
    else {
      find( {
        wanted => sub {
          push @files, $_ if -f $_ && /\.pm$/;
        },
        no_chdir => 1,
      }, $dir );
    }

    # First, we enumerate all packages & versions,
    # separating into primary & alternative candidates
    my( %prime, %alt );
    foreach my $file (@files) {
      my $mapped_filename = File::Spec->abs2rel( $file, $dir );
      my @path = File::Spec->splitdir(   return;
    }

    push @{$self->{_data}}, $obj;

    return $obj;
}

=head2 $tar->error( [$BOOL] )

Returns the current error string (usually, the last error reported).
If a true value was specified, it will give the C<Carp::longmess>
equivalent of the error, in effect giving you a stacktrace.

For backwards compatibility, this error is also available as
C<$Archive::Tar::error> although it is much recommended you use the
method call instead.

=cut

{
    $error = '';
    my $longmess;

    sub _error {
        my $self    = shif your code if you need to!
        | */
        |
        |#undef XS_EUPXS
        |#if defined(PERL_EUPXS_ALWAYS_EXPORT)
        |#  define XS_EUPXS(name) XS_EXTERNAL(name)
        |#else
        |   /* default to internal */
        |#  define XS_EUPXS(name) XS_INTERNAL(name)
        |#endif
        |
        |#ifndef PERL_ARGS_ASSERT_CROAK_XS_USAGE
        |#define PERL_ARGS_ASSERT_CROAK_XS_USAGE assert(cv); assert(params)
        |
        |/* prototype to pass -Wmissing-prototypes */
        |static void
        |S_croak_xs_ushe one exception is that if we're building in the Perl source tree, and
  # a library spec could be resolved via a logical name, we go to some trouble
  # to ensure that the copy in the local tree is used, rather than one to
  # which a system-wide logical may point.
  if ($self->perl_src) {
    my($lib,$locspec,$type);
    foreach $lib (@crtls) {
      if (($locspec,$type) = $lib =~ m{^([\w\$-]+)(/\w+)?} and $locspec =~ /perl/i) {
        if    (lc $type eq '/share')   { $locspec .= $self->{'config'}{'exe_ext'}; }
        elsif (l   # recursively search through the named directories (skipping any
    # which don't exist or contain Makefile.PL files).

    # For each *.pm or *.pl file found $self->libscan() is called with
    # the default installation path in $_[1]. The return value of
    # libscan defines the actual installation location.  The default
    # libscan function simply returns the path.  The file is skipped
    # if libscan returns false.

    # The default installation location passed to libscan in $_[1] is:
    #
    #  ./*.pm		=> $(INST_LIBile {
    my $self = shift;

    # Process the macros on VMS MMS/MMK
    my @args = map { m{\$\(} ? $self->eliminate_macros($_) : $_  } @_;

    my $file = $self->SUPER::catfile(@args);

    $file = vmsify($file);

    return $file
}


=item eliminate_macros

Expands MM[KS]/Make macros in a text string, using the contents of
identically named elements of C<%$self>, and returns the result
as a file specification in Unix syntax.

NOTE:  This is the canonical version of the method.  The version in
L<File::Spec::VMS> is deprecated.

=c zero or more directories
containing archive
libraries that relate to perl modules and should be linked into a new
perl binary. It writes a corresponding F<miniperlmain.c> or F<perlmain.c>
file that
is a plain C file containing all the bootstrap code to make the
modules associated with the libraries available from within perl.
If the first argument to C<writemain()> is a reference to a scalar it is
used as the filename to open for output. Any other reference is used as
the filehandle to write to. Otherwise output defaults to C<STDOib>, depending on whether GCC or some other win32 compiler is
being used, respectively.

If neither the C<-L> or C<-l> prefix is present in an entry, the entry is
considered a directory to search if it is in fact a directory, and a
library to search for otherwise.  The C<$Config{lib_ext}> suffix will
be appended to any entries that are not directories and don't already have
the suffix.

Note that the C<-L> and C<-l> prefixes are B<not required>, but authors
who wish their extensions to be portable to Unix or OS/2 should use the
preake_filename});
    delete $self->{string};
  }
  elsif (defined $self->{file} and -e $self->{file}) {
    open my $fh, '<', $self->{file}
      or die "Cannot open typemap file '"
             . $self->{file} . "' for reading: $!";
    local $/ = undef;
    my $string = <$fh>;
    $self->_parse(\$string, $self->{lineno_offset}, $self->{file});
  }
}


=head2 file

Get/set the file that the typemap is written to when the
C<write> method is called.

=cut

sub file {
  $_[0]->{file} = $_[1] if @_ > 1;
  $_[0]->{file}
}

=head2 add_tyEND__

=head1 NAME

Unicode::Collate::CJK::JISX0208 - weighting JIS KANJI for Unicode::Collate

=head1 SYNOPSIS

    use Unicode::Collate;
    use Unicode::Collate::CJK::JISX0208;

    my $collator = Unicode::Collate->new(
        overrideCJK => \&Unicode::Collate::CJK::JISX0208::weightJISX0208
    );

=head1 DESCRIPTION

C<Unicode::Collate::CJK::JISX0208> provides C<weightJISX0208()>,
that is adequate for C<overrideCJK> of C<Unicode::Collate>
and makes tailoring of 6355 kanji (CJK Unified Ideographs)
in the JIS X 0208 order.

=hea 8786 8CDC
5306 56EA 56F1 82C1 5FE9 679E 6031 60A4 68C7 7127
8471 6F17 8061 84EF 8525 9AA2 66B0 6A05 6A2C 719C
747D 7481 7DEB 8066 806A 71EA 779B 7BF5 8070 87CC
936F 7E71 93E6 9A18 9A44
4ECE 4E1B 5F93 5A43 5B6E 5F96 5F9E 60B0 6DD9 742E
6152 6F0E 6F40 6F68 8AB4 8CE8 8CE9 6A37 85C2 53E2
7047 6B09 721C
6181 8B25
8310
51D1 6E4A 8160 8F8F 8F33
7C97 89D5 9E81 9E84 9EA4
5F82 6B82
4FC3 731D 8128 9162 7604 851F 8A8E 8D97 5648 61B1
8E27 918B 762F 7C07 7E2C 8E59 9F00 8E74 8E75 9863
6C46 64BA 92D1 9569 8E7F 651B 8EA5 9479
6AD5 5DD1 6B11 7A73
7ified Ideographs in the order
of CLDR's gb2312han ordering.

=head1 CAVEAT

The gb2312han ordering includes 5 code points in private use area
(E2D8..E2DC), that can't utilize C<weightGB2312()> for collation.
For them, use C<entry> instead.

=head1 SEE ALSO

=over 4

=item CLDR - Unicode Common Locale Data Repository

L<http://cldr.unicode.org/>

=item Unicode Locale Data Markup Language (LDML) - UTS #35

L<http://www.unicode.org/reports/tr35/>

=item L<Unicode::Collate>

=item L<Unicode::Collate::Locale>

=back

=cut
package Unicod004E 030C ; [.2118.001E.0008] # LATIN CAPITAL LETTER N WITH CARON
01F9      ; [.2118.001F.0002] # LATIN SMALL LETTER N WITH GRAVE
006E 0300 ; [.2118.001F.0002] # LATIN SMALL LETTER N WITH GRAVE
006E 0340 ; [.2118.001F.0002] # LATIN SMALL LETTER N WITH GRAVE
01F8      ; [.2118.001F.0008] # LATIN CAPITAL LETTER N WITH GRAVE
004E 0300 ; [.2118.001F.0008] # LATIN CAPITAL LETTER N WITH GRAVE
004E 0340 ; [.2118.001F.0008] # LATIN CAPITAL LETTER N WITH GRAVE
014D      ; [.213C.001C.0002] # LATIN SMALL LETTER O WITH MACRON
006F 0304 ; [.216     ; [*038A.0020.0004][.8CA9.0020.0004][*038B.0020.0004] # TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-76D7
2F00      ; [.CBDC.0020.0004] # KANGXI RADICAL ONE
3192      ; [.CBDC.0020.0014] # IDEOGRAPHIC ANNOTATION ONE MARK
3280      ; [.CBDC.0020.0006] # CIRCLED IDEOGRAPH ONE
1F229     ; [.CBDC.0020.001C] # SQUARED CJK UNIFIED IDEOGRAPH-4E00
319C      ; [.8EC1.0020.0014] # IDEOGRAPHIC ANNOTATION FOURTH MARK
3286      ; [.AD39.0020.0006] # CIRCLED IDEOGRAPH SEVEN
3194      ; [.C8DF.0020.0014] # IDEOGRAPHIC ANNOTATION THREE MAR MARK>
30D8 30FC ; [.42F7.0020.0011.0002][.42DE.0020.0007.0002] # <KATAKANA LETTER HE, KATAKANA-HIRAGANA PROLONGED SOUND MARK>
FF8D 30FC ; [.42F7.0020.0011.0002][.42DE.0020.0007.0002] # <HALFWIDTH KATAKANA LETTER HE, KATAKANA-HIRAGANA PROLONGED SOUND MARK>
FF8D FF70 ; [.42F7.0020.0011.0002][.42DE.0020.0007.0002] # <HALFWIDTH KATAKANA LETTER HE, HALFWIDTH KATAKAN+{
   locale_version => 1.31,
# schwa doesn't require tailoring
   entry => <<'ENTRY', # for DUCET v13.0.0
00E7      ; [.1FD7.0020.0002] # LATIN SMALL LETTER C WITH CEDILLA
  ; [.0000.0000.0000] # COMBINING CYRILLIC KAVYKA
A67E      ; [.0000.0000.0000] # CYRILLIC KAVYKA
0485      ; [.0000.0021.0000][.0000.00A1.0002][.0000.0021.0000] # COMBINING CYRILLIC DASIA PNEUMATA
0486      ; [.0000.0021.0000][.0000.00A2.0002][.0000.0021.0000] # COMBINING CYRILLIC PSILI PNEUMATA
0301      ; [.0000.0021.0000][.0000.00A3.0002][.0000.0021.0000] # COMBINING ACUTE ACCENT
00E1      ; [.1FA2.0020.0002][.0000.0021.0000][.0000.00A3.0002][.0000.0021.0000] # LATIN SMALL LETTER A WITH ACUTE
00C1      ; [.1FA2.0020.0008][.0000CCENT>
00DC 0340 ; [.2217.0024.0008] # <LATIN CAPITAL LETTER U WITH DIAERESIS, COMBINING GRAVE TONE MARK>
00FC      ; [.2217.0025.0002] # LATIN SMALL LETTER U WITH DIAERESIS
0075 0308 ; [.2217.0025.0002] # LATIN SMALL LETTER U WITH DIAERESIS
00DC      ; [.2217.0025.0008] # LATIN CAPITAL LETTER U WITH DIAERESIS
0055 0308 ; [.2217.0025.0008] # LATIN CAPITAL LETTER U WITH DIAERESIS
F967      ; [.804A.0020.0002] # CJK COMPATIBILITY IDEOGRAPH-F967
FA70      ; [.82DE.0020.0002] # CJK COMPATIBILITY IDEOGRAPH-FA70
F905      ; [.81CB.0020.000.0032.0002.0301] # LATIN CAPITAL LETTER U WITH ACUTE; QQCM
00F9  ; [.0BD7.0020.0002.0075][.0000.0035.0002.0300] # LATIN SMALL LETTER U WITH GRAVE; QQCM
00D9  ; [.0BD7.0020.0008.0055][.0000.0035.0002.0300] # LATIN CAPITAL LETTER U WITH GRAVE; QQCM
00FB  ; [.0BD7.0020.0002.0075][.0000.003C.0002.0302] # LATIN SMALL LETTER U WITH CIRCUMFLEX; QQCM
00DB  ; [.0BD7.0020.0008.0055][.0000.003C.0002.0302] # LATIN CAPITAL LETTER U WITH CIRCUMFLEX; QQCM
00FC  ; [.0BD7.0020.0002.0075][.0000.0047.0002.0308] # LATIN SMALL LETTER U WITH DIAERESISdefine UNICODE_IS_END_PLANE_NONCHAR_GIVEN_NOT_SUPER(uv)                  \
                                          (((UV) (uv) & 0xFFFE) == 0xFFFE)
#  endif
#  ifndef is_NONCHAR_utf8_safe
#    define is_NONCHAR_utf8_safe(s,e)     /*** GENERATED CODE ***/            \
( ( ( LIKELY((e) > (s)) ) && ( LIKELY(((e) - (s)) >= UTF8SKIP(s)) ) ) ? ( ( 0xEF == ((const U8*)s)[0] ) ?\
	    ( ( 0xB7 == ((const U8*)s)[1] ) ?                               \
		( ( 0x90 <= ((const U8*)s)[2] && ((const U8*)s)[2] <= 0xAF ) ? 3 : 0 )\
	    : ( ( 0xBF internally 
once an operation is in progress.

=head1 Supported Encodings

As of Perl 5.8.0, at least the following encodings are recognized.
Note that unless otherwise specified, they are all case insensitive
(via alias) and all occurrence of spaces are replaced with '-'.
In other words, "ISO 8859 1" and "iso-8859-1" are identical.

Encodings are categorized and implemented in several different modules
but you don't have to C<use Encode::XX> to make them available for
most cases.  Encode.pm will automatically load those modules o       print "xe     = $xe\n";
    }

    # If the mantissa is not an integer, round up to nearest integer, and then
    # convert the number to a string. It is important to always round up due to
    # how Newton's method behaves in this case. If the initial guess is too
    # small, the next guess will be too large, after which every succeeding
    # guess converges the correct value from above. Now, if the initial guess
    # is too small and n is large, the next guess will be much too large and
    # require a large number of il routines in the
caller environment and even overrides some (C<sin>, C<cos>).  This is
construed as a feature by the Authors, actually... ;-)

The code is not optimized for speed, especially because we use
C<Math::Complex> and thus go quite near complex numbers while doing
the computations even when the arguments are not. This, however,
cannot be completely avoided if we want things like C<asin(2)> to give
an answer instead of giving a fatal runtime error.

Do not attempt navigation using these formulas.

=head1 SEE ALSO

L<Math::    my @r       = @_;                   # rounding paramters

    # Make "require" work.

    $class -> import() if $IMPORT == 0;

    # Don't modify constant (read-only) objects.

    return $self if $selfref && $self -> modify('bpi');

    # If called as a class method, initialize a new object.

    $self = bless {}, $class unless $selfref;

    ($self, @r) = $self -> _find_round_parameters(@r);

    # The accuracy, i.e., the number of digits. Pi has one digit before the
    # dot, so a precision of 4 digits is equivalent to an a platforms that don't support ANSI
escape sequences.

=item NO_COLOR

If this environment variable is set to any value, it suppresses generation of
escape sequences the same as if ANSI_COLORS_DISABLED is set to a true value.
This implements the L<https://no-color.org/> informal standard.  Programs that
want to enable color despite NO_COLOR being set will need to unset that
environment variable before any constant or function provided by this module
is used.

=back

=head1 COMPATIBILITY

Term::ANSIColor was first included with Perl  be one of the
new C<IO::Compress> or C<IO::Uncompress> modules.

=head1 GZIP INTERFACE

A number of functions are supplied in I<zlib> for reading and writing
I<gzip> files that conform to RFC 1952. This module provides an interface
to most of them.

If you have previously used C<Compress::Zlib> 1.x, the following
enhancements/changes have been made to the C<gzopen> interface:

=over 5

=item 1

If you want to open either STDIN or STDOUT with C<gzopen>, you can now
optionally use the special filename "C<->" as a synonym for C<\*STDent with the
results of the subtest. The subtest event itself will report to the proper file
and line number due to the context you acquired (even though it does not I<look>
like you used the context.

C<run_subtest()> can take additional arguments:

    run_subtest($name, $code, \%params, @args);

=over 4

=item @args

This allows you to pass arguments into the codeblock that gets run.

=item \%params

This is a hashref of parameters. Currently there are 3 possible parameters:

=over 4

=item buffered => $bool

This will turn the 
possible for Test2 to work around the issue, it should. (Patches and bug
reports welcome).

=head2 Test::Builder

L<Test::Builder> has had thread support for a long time. With Test2 the
mechanism for thread support was switched to L<Test2::IPC>. L<Test::Builder>
should still support threads as much as it did before the switch to Test2.
Support includes auto-enabling thread support if L<threads> is loaded before
Test::Builder.

If there is a deviation between the new and old threading behavior then it is a
bug (unless the old behavn arrayref.

B<Note:> that there is no validation when using C<set_items>, it is better to
use the C<add_item> interface.

=item $name = $arr->name()

Always returns the string C<< "<BAG>" >>.

=item $bool = $arr->verify(got => $got, exists => $bool)

Check if C<$got> is an array reference or not.

=item $arr->add_item($item)

Push an item onto the list of values to be checked.

=item @deltas = $arr->deltas(got => $got, convert => \&convert, seen => \%seen)

Find the differences between the expected bag values and those in the C<$gRSAL::TO_JSON = sub { +{ %{$_[0]} } };
        my $json = JSON::PP->new->ascii->pretty->canonical->allow_unknown->allow_blessed->convert_blessed;
        $data = $json->encode(\%bad);
        1;
    };
    $ok ||= eval {
        require Data::Dumper;
        local $Data::Dumper::Sortkeys = 1;
        $data = Data::Dumper::Dumper(\%bad);
        1;
    };

    $data = "Could not dump data... sorry." unless defined $data;

    $self->abort_trace("Not all files from hub '$hid' have been collected!\nHere is the leftover data:\n========ck->() unless $void;

    my $level = 0;
    my $caller;
    while (my @call = caller($level++)) {
        next if $call[0] eq __PACKAGE__;
        $caller = \@call;
        last;
    }

    my $handled;
    for my $handler (@{$HANDLERS{$caller->[0]}}) {
        $handled++ if $handler->(
            class   => $class,
            caller  => $caller,
            builder => $callback,
            args    => \@args,
        );
    }

    croak "mock_class should not be called in a void context without a registered handler"
        unlad Granum E<lt>exodist@cpan.orgE<gt>.

This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.

See F<http://dev.perl.org/licenses/>

=cut
package Test2::Require;
use strict;
use warnings;

our $VERSION = '1.302219';

use Test2::API qw/context/;
use Carp qw/croak/;

sub skip {
    my $class = shift;
    croak "Class '$class' needs to implement 'skip()'";
}

sub import {
    my $class = shift;
    return if $class eq __PACKAGE__;

    my $skip = $class->skip(@_);
    return unlessThis plugin has no configuration.

=head1 ENVIRONMENT VARIABLES

See L<Test2::Env> for a list of meaningful environment variables.

=head1 API FUNCTIONS

See L<Test2::API> for these

=over 4

=item $ctx = context()

=item $events = intercept { ... }

=back

=head1 TOOLS

=head2 TARGET

See L<Test2::Tools::Target>.

You can specify a target class with the C<-target> import argument. If you do
not provide a target then C<$CLASS> and C<CLASS()> will not be imported.

    use Test2::V0 -target => 'My::Class';

    print $CLASS;  # My::e prefers the form listed above, i.e. it
splits on /\s+version\s+/ taking the first field as the name of the
tool that generated the file and the second field as version of that
tool. RWS]

=head1 VERSION SPECIFICATIONS

Some fields require a version specification (ex. L</requires>,
L</recommends>, L</build_requires>, etc.) to indicate the particular
versionZ<>(s) of some other module that may be required as a
prerequisite.  This section details the version specification formats
that are currently supported.

The simplest format fo--------#

#pod =method new
#pod
#pod   my $cmv = CPAN::Meta::Validator->new( $struct )
#pod
#pod The constructor must be passed a metadata structure.
#pod
#pod =cut

sub new {
  my ($class,$data) = @_;

  # create an attributes hash
  my $self = {
    'data'    => $data,
    'spec'    => eval { $data->{'meta-spec'}{'version'} } || "1.0",
    'errors'  => undef,
  };

  # create the object
  return bless $self, $class;
}

#pod =method is_valid
#pod
#pod   if ( $cmv->is_valid ) {
#pod     ...
#pod   }
#pod
#pod Returns a boolean vale is currently no way for a
distribution to specify a dependency on an optional feature of another
dependency, the use of C<optional_feature> is discouraged.  Instead,
create a separate, installable distribution that ensures the desired
feature is available.  For example, if C<Foo::Bar> has a C<Baz> feature,
release a separate C<Foo-Bar-Baz> distribution that satisfies
requirements for the feature.

=head3 prereqs

Example:

  prereqs => {
    runtime => {
      requires => {
        'perl'          => '5.006',
        'File::Spec'ead($buffer) > 0 ;
        $CPAN::Frontend->mydie("Error reading from $read: $!\n")
            if $gz->gzerror != Compress::Zlib::Z_STREAM_END();
        $gz->gzclose() ;
        $fhw->close;
        return 1;
    } else {
        my $command = CPAN::HandleConfig->safe_quote($self->{UNGZIPPRG});
        system(qq{$command -d -c "$read" > "$write"})==0;
    }
}


sub gtest {
    my($self) = @_;
    return $self->{GTEST} if exists $self->{GTEST};
    defined $self->{FILE} or $CPAN::Frontend->mydie("gtest called but no FILE specifiedy existing key in the given
C<$meta> object will be clobbered.

=head1 STRING DATA

The following methods return a single value, which is the value for the
corresponding entry in the distmeta structure.  Values should be either undef
or strings.

=over 4

=item *

abstract

=item *

description

=item *

dynamic_config

=item *

generated_by

=item *

name

=item *

release_status

=item *

version

=back

=head1 LIST DATA

These methods return lists of string values, which might be represented in the
distmeta structure as arrayreflection of the nearest cpan mirrors is performed,
this option can be used to turn on verbosity during the selection
process.

Do you want to see verbosity turned on when autoselecting mirrors?

=item use_prompt_default

When this is true, CPAN will set PERL_MM_USE_DEFAULT to a true
value.  This causes ExtUtils::MakeMaker (and compatible) prompts
to use default values instead of stopping to prompt you to answer
questions. It also sets NONINTERACTIVE_TESTING to a true value to
signal more generally that distributions should not try t my $self = shift;
    my $out = $self->SUPER::facet_data();
    $out->{info}->[0]->{debug} = 0;
    return $out;
}

1;

__END__

=pod

=encoding UTF-8

=head1 NAME

Test::Builder::TodoDiag - Test::Builder subclass of Test2::Event::Diag

=head1 DESCRIPTION

This is used to encapsulate diag messages created inside TODO.

=head1 SYNOPSIS

You do not need to use this directly.

=head1 SOURCE

The source code repository for Test2 can be found at
L<https://github.com/Test-More/test-more/>.

=head1 MAINTAINERS

=over 4

=item Chad Granume::status;


=head1 DESCRIPTION

B<STOP!> If you're just getting started writing tests, have a look at
L<Test2::Suite> first.

This is a drop in replacement for Test::Simple which you can switch to once you
get the hang of basic testing.

The purpose of this module is to provide a wide range of testing
utilities.  Various ways to say "ok" with better diagnostics,
facilities to skip tests, test future features and compare complicated
data structures.  While you can do almost anything with a simple
C<ok()> function, it doesn't providthat the module is much
shorter than its documentation!

=head1 COPYRIGHT AND DISCLAIMER

Copyright (c) 1999-2004 Sean M. Burke.  All rights reserved.

This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.

This program is distributed in the hope that it will be useful, but
without any warranty; without even the implied warranty of
merchantability or fitness for a particular purpose.

=head1 AUTHOR

Sean M. Burke C<sburke@cpan.org>

=cut
package Locale::Maketext;
use strict;
ou = @_;
        ref $coderef or return;
        my $cv = B::svref_2object($coderef);
        $cv->isa('B::CV') or return;
        # bail out if GV is undefined
        $cv->GV->isa('B::SPECIAL') and return;

        return ($cv->GV->STASH->NAME, $cv->GV->NAME);
    };

}

sub sub_fullname {
    return join( '::', get_code_info( $_[1] ) );
}

my %Hints_loaded = ();

sub load_hints {
    my ($class, $sub) = @_;

    my ($package) = ( $sub =~ /(.*)::/ );

    if (not defined $package) {
        require Carp;
        Carp::croak(
       when the flow of control leaves the block which contained
it. For more details, see L<perlsyn/defer>.

This feature is available starting in Perl 5.36.

=head2 The 'enhanced_xx' feature

B<WARNING>: This feature is still experimental and the implementation may
change or be removed in future versions of Perl.  For this reason, Perl will
warn when you use the feature, unless you have explicitly disabled the warning:

    no warnings "experimental::eenhanced_xx";

This feature changes the meaning of the C</xx> regular expression patt is just:

     use Test;
     BEGIN { plan tests => 23 }

These are the things that you can put in the parameters to plan:

=over

=item C<tests =E<gt> I<number>>

The number of tests in your script.
This means all ok() and skip() calls.

=item C<todo =E<gt> [I<1,5,14>]>

A reference to a list of tests which are allowed to fail.
See L</TODO TESTS>.

=item C<onfail =E<gt> sub { ... }>

=item C<onfail =E<gt> \&some_sub>

A subroutine reference to be run at the end of the test script, if
any of the tests fail.  See L</ONFAIL>.

=backtime));
    my $sememe;

    foreach $sememe (@_ ? @_ : qw(exit hushed)) {
        $^H{'vmsish_exit'}   = 0 if $sememe eq 'exit';
        vmsish::hushed(0) if $sememe eq 'hushed';
    }
}

1;
# -*- mode: Perl; buffer-read-only: t -*-
# !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
# This file is built by regen/warnings.pl.
# Any changes made here will be lost!

package warnings;

our $VERSION = "1.78";

# Verify that we're called correctly so that warnings will work.
# Can't use Carp, since Carp uses us!
# String regexps because constaer has a prefix, but
        # the functions parsing numbers don't require it, so check to see if it
        # actually is a binary number.

        $str =~ /^0[Bb]/ and
        $nstr = Math::BigInt -> bin_str_to_dec_flt_str($str))
    {
        return $obj_class -> new($nstr);
    }

    # If we get here, there is a bug in the code above this point.

    warn "Internal error: unable to handle literal constant '$str'.",
      " This is a bug, so please report this to the module author.";
    return $obj_class -> bnan();
}

######## a string returned; the 1 arg means that we are in
  # runtime, and this is the first level routine called from the user
  return _charnames::lookup_name($arg, 0, 1);
} # string_vianame

__END__

=encoding utf8

=head1 NAME

charnames - access to Unicode character names and named character sequences; also define character names

=head1 SYNOPSIS

 use charnames ':full';
 print "\N{GREEK SMALL LETTER SIGMA} is called sigma.\n";
 print "\N{LATIN CAPITAL LETTER E WITH VERTICAL LINE BELOW}",
       " is an officially named sequence of t.

See above documentation on the B<reval> method for further details.

=head2 root (NAMESPACE)

This method returns the name of the package that is the root of the
compartment's namespace.

Note that this behaviour differs from version 1.00 of the Safe module
where the root module could be used to change the namespace. That
functionality has been withdrawn pending deeper consideration.

=head2 mask (MASK)

This is a get-or-set method for the compartment's operator mask.

With no MASK argument present, it returns the current operat documentation for this module with the perldoc command.

    perldoc bignum

You can also look for information at:

=over 4

=item * GitHub

L<https://github.com/pjacklam/p5-bignum>

=item * RT: CPAN's request tracker

L<https://rt.cpan.org/Dist/Display.html?Name=bignum>

=item * MetaCPAN

L<https://metacpan.org/release/bignum>

=item * CPAN Testers Matrix

L<http://matrix.cpantesters.org/?dist=bignum>

=back

=head1 LICENSE

This program is free software; you may redistribute it and/or modify it under
the same terms as Perl itsel{$mod}[$c];
            my $ret = eval { &$code() };
            $ret = "" unless defined $ret;
            if ($@) {
                # warn "DEBUG: c[$c]\$\@[$@]ret[$ret]";
                return;
            }
        }
    }
    return $HAS_USABLE->{$mod} = 1;
}

sub frontend {
    shift;
    $CPAN::Frontend = shift if @_;
    $CPAN::Frontend;
}

sub use_inst {
    