Statistics-R-IO-1.0002000755000765000024 013140202262 14021 5ustar00davorstaff000000000000README100644000765000024 1444713140202262 15014 0ustar00davorstaff000000000000Statistics-R-IO-1.0002NAME Statistics::R::IO - Perl interface to serialized R data VERSION version 1.0002 SYNOPSIS use Statistics::R::IO; my $var = Statistics::R::IO::readRDS('file.rds'); print $var->to_pl; my %r_workspace = Statistics::R::IO::readRData('.RData'); while (my ($var_name, $value) = each %r_workspace) { print $var_name, $value; } my $pi = Statistics::R::IO::evalRserve('pi'); print $pi->to_pl; DESCRIPTION This module is a pure-Perl implementation for reading native data files produced by the R statistical computing environment ) It provides routines for reading files in the two primary file formats used in R for serializing native objects: RDS RDS files store a serialization of a single R object (and, if the object contains references to other objects, such as environments, all the referenced objects as well). These files are created in R using the "readRDS" function and are typically named with the ".rds" file extension. RData RData files store a serialization of a collection of *named* objects, typically a workspace. These files are created in R using the "save" function and are typically named with the ".RData" file extension. (Contents of the R workspace can also be saved automatically on exit to the file named .RData, which is by default automatically read in on startup.) As of version 0.04, the module can also evaluate R code on a remote host that runs the Rserve binary R server. This allows Perl programs to access all facilities of R without the need to have a local install of R or link to an R library. See "SUBROUTINES" for invocation and usage information on individual subroutines, and the R Internals manual for the specification of the file formats. EXPORT Nothing by default. Optionally, subroutines "readRDS", "readRData", and "evalRserve", or ":all" for all three. SUBROUTINES readRDS EXPR Reads a file in RDS format whose filename is given by EXPR and returns a Statistics::R::REXP object. readRData EXPR Reads a file in RData format whose filename is given by EXPR and returns a hash whose keys are the names of objects stored in the file with corresponding values as Statistics::R::REXP instances. evalRserve REXPR [ HOSTNAME [, PORT] | HANDLE] Evaluates an R expression, given as text string in REXPR, on an Rserve server and returns its result as a Statistics::R::REXP object. The server location can be specified either by its host name and (optionally) port or by a connected instance of IO::Handle. The caller passing the HANDLE is responsible for reading (and checking) the server ID that is returned in the first 32-byte response when the connection was established. This allows opening the connection once and reusing it in multiple calls to 'evalRserve'. If only REXPR is given, the function assumes that the server runs on the localhost. If PORT is not specified, it defaults to the standard Rserve port, 6311. The function will close the connection to the Rserve host if it has opened it itself, but not if the connection was passed as a HANDLE. DEPENDENCIES Requires perl 5.010 or newer. Core modules * strict * warnings * overload * Carp * Exporter * Module::Build * Scalar::Util * Test::More Additional CPAN modules * Class::Tiny * Class::Tiny::Antlers * Class::Method::Modifiers * namespace::clean * Test::Fatal BUGS AND LIMITATIONS The module currently handles the 'version 2' serialization format, used since R 1.4.0 (released in December 2001). Only XDR and native-order binary is implemented, and since the R documentation describes the ASCII save format as "now mainly of historical interest", this is unlikely to change soon. No check is performed that a file stored in native-order binary was created on a platform that used the same order, and it is up to the caller to ensure compatibility. (Given that the default save format is XDR, and the prevalence of Intel platforms, this is unlikely to be a problem for either publicly-distributed or internal data files.) Data files compressed with 'gzip' and 'bzip2' are supported, but not 'xz' ones. Again, given the R defaults ('gzip') and the fact that "IO::Uncompress::UnXz" is not production-ready, this is unlikely to change soon. There are some R types that are not (yet) implemented, although all typical "user-facing" types -- such as vectors, lists, and environments -- are. The remaining R types will be implemented as-needed; in other words, if you come across one that you need to read a particular file, please send me the type (the id will included in the "unimplemented SEXPTYPE" error message) and, if possible, how it was generated. There are no known bugs in this module. Please report any bugs or feature requests to "bug-statistics-r-io at rt.cpan.org", or through the web interface at . I will be notified, and then you'll automatically be notified of progress on your bug as I make changes. SUPPORT You can find documentation for this module with the perldoc command. perldoc Statistics::R::IO You can also look for information at: * RT: CPAN's request tracker (report bugs here) * AnnoCPAN: Annotated CPAN documentation * CPAN Ratings * Search CPAN AUTHOR Davor Cubranic COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 Changes100644000765000024 600513140202262 15376 0ustar00davorstaff000000000000Statistics-R-IO-1.0002Revision history for Statistics-R-IO 1.0002 1 August 2017 - Fix failing install with pre-1.001 Class::Tiny (#54) 1.0001 29 May 2016 - minor bug fix: remove accidentally left-behind uses of Moose 1.0 28 May 2016 - switch from Moose to Class::Tiny and Class::Tiny::Antlers (#52) - Implement S4 SEXPs (#49) - QAP parsing of tagged and untagged pairlists (#47) - Add a 'sexptype' attribute to REXPs - Add an `inherits` method to the 'REXP' class (#45) - Add a copy and single-argument constructor to Unknown - Allow specyfing image dimensions in the WebWork macro (#51) - Capture R error message from Rserve::eval (#43) - Fix failing tests wit NaN/Inf on Windows (#40) 0.101 23 December 2014 - Fix failing tests involving comparison with infinity/NaN (#40) - Better handling of unopened server file handle in destructor (#41) - Declare testing dependency on Test::Mock::Extends 0.10 17 December 2014 - Implement complex vector SEXPs (#30) - Implement closure SEXPs (#29, #32, #34, #35, #36, #38) - Implement expression SEXPs (#26) - Implement special environments global, base, and empty (#31, #33) - Allow configuring Rserve host from WebWork settings - Add graceful failure in WWk macros if Rserve host is not configured - Fix parsing of special row names (#39) 0.092 21 July 2014 - fix setting custom Rserve host and port - allow specifying Rserve host for unit tests with RSERVE_HOST environment variable 0.091 30 June 2014 - Lower the minimum Perl version to 5.010 0.08 23 June 2014 - Use scalars in Perl rep of list for atomic vectors of length 1 - Switch from Moo to Moose (#22) - Create Rserve::get_file method to copy a file from the R server - Allow using low-level sockets as Rserve handles - Include a WebWork macros that wrap the Rserve functionality 0.071 22 May 2014 - Fix test failures when using Perl with long doubles (#9) 0.07 13 May 2014 - Implement NA values for all vector types (#16, #17, #18) - Fix parsing of logical vectors (incl. #14, #4) - Use Perl IO for Rserve communication (#13) - Fix argument check to work on 32-bit Perl (#12) 0.06 16 April 2014 - Fix out-of-memory crashes on OpenBSD (issue #10) - Fix test failures when using Perl with long doubles (#9) - Specify prerequisites' minimum version where necessary (#11) 0.05 2 April 2014 - Provide an object-oriented API to Rserve client - Implement the Rserve QAP1 protocol for data serialization 0.04 27 March 2014 Implement a basic Rserve client 0.03 21 March 2014 Provide an object-oriented API to RDS and RData files 0.02 20 March 2014 Fix failure on Perl 5.12 caused by using a 5.14 feature. 0.01 18 March 2014 Initial release. LICENSE100644000765000024 10476313140202262 15162 0ustar00davorstaff000000000000Statistics-R-IO-1.0002This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS 0. Definitions. "This License" refers to version 3 of the GNU General Public License. "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. "The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. A "covered work" means either the unmodified Program or a work based on the Program. To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. 1. Source Code. The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. The Corresponding Source for a work in source code form is that same work. 2. Basic Permissions. All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. 3. Protecting Users' Legal Rights From Anti-Circumvention Law. No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. 4. Conveying Verbatim Copies. You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. 5. Conveying Modified Source Versions. You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: a) The work must carry prominent notices stating that you modified it, and giving a relevant date. b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. 6. Conveying Non-Source Forms. You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. "Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. 7. Additional Terms. "Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or d) Limiting the use for publicity purposes of names of licensors or authors of the material; or e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. 8. Termination. You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. 9. Acceptance Not Required for Having Copies. You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. 10. Automatic Licensing of Downstream Recipients. Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 11. Patents. A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. 12. No Surrender of Others' Freedom. If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. 13. Use with the GNU Affero General Public License. Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. 14. Revised Versions of this License. The Free Software Foundation may publish revised and/or new versions of the GNU 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 that a certain numbered version of the GNU General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. 15. Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. Limitation of Liability. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 17. Interpretation of Sections 15 and 16. If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. 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. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . Also add information on how to contact you by electronic and paper mail. If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: Copyright (C) This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an "about box". You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see . The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . INSTALL100644000765000024 222513140202262 15134 0ustar00davorstaff000000000000Statistics-R-IO-1.0002This is the Perl distribution Statistics-R-IO. Installing Statistics-R-IO is straightforward. ## Installation with cpanm If you have cpanm, you only need one line: % cpanm Statistics::R::IO If it does not have permission to install modules to the current perl, cpanm will automatically set up and install to a local::lib in your home directory. See the local::lib documentation (https://metacpan.org/pod/local::lib) for details on enabling it in your environment. ## Installing with the CPAN shell Alternatively, if your CPAN shell is set up, you should just be able to do: % cpan Statistics::R::IO ## Manual installation As a last resort, you can manually install it. Download the tarball, untar it, then build it: % perl Makefile.PL % make && make test Then install it: % make install If your perl is system-managed, you can create a local::lib in your home directory to install modules to. For details, see the local::lib documentation: https://metacpan.org/pod/local::lib ## Documentation Statistics-R-IO documentation is available as POD. You can run perldoc from a shell to read the documentation: % perldoc Statistics::R::IO dist.ini100644000765000024 210013140202262 15537 0ustar00davorstaff000000000000Statistics-R-IO-1.0002name = Statistics-R-IO version = 1.0002 author = Davor Cubranic license = GPL_3 copyright_holder = University of British Columbia [GithubMeta] [@Git] ; add $VERSION to module [PkgVersion] [GatherDir] exclude_match = ~$ exclude_filename = README.pod include_dotfiles = 1 [PruneCruft] except = \.travis.yml [MetaYAML] [MetaJSON] [MakeMaker] [Manifest] [License] [Pod2Readme] [InstallGuide] [ShareDir] dir = extras [PodWeaver] config_plugin = @Default [Prereqs] perl = 5.010 Carp = 0 Scalar::Util = 0 Class::Tiny::Antlers = 0.023 Class::Method::Modifiers = 0 Class::Tiny = 1.001 namespace::clean = 0.24 Math::Complex = 0 [Prereqs / TestRequires] Test::More = 0.96 Test::Fatal = 0 Test::MockObject = 0 Test::MockObject::Extends = 0 [Prereqs / TestSuggests] File::Spec = 0 File::Path = 0 Path::Class = 0 [ExtraTests] [PodCoverageTests] [PodSyntaxTests] [Git::CommitBuild] branch = release_branch = release release_message = Release build of v%v (on %b) ; release: test-confirm-upload [TestRelease] [ConfirmRelease] [UploadToCPAN] subdir = Statistics-R-IO t000755000765000024 013140202262 14205 5ustar00davorstaff000000000000Statistics-R-IO-1.0002rexp.t100644000765000024 41213140202262 15465 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 1; use Test::Fatal; use Statistics::R::REXP; # not instantiable like(exception { Statistics::R::REXP->new, }, qr /an abstract class/, 'creating a REXP instance'); META.yml100644000765000024 162313140202262 15355 0ustar00davorstaff000000000000Statistics-R-IO-1.0002--- abstract: 'Perl interface to serialized R data' author: - 'Davor Cubranic ' build_requires: Test::Fatal: '0' Test::MockObject: '0' Test::MockObject::Extends: '0' Test::More: '0.96' configure_requires: ExtUtils::MakeMaker: '0' File::ShareDir::Install: '0.06' dynamic_config: 0 generated_by: 'Dist::Zilla version 6.010, CPAN::Meta::Converter version 2.150010' license: gpl meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html version: '1.4' name: Statistics-R-IO requires: Carp: '0' Class::Method::Modifiers: '0' Class::Tiny: '1.001' Class::Tiny::Antlers: '0.023' Math::Complex: '0' Scalar::Util: '0' namespace::clean: '0.24' perl: '5.010' resources: homepage: https://github.com/cubranic/Statistics-R-IO repository: https://github.com/cubranic/Statistics-R-IO.git version: '1.0002' x_serialization_backend: 'YAML::Tiny version 1.70' MANIFEST100644000765000024 27026013140202262 15302 0ustar00davorstaff000000000000Statistics-R-IO-1.0002# This file was automatically generated by Dist::Zilla::Plugin::Manifest v6.010. .build/ADjDGkLB5Y/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.travis.yml .build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.travis.yml .build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml .build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/Qg1xEAouWy/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.travis.yml .build/ADjDGkLB5Y/.build/R7PT3Roy1M/.travis.yml .build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.travis.yml .build/ADjDGkLB5Y/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml .build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml .build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml .build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml .build/ADjDGkLB5Y/.build/oDhfvXFexb/.travis.yml .build/ADjDGkLB5Y/.travis.yml .build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml .build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml .build/KhmO0VLCkZ/.build/Qg1xEAouWy/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.travis.yml .build/KhmO0VLCkZ/.build/R7PT3Roy1M/.travis.yml .build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.travis.yml .build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/g8N2M3ATbm/.travis.yml .build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml .build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml .build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml .build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml .build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml .build/KhmO0VLCkZ/.build/oDhfvXFexb/.travis.yml .build/KhmO0VLCkZ/.travis.yml .build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml .build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml .build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml .build/Qg1xEAouWy/.travis.yml .build/R7PT3Roy1M/.build/F0JgSFwCwT/.travis.yml .build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml .build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml .build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml .build/R7PT3Roy1M/.build/Qg1xEAouWy/.travis.yml .build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/R7PT3Roy1M/.build/aRBHNb7Z9M/.travis.yml .build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/R7PT3Roy1M/.build/g8N2M3ATbm/.travis.yml .build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml .build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml .build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml .build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml .build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml .build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml .build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml .build/R7PT3Roy1M/.build/oDhfvXFexb/.travis.yml .build/R7PT3Roy1M/.travis.yml .build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/aRBHNb7Z9M/.travis.yml .build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/g8N2M3ATbm/.travis.yml .build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml .build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml .build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml .build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml .build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml .build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml .build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml .build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml .build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml .build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml .build/oDhfvXFexb/.travis.yml .travis.yml Changes INSTALL LICENSE MANIFEST META.json META.yml Makefile.PL README Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.travis.yml Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.travis.yml Statistics-R-IO-1.0002/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.travis.yml Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.travis.yml Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.travis.yml Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.travis.yml Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/.build/oDhfvXFexb/.travis.yml Statistics-R-IO-1.0002/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.travis.yml Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.travis.yml dist.ini extras/WebWork/RserveClient.pl lib/Statistics/R/IO.pm lib/Statistics/R/IO/Base.pm lib/Statistics/R/IO/Parser.pm lib/Statistics/R/IO/ParserState.pm lib/Statistics/R/IO/QapEncoding.pm lib/Statistics/R/IO/RDS.pm lib/Statistics/R/IO/RData.pm lib/Statistics/R/IO/REXPFactory.pm lib/Statistics/R/IO/Rserve.pm lib/Statistics/R/REXP.pm lib/Statistics/R/REXP/BaseEnvironment.pm lib/Statistics/R/REXP/Character.pm lib/Statistics/R/REXP/Closure.pm lib/Statistics/R/REXP/Complex.pm lib/Statistics/R/REXP/Double.pm lib/Statistics/R/REXP/EmptyEnvironment.pm lib/Statistics/R/REXP/Environment.pm lib/Statistics/R/REXP/Expression.pm lib/Statistics/R/REXP/GlobalEnvironment.pm lib/Statistics/R/REXP/Integer.pm lib/Statistics/R/REXP/Language.pm lib/Statistics/R/REXP/List.pm lib/Statistics/R/REXP/Logical.pm lib/Statistics/R/REXP/Null.pm lib/Statistics/R/REXP/Raw.pm lib/Statistics/R/REXP/S4.pm lib/Statistics/R/REXP/Symbol.pm lib/Statistics/R/REXP/Unknown.pm lib/Statistics/R/REXP/Vector.pm t/author-pod-coverage.t t/author-pod-syntax.t t/data/ABC-abc-noxdr t/data/ABC-abc-xdr t/data/ABC-abc-xdr.rds t/data/ABC-abc-xdr_bzip.rds t/data/ABC-abc-xdr_xz.rds t/data/ABC-abc.qap t/data/ABCDE-tfftf-noxdr t/data/ABCDE-tfftf-xdr t/data/ABCDE-tfftf-xdr.rds t/data/ABCDE-tfftf-xdr_bzip.rds t/data/ABCDE-tfftf-xdr_xz.rds t/data/ABCDE-tfftf.qap t/data/README t/data/ab-mat-noxdr t/data/ab-mat-xdr t/data/ab-mat-xdr.rds t/data/ab-mat-xdr_bzip.rds t/data/ab-mat-xdr_xz.rds t/data/ab-mat.qap t/data/abc-123l-noxdr t/data/abc-123l-xdr t/data/abc-123l-xdr.rds t/data/abc-123l-xdr_bzip.rds t/data/abc-123l-xdr_xz.rds t/data/abc-123l.qap t/data/all.RData t/data/all_ascii.RData t/data/all_bzip.RData t/data/all_uncompressed.RData t/data/all_xz.RData t/data/baseenv-noxdr t/data/baseenv-xdr t/data/baseenv-xdr.rds t/data/baseenv-xdr_bzip.rds t/data/baseenv-xdr_xz.rds t/data/baseenv.qap t/data/cars-noxdr t/data/cars-xdr t/data/cars-xdr.rds t/data/cars-xdr_bzip.rds t/data/cars-xdr_xz.rds t/data/cars.qap t/data/char_na-noxdr t/data/char_na-xdr t/data/char_na-xdr.rds t/data/char_na-xdr_bzip.rds t/data/char_na-xdr_xz.rds t/data/char_na.qap t/data/clos_add-noxdr t/data/clos_add-xdr t/data/clos_add-xdr.rds t/data/clos_add-xdr_bzip.rds t/data/clos_add-xdr_xz.rds t/data/clos_add.qap t/data/clos_args-noxdr t/data/clos_args-xdr t/data/clos_args-xdr.rds t/data/clos_args-xdr_bzip.rds t/data/clos_args-xdr_xz.rds t/data/clos_args.qap t/data/clos_defaults-noxdr t/data/clos_defaults-xdr t/data/clos_defaults-xdr.rds t/data/clos_defaults-xdr_bzip.rds t/data/clos_defaults-xdr_xz.rds t/data/clos_defaults.qap t/data/clos_dots-noxdr t/data/clos_dots-xdr t/data/clos_dots-xdr.rds t/data/clos_dots-xdr_bzip.rds t/data/clos_dots-xdr_xz.rds t/data/clos_dots.qap t/data/clos_int-noxdr t/data/clos_int-xdr t/data/clos_int-xdr.rds t/data/clos_int-xdr_bzip.rds t/data/clos_int-xdr_xz.rds t/data/clos_int.qap t/data/clos_null-noxdr t/data/clos_null-xdr t/data/clos_null-xdr.rds t/data/clos_null-xdr_bzip.rds t/data/clos_null-xdr_xz.rds t/data/clos_null.qap t/data/closure-serialization-notes.org t/data/cpx-0i-noxdr t/data/cpx-0i-xdr t/data/cpx-0i-xdr.rds t/data/cpx-0i-xdr_bzip.rds t/data/cpx-0i-xdr_xz.rds t/data/cpx-0i.qap t/data/cpx-1i-noxdr t/data/cpx-1i-xdr t/data/cpx-1i-xdr.rds t/data/cpx-1i-xdr_bzip.rds t/data/cpx-1i-xdr_xz.rds t/data/cpx-1i.qap t/data/cpx-vector-noxdr t/data/cpx-vector-xdr t/data/cpx-vector-xdr.rds t/data/cpx-vector-xdr_bzip.rds t/data/cpx-vector-xdr_xz.rds t/data/cpx-vector.qap t/data/cpx_na-noxdr t/data/cpx_na-xdr t/data/cpx_na-xdr.rds t/data/cpx_na-xdr_bzip.rds t/data/cpx_na-xdr_xz.rds t/data/cpx_na.qap t/data/df_auto_rownames-noxdr t/data/df_auto_rownames-xdr t/data/df_auto_rownames-xdr.rds t/data/df_auto_rownames-xdr_bzip.rds t/data/df_auto_rownames-xdr_xz.rds t/data/df_auto_rownames.qap t/data/df_expl_rownames-noxdr t/data/df_expl_rownames-xdr t/data/df_expl_rownames-xdr.rds t/data/df_expl_rownames-xdr_bzip.rds t/data/df_expl_rownames-xdr_xz.rds t/data/df_expl_rownames.qap t/data/empty_char-noxdr t/data/empty_char-xdr t/data/empty_char-xdr.rds t/data/empty_char-xdr_bzip.rds t/data/empty_char-xdr_xz.rds t/data/empty_char.qap t/data/empty_clos-noxdr t/data/empty_clos-xdr t/data/empty_clos-xdr.rds t/data/empty_clos-xdr_bzip.rds t/data/empty_clos-xdr_xz.rds t/data/empty_clos.qap t/data/empty_cpx-noxdr t/data/empty_cpx-xdr t/data/empty_cpx-xdr.rds t/data/empty_cpx-xdr_bzip.rds t/data/empty_cpx-xdr_xz.rds t/data/empty_cpx.qap t/data/empty_expr-noxdr t/data/empty_expr-xdr t/data/empty_expr-xdr.rds t/data/empty_expr-xdr_bzip.rds t/data/empty_expr-xdr_xz.rds t/data/empty_expr.qap t/data/empty_int-noxdr t/data/empty_int-xdr t/data/empty_int-xdr.rds t/data/empty_int-xdr_bzip.rds t/data/empty_int-xdr_xz.rds t/data/empty_int.qap t/data/empty_lgl-noxdr t/data/empty_lgl-xdr t/data/empty_lgl-xdr.rds t/data/empty_lgl-xdr_bzip.rds t/data/empty_lgl-xdr_xz.rds t/data/empty_lgl.qap t/data/empty_list-noxdr t/data/empty_list-xdr t/data/empty_list-xdr.rds t/data/empty_list-xdr_bzip.rds t/data/empty_list-xdr_xz.rds t/data/empty_list.qap t/data/empty_num-noxdr t/data/empty_num-xdr t/data/empty_num-xdr.rds t/data/empty_num-xdr_bzip.rds t/data/empty_num-xdr_xz.rds t/data/empty_num.qap t/data/empty_raw-noxdr t/data/empty_raw-xdr t/data/empty_raw-xdr.rds t/data/empty_raw-xdr_bzip.rds t/data/empty_raw-xdr_xz.rds t/data/empty_raw.qap t/data/empty_sym-noxdr t/data/empty_sym-xdr t/data/empty_sym-xdr.rds t/data/empty_sym-xdr_bzip.rds t/data/empty_sym-xdr_xz.rds t/data/empty_sym.qap t/data/emptyenv-noxdr t/data/emptyenv-xdr t/data/emptyenv-xdr.rds t/data/emptyenv-xdr_bzip.rds t/data/emptyenv-xdr_xz.rds t/data/emptyenv.qap t/data/env.RData t/data/env_ascii.RData t/data/env_attr-noxdr t/data/env_attr-xdr t/data/env_attr-xdr.rds t/data/env_attr-xdr_bzip.rds t/data/env_attr-xdr_xz.rds t/data/env_attr.qap t/data/env_bzip.RData t/data/env_uncompressed.RData t/data/env_xz.RData t/data/expr_call-noxdr t/data/expr_call-xdr t/data/expr_call-xdr.rds t/data/expr_call-xdr_bzip.rds t/data/expr_call-xdr_xz.rds t/data/expr_call.qap t/data/expr_int-noxdr t/data/expr_int-xdr t/data/expr_int-xdr.rds t/data/expr_int-xdr_bzip.rds t/data/expr_int-xdr_xz.rds t/data/expr_int.qap t/data/expr_many-noxdr t/data/expr_many-xdr t/data/expr_many-xdr.rds t/data/expr_many-xdr_bzip.rds t/data/expr_many-xdr_xz.rds t/data/expr_many.qap t/data/expr_null-noxdr t/data/expr_null-xdr t/data/expr_null-xdr.rds t/data/expr_null-xdr_bzip.rds t/data/expr_null-xdr_xz.rds t/data/expr_null.qap t/data/f-123456-noxdr t/data/f-123456-xdr t/data/f-123456-xdr.rds t/data/f-123456-xdr_bzip.rds t/data/f-123456-xdr_xz.rds t/data/f-123456.qap t/data/foo-123456-noxdr t/data/foo-123456-xdr t/data/foo-123456-xdr.rds t/data/foo-123456-xdr_bzip.rds t/data/foo-123456-xdr_xz.rds t/data/foo-123456.qap t/data/foo-cpx-noxdr t/data/foo-cpx-xdr t/data/foo-cpx-xdr.rds t/data/foo-cpx-xdr_bzip.rds t/data/foo-cpx-xdr_xz.rds t/data/foo-cpx.qap t/data/foobar-list-noxdr t/data/foobar-list-xdr t/data/foobar-list-xdr.rds t/data/foobar-list-xdr_bzip.rds t/data/foobar-list-xdr_xz.rds t/data/foobar-list.qap t/data/frames.RData t/data/frames_ascii.RData t/data/frames_bzip.RData t/data/frames_uncompressed.RData t/data/frames_xz.RData t/data/globalenv-noxdr t/data/globalenv-xdr t/data/globalenv-xdr.rds t/data/globalenv-xdr_bzip.rds t/data/globalenv-xdr_xz.rds t/data/globalenv.qap t/data/int_na-noxdr t/data/int_na-xdr t/data/int_na-xdr.rds t/data/int_na-xdr_bzip.rds t/data/int_na-xdr_xz.rds t/data/int_na.qap t/data/iris-noxdr t/data/iris-xdr t/data/iris-xdr.rds t/data/iris-xdr_bzip.rds t/data/iris-xdr_xz.rds t/data/iris.qap t/data/lang-lm-mpgwt-noxdr t/data/lang-lm-mpgwt-xdr t/data/lang-lm-mpgwt-xdr.rds t/data/lang-lm-mpgwt-xdr_bzip.rds t/data/lang-lm-mpgwt-xdr_xz.rds t/data/lang-lm-mpgwt.qap t/data/lgl_na-noxdr t/data/lgl_na-xdr t/data/lgl_na-xdr.rds t/data/lgl_na-xdr_bzip.rds t/data/lgl_na-xdr_xz.rds t/data/lgl_na.qap t/data/list_na-noxdr t/data/list_na-xdr t/data/list_na-xdr.rds t/data/list_na-xdr_bzip.rds t/data/list_na-xdr_xz.rds t/data/list_na.qap t/data/list_null-noxdr t/data/list_null-xdr t/data/list_null-xdr.rds t/data/list_null-xdr_bzip.rds t/data/list_null-xdr_xz.rds t/data/list_null.qap t/data/lists.RData t/data/lists_ascii.RData t/data/lists_bzip.RData t/data/lists_uncompressed.RData t/data/lists_xz.RData t/data/lm.RData t/data/lm_ascii.RData t/data/lm_bzip.RData t/data/lm_uncompressed.RData t/data/lm_xz.RData t/data/mats.RData t/data/mats_ascii.RData t/data/mats_bzip.RData t/data/mats_uncompressed.RData t/data/mats_xz.RData t/data/mtcars-lm-mpgwt-noxdr t/data/mtcars-lm-mpgwt-xdr t/data/mtcars-lm-mpgwt-xdr.rds t/data/mtcars-lm-mpgwt-xdr_bzip.rds t/data/mtcars-lm-mpgwt-xdr_xz.rds t/data/mtcars-lm-mpgwt.qap t/data/mtcars-noxdr t/data/mtcars-xdr t/data/mtcars-xdr.rds t/data/mtcars-xdr_bzip.rds t/data/mtcars-xdr_xz.rds t/data/mtcars.qap t/data/noatt-123456-noxdr t/data/noatt-123456-xdr t/data/noatt-123456-xdr.rds t/data/noatt-123456-xdr_bzip.rds t/data/noatt-123456-xdr_xz.rds t/data/noatt-123456.qap t/data/noatt-123l-noxdr t/data/noatt-123l-xdr t/data/noatt-123l-xdr.rds t/data/noatt-123l-xdr_bzip.rds t/data/noatt-123l-xdr_xz.rds t/data/noatt-123l.qap t/data/noatt-abc-noxdr t/data/noatt-abc-xdr t/data/noatt-abc-xdr.rds t/data/noatt-abc-xdr_bzip.rds t/data/noatt-abc-xdr_xz.rds t/data/noatt-abc.qap t/data/noatt-cpx-noxdr t/data/noatt-cpx-xdr t/data/noatt-cpx-xdr.rds t/data/noatt-cpx-xdr_bzip.rds t/data/noatt-cpx-xdr_xz.rds t/data/noatt-cpx.qap t/data/noatt-list-noxdr t/data/noatt-list-xdr t/data/noatt-list-xdr.rds t/data/noatt-list-xdr_bzip.rds t/data/noatt-list-xdr_xz.rds t/data/noatt-list.qap t/data/noatt-mat-noxdr t/data/noatt-mat-xdr t/data/noatt-mat-xdr.rds t/data/noatt-mat-xdr_bzip.rds t/data/noatt-mat-xdr_xz.rds t/data/noatt-mat.qap t/data/noatt-raw-noxdr t/data/noatt-raw-xdr t/data/noatt-raw-xdr.rds t/data/noatt-raw-xdr_bzip.rds t/data/noatt-raw-xdr_xz.rds t/data/noatt-raw.qap t/data/noatt-tfftf-noxdr t/data/noatt-tfftf-xdr t/data/noatt-tfftf-xdr.rds t/data/noatt-tfftf-xdr_bzip.rds t/data/noatt-tfftf-xdr_xz.rds t/data/noatt-tfftf.qap t/data/noatt-true-noxdr t/data/noatt-true-xdr t/data/noatt-true-xdr.rds t/data/noatt-true-xdr_bzip.rds t/data/noatt-true-xdr_xz.rds t/data/noatt-true.qap t/data/null-noxdr t/data/null-xdr t/data/null-xdr.rds t/data/null-xdr_bzip.rds t/data/null-xdr_xz.rds t/data/null.qap t/data/num_na-noxdr t/data/num_na-xdr t/data/num_na-xdr.rds t/data/num_na-xdr_bzip.rds t/data/num_na-xdr_xz.rds t/data/num_na.qap t/data/pairlist_tagged-noxdr t/data/pairlist_tagged-xdr t/data/pairlist_tagged-xdr.rds t/data/pairlist_tagged-xdr_bzip.rds t/data/pairlist_tagged-xdr_xz.rds t/data/pairlist_tagged.qap t/data/pairlist_untagged-noxdr t/data/pairlist_untagged-xdr t/data/pairlist_untagged-xdr.rds t/data/pairlist_untagged-xdr_bzip.rds t/data/pairlist_untagged-xdr_xz.rds t/data/pairlist_untagged.qap t/data/s4-noxdr t/data/s4-xdr t/data/s4-xdr.rds t/data/s4-xdr_bzip.rds t/data/s4-xdr_xz.rds t/data/s4.qap t/data/s4_subclass-noxdr t/data/s4_subclass-xdr t/data/s4_subclass-xdr.rds t/data/s4_subclass-xdr_bzip.rds t/data/s4_subclass-xdr_xz.rds t/data/s4_subclass.qap t/data/test-r-eval t/data/test-rserve-eval t/data/vecs.RData t/data/vecs_ascii.RData t/data/vecs_bzip.RData t/data/vecs_uncompressed.RData t/data/vecs_xz.RData t/io-oo-rdata.t t/io-oo-rds.t t/io-oo-rserve-eval-live.t t/io-oo-rserve-eval-mock.t t/io-oo-rserve-getfile-live.t t/io-oo-rserve-sereval-live.t t/io-oo-rserve-sereval-mock.t t/io-parser.t t/io-parserstate.t t/io-qap.t t/io-rdata.t t/io-rds.t t/io-rserve-eval.t t/io-rserve.t t/io-unserialize.t t/lib/ClosureLenientEnv.pm t/lib/LenientSrcFile.pm t/lib/RexpOrUnknown.pm t/lib/ShortDoubleVector.pm t/lib/TestCases.pm t/rexp-baseenvironment.t t/rexp-character.t t/rexp-closure.t t/rexp-complex.t t/rexp-double.t t/rexp-emptyenvironment.t t/rexp-environment.t t/rexp-expression.t t/rexp-globalenvironment.t t/rexp-integer.t t/rexp-language.t t/rexp-list.t t/rexp-logical.t t/rexp-null.t t/rexp-raw.t t/rexp-s3.t t/rexp-s4.t t/rexp-symbol.t t/rexp-unknown.t t/rexp-vector.t t/rexp.t xt/wwk-rserveclient.t META.json100644000765000024 353513140202262 15531 0ustar00davorstaff000000000000Statistics-R-IO-1.0002{ "abstract" : "Perl interface to serialized R data", "author" : [ "Davor Cubranic " ], "dynamic_config" : 0, "generated_by" : "Dist::Zilla version 6.010, CPAN::Meta::Converter version 2.150010", "license" : [ "gpl_3" ], "meta-spec" : { "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", "version" : 2 }, "name" : "Statistics-R-IO", "prereqs" : { "configure" : { "requires" : { "ExtUtils::MakeMaker" : "0", "File::ShareDir::Install" : "0.06" } }, "develop" : { "requires" : { "Pod::Coverage::TrustPod" : "0", "Test::Pod" : "1.41", "Test::Pod::Coverage" : "1.08" } }, "runtime" : { "requires" : { "Carp" : "0", "Class::Method::Modifiers" : "0", "Class::Tiny" : "1.001", "Class::Tiny::Antlers" : "0.023", "Math::Complex" : "0", "Scalar::Util" : "0", "namespace::clean" : "0.24", "perl" : "5.010" } }, "test" : { "requires" : { "Test::Fatal" : "0", "Test::MockObject" : "0", "Test::MockObject::Extends" : "0", "Test::More" : "0.96" }, "suggests" : { "File::Path" : "0", "File::Spec" : "0", "Path::Class" : "0" } } }, "release_status" : "stable", "resources" : { "homepage" : "https://github.com/cubranic/Statistics-R-IO", "repository" : { "type" : "git", "url" : "https://github.com/cubranic/Statistics-R-IO.git", "web" : "https://github.com/cubranic/Statistics-R-IO" } }, "version" : "1.0002", "x_serialization_backend" : "Cpanel::JSON::XS version 3.0237" } io-qap.t100644000765000024 5773213140202262 15756 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 54; use Test::Fatal; use Statistics::R::IO::Parser qw(:all); use Statistics::R::IO::ParserState; use Statistics::R::IO::QapEncoding qw(:all); use lib 't/lib'; use ShortDoubleVector; use TestCases; sub check_qap { my ($file, $expected, $message) = @_; my $filename = $file . '.qap'; open (my $f, $filename) or die $! . " $filename"; binmode $f; my ($data, $rc) = ''; while ($rc = read($f, $data, 8192, length $data)) {} die $! unless defined $rc; subtest 'qap - ' . $message => sub { plan tests => 2; my ($actual, $state) = @{ decode($data) }; ## NOTE: I'm switching the order of comparisons to ensure ## ShortDoubleVector's 'eq' overload is used is($expected, $actual, $message) or diag explain $actual; ok($state->eof, $message . ' - parse complete') } } sub check_padding { my ($data, $expected, $message) = @_; subtest 'padding - ' . $message => sub { plan tests => 2; my ($value, $state) = @{ decode($data) }; is($value, $expected, $message) or diag explain $value; ok($state->eof, $message . ' - parse complete') } } subtest 'integer vectors' => sub { plan tests => 2; ## serialize 1:3, XDR: true check_qap('t/data/noatt-123l', Statistics::R::REXP::Integer->new([ 1, 2, 3 ]), 'int vector no atts'); ## serialize a=1L, b=2L, c=3L, XDR: true check_qap('t/data/abc-123l', Statistics::R::REXP::Integer->new( elements => [ 1, 2, 3 ], attributes => { names => Statistics::R::REXP::Character->new(['a', 'b', 'c']) }), 'int vector names att'); # ## handling of negative integer vector length # like(exception { # unserialize("\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x0d\xff\xff\xff\xff" . # "\0\0\0\0" . "\0\0\0\1") # }, qr/TODO: Long vectors are not supported/, 'long length'); # like(exception { # unserialize("\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x0d\xff\xff\xff\x0") # }, qr/Negative length/, 'negative length'); }; subtest 'double vectors' => sub { plan tests => 2; ## serialize 1:3, XDR: true check_qap('t/data/noatt-123456', ShortDoubleVector->new([ 1234.56 ]), 'double vector no atts'); ## serialize foo=1234.56, XDR: true check_qap('t/data/foo-123456', ShortDoubleVector->new( elements => [ 1234.56 ], attributes => { names => Statistics::R::REXP::Character->new(['foo']) }), 'double vector names att'); }; subtest 'character vectors' => sub { plan tests => 3; ## serialize letters[1:3], XDR: true check_qap('t/data/noatt-abc', Statistics::R::REXP::Character->new([ 'a', 'b', 'c' ]), 'character vector no atts'); ## serialize A='a', B='b', C='c', XDR: true check_qap('t/data/ABC-abc', Statistics::R::REXP::Character->new( elements => [ 'a', 'b', 'c' ], attributes => { names => Statistics::R::REXP::Character->new(['A', 'B', 'C']) }), 'character vector names att'); check_padding("\x0a\x0c\0\0\x22\x08\0\0\x61\0\x62\0\x63\0\1\1", Statistics::R::REXP::Character->new(['a', 'b', 'c']), 'c("a", "b", "c")'); }; subtest 'raw vectors' => sub { plan tests => 4; ## serialize as.raw(c(1:3, 255, 0), XDR: true check_qap('t/data/noatt-raw', Statistics::R::REXP::Raw->new([ 1, 2, 3, 255, 0 ]), 'raw vector'); check_padding("\x0a\x0c\0\0\x25\x08\0\0\1\0\0\0\x78\0\0\0", Statistics::R::REXP::Raw->new([120]), 'charToRaw("x")'); check_padding("\x0a\x0c\0\0\x25\x08\0\0\3\0\0\0\x66\x6f\x6f\0", Statistics::R::REXP::Raw->new([102, 111, 111]), 'charToRaw("foo")'); check_padding("\x0a\x0c\0\0\x25\x08\0\0\4\0\0\0\x66\x72\x65\x64", Statistics::R::REXP::Raw->new([102, 114, 101, 100]), 'charToRaw("fred")'); }; subtest 'logical vectors' => sub { plan tests => 5; check_qap('t/data/noatt-true', Statistics::R::REXP::Logical->new([ 1 ]), 'logical vector - singleton'); check_qap('t/data/noatt-tfftf', Statistics::R::REXP::Logical->new([ 1, 0, 0, 1, 0 ]), 'logical vector'); check_qap('t/data/ABCDE-tfftf', Statistics::R::REXP::Logical->new( elements => [ 1, 0, 0, 1, 0 ], attributes => { names => Statistics::R::REXP::Character->new(['A', 'B', 'C', 'D', 'E']) }), 'logical vector names att'); check_padding("\x0a\x0c\0\0\x24\x08\0\0\1\0\0\0\1\xff\xff\xff", Statistics::R::REXP::Logical->new([1]), 'TRUE'); check_padding("\x0a\x0c\0\0\x24\x08\0\0\4\0\0\0\1\0\0\1", Statistics::R::REXP::Logical->new([1, 0, 0, 1]), 'c(TRUE, FALSE, FALSE, TRUE)'); }; subtest 'generic vector (list)' => sub { plan tests => 2; ## serialize list(1:3, list('a', 'b', 11), 'foo'), XDR: true check_qap('t/data/noatt-list', Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ]), 'generic vector no atts'); ## serialize list(foo=1:3, list('a', 'b', 11), bar='foo'), XDR: true check_qap('t/data/foobar-list', Statistics::R::REXP::List->new( elements => [ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ], attributes => { names => Statistics::R::REXP::Character->new(['foo', '', 'bar']) }), 'generic vector names att'); }; subtest 'symbol' => sub { plan tests => 3; check_padding("\x0a\x08\0\0\x13\4\0\0\x78\0\0\0", Statistics::R::REXP::Symbol->new('x'), 'as.name("x")'); check_padding("\x0a\x08\0\0\x13\4\0\0\x66\x6f\x6f\0", Statistics::R::REXP::Symbol->new('foo'), 'as.name("foo")'); check_padding("\x0a\x0c\0\0\x13\x08\0\0\x66\x72\x65\x64\0\0\0\0", Statistics::R::REXP::Symbol->new('fred'), 'as.name("fred")'); }; subtest 'matrix' => sub { plan tests => 2; ## serialize matrix(-1:4, 2, 3), XDR: true check_qap('t/data/noatt-mat', Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), }), 'int matrix no atts'); ## serialize matrix(-1:4, 2, 3, dimnames=list(c('a', 'b'))), XDR: true check_qap('t/data/ab-mat', Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a', 'b']), Statistics::R::REXP::Null->new ]), }), 'int matrix rownames'); }; subtest 'data frames' => sub { plan tests => 3; ## serialize head(cars) check_qap('t/data/cars', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 4, 4, 7, 7, 8, 9]), ShortDoubleVector->new([ 2, 10, 4, 22, 16, 10]), ], attributes => { names => Statistics::R::REXP::Character->new(['speed', 'dist']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), 'the cars data frame'); ## serialize head(mtcars) check_qap('t/data/mtcars', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 6, 6, 4, 6, 8, 6 ]), ShortDoubleVector->new([ 160, 160, 108, 258, 360, 225 ]), ShortDoubleVector->new([ 110, 110, 93, 110, 175, 105 ]), ShortDoubleVector->new([ 3.90, 3.90, 3.85, 3.08, 3.15, 2.76 ]), ShortDoubleVector->new([ 2.620, 2.875, 2.320, 3.215, 3.440, 3.460 ]), ShortDoubleVector->new([ 16.46, 17.02, 18.61, 19.44, 17.02, 20.22 ]), ShortDoubleVector->new([ 0, 0, 1, 1, 0, 1 ]), ShortDoubleVector->new([ 1, 1, 1, 0, 0, 0 ]), ShortDoubleVector->new([ 4, 4, 4, 3, 3, 3 ]), ShortDoubleVector->new([ 4, 4, 1, 1, 2, 1 ]), ], attributes => { names => Statistics::R::REXP::Character->new([ 'mpg' , 'cyl', 'disp', 'hp', 'drat', 'wt', 'qsec', 'vs', 'am', 'gear', 'carb']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant' ]), }), 'the mtcars data frame'); ## serialize head(iris) check_qap('t/data/iris', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 5.1, 4.9, 4.7, 4.6, 5.0, 5.4 ]), ShortDoubleVector->new([ 3.5, 3.0, 3.2, 3.1, 3.6, 3.9 ]), ShortDoubleVector->new([ 1.4, 1.4, 1.3, 1.5, 1.4, 1.7 ]), ShortDoubleVector->new([ 0.2, 0.2, 0.2, 0.2, 0.2, 0.4 ]), Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 1 ], attributes => { levels => Statistics::R::REXP::Character->new([ 'setosa', 'versicolor', 'virginica']), class => Statistics::R::REXP::Character->new(['factor']) } ), ], attributes => { names => Statistics::R::REXP::Character->new([ 'Sepal.Length', 'Sepal.Width', 'Petal.Length', 'Petal.Width', 'Species']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), 'the iris data frame'); }; ## Call lm(mpg ~ wt, data = head(mtcars)) check_qap('t/data/lang-lm-mpgwt', Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), 'language lm(mpg~wt, head(mtcars))'); ## serialize lm(mpg ~ wt, data = head(mtcars)) check_qap('t/data/mtcars-lm-mpgwt', Statistics::R::REXP::List->new( elements => [ # coefficients ShortDoubleVector->new( elements => [ 30.3002034730204, -3.27948805566774 ], attributes => { names => Statistics::R::REXP::Character->new(['(Intercept)', 'wt']) }), # residuals ShortDoubleVector->new( elements => [ -0.707944767170941, 0.128324687024322, 0.108208816128727, 1.64335062595135, -0.318764561523408, -0.853174800410051 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # effects ShortDoubleVector->new( elements => [ -50.2145397270552, -3.39713386075597, 0.13375416348722, 1.95527848390874, 0.0651588996571721, -0.462851730054076 ], attributes => { names => Statistics::R::REXP::Character->new([ '(Intercept)', 'wt', '', '', '', '' ]) }), # rank Statistics::R::REXP::Integer->new([2]), # fitted.values ShortDoubleVector->new( elements => [ 21.7079447671709, 20.8716753129757, 22.6917911838713, 19.7566493740486, 19.0187645615234, 18.9531748004101 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # assign Statistics::R::REXP::Integer->new([0, 1]), # qr Statistics::R::REXP::List->new( elements => [ # qr ShortDoubleVector->new( elements => [ -2.44948974278318, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, -7.31989184801706, 1.03587322261623, 0.542107126002057, -0.321898217952644, -0.539106265315558, -0.558413647303373 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 6, 2 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]), Statistics::R::REXP::Character->new([ '(Intercept)', 'wt' ]) ]), assign => Statistics::R::REXP::Integer->new([ 0, 1 ]), }), # qraux ShortDoubleVector->new( [ 1.40824829046386, 1.0063272758402 ]), # pivot Statistics::R::REXP::Integer->new([1, 2]), # tol ShortDoubleVector->new([1E-7]), # rank Statistics::R::REXP::Integer->new([2]), ], attributes => { names => Statistics::R::REXP::Character->new([ "qr", "qraux", "pivot", "tol", "rank" ]), class => Statistics::R::REXP::Character->new(['qr']) }), # df.residual Statistics::R::REXP::Integer->new([4]), # xlevels Statistics::R::REXP::List->new( elements => [], attributes => { names => Statistics::R::REXP::Character->new([]) }), # call Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), # terms Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::Unknown->new(sexptype=>4), predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), # model Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 2.62, 2.875, 2.32, 3.215, 3.44, 3.46 ]), ], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant']), class => Statistics::R::REXP::Character->new(['data.frame']), terms => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::Unknown->new(sexptype=>4), predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), }), ], attributes => { names => Statistics::R::REXP::Character->new([ 'coefficients', 'residuals', 'effects', 'rank', 'fitted.values', 'assign', 'qr', 'df.residual', 'xlevels', 'call', 'terms', 'model', ]), class => Statistics::R::REXP::Character->new(['lm']) }), 'lm mpg~wt, head(mtcars)'); while ( my ($name, $value) = each %{TEST_CASES()} ) { SKIP: { skip "not yet supported", 1 if ($value->{skip} || '' =~ 'rserve'); check_qap('t/data/' . $name, $value->{value}, $value->{desc}); } } io-rds.t100644000765000024 5140113140202262 15750 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 62; use Test::Fatal; use Statistics::R::IO::Parser qw(:all); use Statistics::R::IO qw( readRDS ); use lib 't/lib'; use ShortDoubleVector; use TestCases; ## integer vectors sub check_rds_variants { my ($file, $expected, $message) = @_; ## NOTE: I'm switching the order of comparisons to ensure ## ShortDoubleVector's 'eq' overload is used subtest 'rds ' . $message => sub { plan tests => (-f "$file-noxdr" ? 5 : 4); my $actual = readRDS($file . '-xdr'); is($expected, $actual, $message . ' - xdr'); is($expected, readRDS($file . '-noxdr'), $message . ' - binary') if (-f "$file-noxdr"); $actual = readRDS($file . '-xdr.rds'); is($expected, $actual, $message . ' - compressed xdr'); $actual = readRDS($file . '-xdr_bzip.rds'); is($expected, $actual, $message . ' - bzip compressed xdr'); like(exception { readRDS($file . '-xdr_xz.rds') }, qr/xz-compressed RDS/, $message . ' - xz'); } } ## serialize 1:3, XDR: true check_rds_variants('t/data/noatt-123l', Statistics::R::REXP::Integer->new([ 1, 2, 3 ]), 'int vector no atts'); ## serialize a=1L, b=2L, c=3L, XDR: true check_rds_variants('t/data/abc-123l', Statistics::R::REXP::Integer->new( elements => [ 1, 2, 3 ], attributes => { names => Statistics::R::REXP::Character->new(['a', 'b', 'c']) }), 'int vector names att'); ## double vectors ## serialize 1234.56, XDR: true check_rds_variants('t/data/noatt-123456', ShortDoubleVector->new([ 1234.56 ]), 'double vector no atts'); ## serialize foo=1234.56, XDR: true check_rds_variants('t/data/foo-123456', ShortDoubleVector->new( elements => [ 1234.56 ], attributes => { names => Statistics::R::REXP::Character->new(['foo']) }), 'double vector names att'); ## character vectors ## serialize letters[1:3], XDR: true check_rds_variants('t/data/noatt-abc', Statistics::R::REXP::Character->new([ 'a', 'b', 'c' ]), 'character vector no atts'); ## serialize A='a', B='b', C='c', XDR: true check_rds_variants('t/data/ABC-abc', Statistics::R::REXP::Character->new( elements => [ 'a', 'b', 'c' ], attributes => { names => Statistics::R::REXP::Character->new(['A', 'B', 'C']) }), 'character vector names att - xdr'); ## raw vectors ## serialize as.raw(c(1:3, 255, 0), XDR: true check_rds_variants('t/data/noatt-raw', Statistics::R::REXP::Raw->new([ 1, 2, 3, 255, 0 ]), 'raw vector'); ## logical vectors ## serialize TRUE check_rds_variants('t/data/noatt-true', Statistics::R::REXP::Logical->new([ 1 ]), 'logical vector - singleton'); ## serialize c(TRUE, FALSE, FALSE, TRUE, FALSE) check_rds_variants('t/data/noatt-tfftf', Statistics::R::REXP::Logical->new([ 1, 0, 0, 1, 0 ]), 'logical vector'); ## serialize c(A=T, B=F, C=F, D=T, E=F) check_rds_variants('t/data/ABCDE-tfftf', Statistics::R::REXP::Logical->new( elements => [ 1, 0, 0, 1, 0 ], attributes => { names => Statistics::R::REXP::Character->new(['A', 'B', 'C', 'D', 'E']) }), 'logical vector names att'); ## list (i.e., generic vector) ## serialize list(1:3, list('a', 'b', 11), 'foo'), XDR: true check_rds_variants('t/data/noatt-list', Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ]), 'generic vector no atts'); ## serialize list(foo=1:3, list('a', 'b', 11), bar='foo'), XDR: true check_rds_variants('t/data/foobar-list', Statistics::R::REXP::List->new( elements => [ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ], attributes => { names => Statistics::R::REXP::Character->new(['foo', '', 'bar']) }), 'generic vector names att - xdr'); ## matrix ## serialize matrix(-1:4, 2, 3), XDR: true check_rds_variants('t/data/noatt-mat', Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), }), 'int matrix no atts'); ## serialize matrix(-1:4, 2, 3, dimnames=list(c('a', 'b'))), XDR: true check_rds_variants('t/data/ab-mat', Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a', 'b']), Statistics::R::REXP::Null->new ]), }), 'int matrix rownames'); ## data frames ## serialize head(cars) check_rds_variants('t/data/cars', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 4, 4, 7, 7, 8, 9]), ShortDoubleVector->new([ 2, 10, 4, 22, 16, 10]), ], attributes => { names => Statistics::R::REXP::Character->new(['speed', 'dist']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), 'the cars data frame'); ## serialize head(mtcars) check_rds_variants('t/data/mtcars', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 6, 6, 4, 6, 8, 6 ]), ShortDoubleVector->new([ 160, 160, 108, 258, 360, 225 ]), ShortDoubleVector->new([ 110, 110, 93, 110, 175, 105 ]), ShortDoubleVector->new([ 3.90, 3.90, 3.85, 3.08, 3.15, 2.76 ]), ShortDoubleVector->new([ 2.620, 2.875, 2.320, 3.215, 3.440, 3.460 ]), ShortDoubleVector->new([ 16.46, 17.02, 18.61, 19.44, 17.02, 20.22 ]), ShortDoubleVector->new([ 0, 0, 1, 1, 0, 1 ]), ShortDoubleVector->new([ 1, 1, 1, 0, 0, 0 ]), ShortDoubleVector->new([ 4, 4, 4, 3, 3, 3 ]), ShortDoubleVector->new([ 4, 4, 1, 1, 2, 1 ]), ], attributes => { names => Statistics::R::REXP::Character->new([ 'mpg' , 'cyl', 'disp', 'hp', 'drat', 'wt', 'qsec', 'vs', 'am', 'gear', 'carb']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant' ]), }), 'the mtcars data frame'); ## serialize head(iris) check_rds_variants('t/data/iris', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 5.1, 4.9, 4.7, 4.6, 5.0, 5.4 ]), ShortDoubleVector->new([ 3.5, 3.0, 3.2, 3.1, 3.6, 3.9 ]), ShortDoubleVector->new([ 1.4, 1.4, 1.3, 1.5, 1.4, 1.7 ]), ShortDoubleVector->new([ 0.2, 0.2, 0.2, 0.2, 0.2, 0.4 ]), Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 1 ], attributes => { levels => Statistics::R::REXP::Character->new([ 'setosa', 'versicolor', 'virginica']), class => Statistics::R::REXP::Character->new(['factor']) } ), ], attributes => { names => Statistics::R::REXP::Character->new([ 'Sepal.Length', 'Sepal.Width', 'Petal.Length', 'Petal.Width', 'Species']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), 'the iris data frame'); ## Call lm(mpg ~ wt, data = head(mtcars)) check_rds_variants('t/data/lang-lm-mpgwt', Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), 'language lm(mpg~wt, head(mtcars))'); ## serialize lm(mpg ~ wt, data = head(mtcars)) check_rds_variants('t/data/mtcars-lm-mpgwt', Statistics::R::REXP::List->new( elements => [ # coefficients ShortDoubleVector->new( elements => [ 30.3002034730204, -3.27948805566774 ], attributes => { names => Statistics::R::REXP::Character->new(['(Intercept)', 'wt']) }), # residuals ShortDoubleVector->new( elements => [ -0.707944767170941, 0.128324687024322, 0.108208816128727, 1.64335062595135, -0.318764561523408, -0.853174800410051 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # effects ShortDoubleVector->new( elements => [ -50.2145397270552, -3.39713386075597, 0.13375416348722, 1.95527848390874, 0.0651588996571721, -0.462851730054076 ], attributes => { names => Statistics::R::REXP::Character->new([ '(Intercept)', 'wt', '', '', '', '' ]) }), # rank Statistics::R::REXP::Integer->new([2]), # fitted.values ShortDoubleVector->new( elements => [ 21.7079447671709, 20.8716753129757, 22.6917911838713, 19.7566493740486, 19.0187645615234, 18.9531748004101 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # assign Statistics::R::REXP::Integer->new([0, 1]), # qr Statistics::R::REXP::List->new( elements => [ # qr ShortDoubleVector->new( elements => [ -2.44948974278318, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, -7.31989184801706, 1.03587322261623, 0.542107126002057, -0.321898217952644, -0.539106265315558, -0.558413647303373 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 6, 2 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]), Statistics::R::REXP::Character->new([ '(Intercept)', 'wt' ]) ]), assign => Statistics::R::REXP::Integer->new([ 0, 1 ]), }), # qraux ShortDoubleVector->new( [ 1.40824829046386, 1.0063272758402 ]), # pivot Statistics::R::REXP::Integer->new([1, 2]), # tol ShortDoubleVector->new([1E-7]), # rank Statistics::R::REXP::Integer->new([2]), ], attributes => { names => Statistics::R::REXP::Character->new([ "qr", "qraux", "pivot", "tol", "rank" ]), class => Statistics::R::REXP::Character->new(['qr']) }), # df.residual Statistics::R::REXP::Integer->new([4]), # xlevels Statistics::R::REXP::List->new( elements => [], attributes => { names => Statistics::R::REXP::Character->new([]) }), # call Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), # terms Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::GlobalEnvironment->new, predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), # model Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 2.62, 2.875, 2.32, 3.215, 3.44, 3.46 ]), ], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant']), class => Statistics::R::REXP::Character->new(['data.frame']), terms => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::GlobalEnvironment->new, predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), }), ], attributes => { names => Statistics::R::REXP::Character->new([ 'coefficients', 'residuals', 'effects', 'rank', 'fitted.values', 'assign', 'qr', 'df.residual', 'xlevels', 'call', 'terms', 'model', ]), class => Statistics::R::REXP::Character->new(['lm']) }), 'lm mpg~wt, head(mtcars)'); while ( my ($name, $value) = each %{TEST_CASES()} ) { SKIP: { skip "not yet supported", 1 if ($value->{skip} || '' =~ 'rds'); check_rds_variants('t/data/' . $name, $value->{value}, $value->{desc}); } } .travis.yml100644000765000024 14313140202262 16171 0ustar00davorstaff000000000000Statistics-R-IO-1.0002language: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release rexp-s3.t100644000765000024 203413140202262 16032 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 6; use Test::Fatal; use Statistics::R::REXP::List; use Statistics::R::REXP::Character; use Statistics::R::REXP::Double; use Statistics::R::REXP::Integer; my $empty_list = new_ok('Statistics::R::REXP::List', [ ], 'new generic vector' ); ok(! ($empty_list->attributes && $empty_list->attributes->{'class'}), 'no class'); ok(! $empty_list->inherits('foo'), 'no inheritance'); my $obj = Statistics::R::REXP::List->new(elements => [3.3, '4', 11], attributes => { class => Statistics::R::REXP::Character->new([ 'foo', 'data.frame' ]), names => Statistics::R::REXP::Character->new([ 'a', 'b', 'g' ]), }); ok( $obj->inherits('foo')); ok( $obj->inherits('data.frame')); ok( !$obj->inherits('bar')); rexp-s4.t100644000765000024 607013140202262 16037 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 22; use Test::Fatal; use Statistics::R::REXP::S4; my $s4 = new_ok('Statistics::R::REXP::S4', [ class => 'foo', package => 'bar' ], 'new symbol' ); is($s4, $s4, 'self equality'); my $s4_2 = Statistics::R::REXP::S4->new(class => 'foo', package => 'bar'); is($s4, $s4_2, 'symbol equality with copy'); is(Statistics::R::REXP::S4->new($s4_2), $s4, 'copy constructor'); ## error checking in constructor arguments like(exception { Statistics::R::REXP::S4->new(class => [1, 2, 3]) }, qr/Attribute 'class' must be a scalar value/, 'bad class argument'); like(exception { Statistics::R::REXP::S4->new(1, 2, 3) }, qr/odd number of elements/, 'odd constructor arguments'); like(exception { Statistics::R::REXP::S4->new(class => "foo", package => "bar", slots => [1, 2, 3]) }, qr/Attribute 'slots' must be a reference to a hash of REXPs/, 'bad slots argument'); like(exception { Statistics::R::REXP::S4->new(class => 'foo', package => [1, 2, 3]) }, qr/Attribute 'package' must be a scalar value/, 'bad package argument'); my $s4_foo = Statistics::R::REXP::S4->new(class => 'quux', package => 'bar'); isnt($s4, $s4_foo, 'symbol inequality'); is($s4->class, 'foo', 'object class'); is($s4->package, 'bar', 'object package'); is_deeply($s4->slots, {}, 'object slots'); ok(! $s4->is_null, 'is not null'); ok(! $s4->is_vector, 'is not vector'); is($s4 .'', "object of class 'foo' (package bar) with 0 slots", 'symbol text representation'); ## attributes is_deeply($s4->attributes, undef, 'default attributes'); my $s4_attr = Statistics::R::REXP::S4->new(class => 'foo', package => 'bar', attributes => { foo => 'bar', x => [40, 41, 42] }); is_deeply($s4_attr->attributes, { foo => 'bar', x => [40, 41, 42] }, 'constructed attributes'); my $s4_attr2 = Statistics::R::REXP::S4->new(class => 'foo', package => 'bar', attributes => { foo => 'bar', x => [40, 41, 42] }); my $another_sym_attr = Statistics::R::REXP::S4->new(class => 'foo', package => 'bar', attributes => { foo => 'bar', x => [40, 42, 42] }); is($s4_attr, $s4_attr2, 'equality considers attributes'); isnt($s4_attr, $s4, 'inequality considers attributes'); isnt($s4_attr, $another_sym_attr, 'inequality considers attributes deeply'); ## attributes must be a hash like(exception { Statistics::R::REXP::S4->new(attributes => 1) }, qr/Attribute 'attributes' must be a hash reference/, 'setting non-HASH attributes'); ## Perl representation is_deeply($s4->to_pl, {class => 'foo', package => 'bar', slots => {}}, 'Perl representation'); Makefile.PL100644000765000024 347413140202262 16064 0ustar00davorstaff000000000000Statistics-R-IO-1.0002# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v6.010. use strict; use warnings; use 5.010; use ExtUtils::MakeMaker; use File::ShareDir::Install; $File::ShareDir::Install::INCLUDE_DOTFILES = 1; $File::ShareDir::Install::INCLUDE_DOTDIRS = 1; install_share dist => "extras"; my %WriteMakefileArgs = ( "ABSTRACT" => "Perl interface to serialized R data", "AUTHOR" => "Davor Cubranic ", "CONFIGURE_REQUIRES" => { "ExtUtils::MakeMaker" => 0, "File::ShareDir::Install" => "0.06" }, "DISTNAME" => "Statistics-R-IO", "LICENSE" => "gpl", "MIN_PERL_VERSION" => "5.010", "NAME" => "Statistics::R::IO", "PREREQ_PM" => { "Carp" => 0, "Class::Method::Modifiers" => 0, "Class::Tiny" => "1.001", "Class::Tiny::Antlers" => "0.023", "Math::Complex" => 0, "Scalar::Util" => 0, "namespace::clean" => "0.24" }, "TEST_REQUIRES" => { "Test::Fatal" => 0, "Test::MockObject" => 0, "Test::MockObject::Extends" => 0, "Test::More" => "0.96" }, "VERSION" => "1.0002", "test" => { "TESTS" => "t/*.t" } ); my %FallbackPrereqs = ( "Carp" => 0, "Class::Method::Modifiers" => 0, "Class::Tiny" => "1.001", "Class::Tiny::Antlers" => "0.023", "Math::Complex" => 0, "Scalar::Util" => 0, "Test::Fatal" => 0, "Test::MockObject" => 0, "Test::MockObject::Extends" => 0, "Test::More" => "0.96", "namespace::clean" => "0.24" ); unless ( eval { ExtUtils::MakeMaker->VERSION(6.63_03) } ) { delete $WriteMakefileArgs{TEST_REQUIRES}; delete $WriteMakefileArgs{BUILD_REQUIRES}; $WriteMakefileArgs{PREREQ_PM} = \%FallbackPrereqs; } delete $WriteMakefileArgs{CONFIGURE_REQUIRES} unless eval { ExtUtils::MakeMaker->VERSION(6.52) }; WriteMakefile(%WriteMakefileArgs); { package MY; use File::ShareDir::Install qw(postamble); } io-rdata.t100644000765000024 5142713140202262 16263 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 7; use Test::Fatal; use Statistics::R::IO::Parser qw(:all); use Statistics::R::IO qw( readRData ); use lib 't/lib'; use ShortDoubleVector; sub check_rdata { my ($file, $expected, $message) = @_; subtest 'rdata ' . $message => sub { plan tests => keys(%{$expected}) + 1; my %actual = readRData($file); is(keys %actual, keys %{$expected}, "$message keys"); while (my ($key, $value) = each %{$expected}) { ## NOTE: I'm switching the order of comparisons to ensure ## ShortDoubleVector's 'eq' overload is used is($expected->{$key}, $actual{$key}, "$message $key"); } } } sub check_rdata_variants { my ($file, $expected, $message) = @_; subtest 'variants ' . $message => sub { plan tests => 4; check_rdata($file . '.RData', $expected, $message . ' - default'); check_rdata($file . '_uncompressed.RData', $expected, $message . ' - uncompressed'); check_rdata($file . '_bzip.RData', $expected, $message . ' - bzip'); like(exception { readRData($file . '_xz.RData') }, qr/xz-compressed RData/, $message . ' - xz'); } } ## Atomic vectors my %expected_vecs = ( noatt_int => Statistics::R::REXP::Integer->new([ -1, 0, 1, 2, 3 ]), abc_int => Statistics::R::REXP::Integer->new( elements => [ 1, 2, 3 ], attributes => { names => Statistics::R::REXP::Character->new(['a', 'b', 'c']) }), noatt_num => ShortDoubleVector->new([ 1234.56 ]), foo_num => ShortDoubleVector->new( elements => [ 1234.56 ], attributes => { names => Statistics::R::REXP::Character->new(['foo']) }), noatt_chr => Statistics::R::REXP::Character->new([ 'a', 'b', 'c' ]), abc_chr => Statistics::R::REXP::Character->new( elements => [ 'a', 'b', 'c' ], attributes => { names => Statistics::R::REXP::Character->new(['A', 'B', 'C']) }), noatt_raw => Statistics::R::REXP::Raw->new([ 1, 2, 3, 255, 0 ]), ); check_rdata_variants('t/data/vecs', \%expected_vecs, 'Vectors'); ## Matrices my %expected_mats = ( noatt_mat => Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), }), ab_mat => Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a', 'b']), Statistics::R::REXP::Null->new ]), }), ); check_rdata_variants('t/data/mats', \%expected_mats, 'Matrices'); ## Lists my %expected_lists = ( noatt_list => Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ]), foobar_list => Statistics::R::REXP::List->new( elements => [ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ], attributes => { names => Statistics::R::REXP::Character->new(['foo', '', 'bar']) }), ); check_rdata_variants('t/data/lists', \%expected_lists, 'Lists'); ## Data frames my %expected_frames = ( my_cars => Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 4, 4, 7, 7, 8, 9]), ShortDoubleVector->new([ 2, 10, 4, 22, 16, 10]), ], attributes => { names => Statistics::R::REXP::Character->new(['speed', 'dist']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), my_mtcars => Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 6, 6, 4, 6, 8, 6 ]), ShortDoubleVector->new([ 160, 160, 108, 258, 360, 225 ]), ShortDoubleVector->new([ 110, 110, 93, 110, 175, 105 ]), ShortDoubleVector->new([ 3.90, 3.90, 3.85, 3.08, 3.15, 2.76 ]), ShortDoubleVector->new([ 2.620, 2.875, 2.320, 3.215, 3.440, 3.460 ]), ShortDoubleVector->new([ 16.46, 17.02, 18.61, 19.44, 17.02, 20.22 ]), ShortDoubleVector->new([ 0, 0, 1, 1, 0, 1 ]), ShortDoubleVector->new([ 1, 1, 1, 0, 0, 0 ]), ShortDoubleVector->new([ 4, 4, 4, 3, 3, 3 ]), ShortDoubleVector->new([ 4, 4, 1, 1, 2, 1 ]), ], attributes => { names => Statistics::R::REXP::Character->new([ 'mpg' , 'cyl', 'disp', 'hp', 'drat', 'wt', 'qsec', 'vs', 'am', 'gear', 'carb']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant' ]), }), my_iris => Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 5.1, 4.9, 4.7, 4.6, 5.0, 5.4 ]), ShortDoubleVector->new([ 3.5, 3.0, 3.2, 3.1, 3.6, 3.9 ]), ShortDoubleVector->new([ 1.4, 1.4, 1.3, 1.5, 1.4, 1.7 ]), ShortDoubleVector->new([ 0.2, 0.2, 0.2, 0.2, 0.2, 0.4 ]), Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 1 ], attributes => { levels => Statistics::R::REXP::Character->new([ 'setosa', 'versicolor', 'virginica']), class => Statistics::R::REXP::Character->new(['factor']) } ), ], attributes => { names => Statistics::R::REXP::Character->new([ 'Sepal.Length', 'Sepal.Width', 'Petal.Length', 'Petal.Width', 'Species']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), ); check_rdata_variants('t/data/frames', \%expected_frames, 'Frames'); ## Environments my %expected_env = ( e1 => Statistics::R::REXP::Environment->new( frame => { x => Statistics::R::REXP::Character->new(['foo']), y => Statistics::R::REXP::Character->new(['bar']), }, enclosure => Statistics::R::REXP::GlobalEnvironment->new), e2 => Statistics::R::REXP::Environment->new( frame => { x => Statistics::R::REXP::Integer->new([7]), }, enclosure => Statistics::R::REXP::Environment->new( frame => { x => Statistics::R::REXP::Character->new(['foo']), y => Statistics::R::REXP::Character->new(['bar']), }, enclosure => Statistics::R::REXP::GlobalEnvironment->new), ), ); check_rdata_variants('t/data/env', \%expected_env, 'Environment'); ## Model objects my %expected_models = ( mtcars_lm => Statistics::R::REXP::List->new( elements => [ # coefficients ShortDoubleVector->new( elements => [ 30.3002034730204, -3.27948805566774 ], attributes => { names => Statistics::R::REXP::Character->new(['(Intercept)', 'wt']) }), # residuals ShortDoubleVector->new( elements => [ -0.707944767170941, 0.128324687024322, 0.108208816128727, 1.64335062595135, -0.318764561523408, -0.853174800410051 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # effects ShortDoubleVector->new( elements => [ -50.2145397270552, -3.39713386075597, 0.13375416348722, 1.95527848390874, 0.0651588996571721, -0.462851730054076 ], attributes => { names => Statistics::R::REXP::Character->new([ '(Intercept)', 'wt', '', '', '', '' ]) }), # rank Statistics::R::REXP::Integer->new([2]), # fitted.values ShortDoubleVector->new( elements => [ 21.7079447671709, 20.8716753129757, 22.6917911838713, 19.7566493740486, 19.0187645615234, 18.9531748004101 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # assign Statistics::R::REXP::Integer->new([0, 1]), # qr Statistics::R::REXP::List->new( elements => [ # qr ShortDoubleVector->new( elements => [ -2.44948974278318, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, -7.31989184801706, 1.03587322261623, 0.542107126002057, -0.321898217952644, -0.539106265315558, -0.558413647303373 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 6, 2 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]), Statistics::R::REXP::Character->new([ '(Intercept)', 'wt' ]) ]), assign => Statistics::R::REXP::Integer->new([ 0, 1 ]), }), # qraux ShortDoubleVector->new( [ 1.40824829046386, 1.0063272758402 ]), # pivot Statistics::R::REXP::Integer->new([1, 2]), # tol ShortDoubleVector->new([1E-7]), # rank Statistics::R::REXP::Integer->new([2]), ], attributes => { names => Statistics::R::REXP::Character->new([ "qr", "qraux", "pivot", "tol", "rank" ]), class => Statistics::R::REXP::Character->new(['qr']) }), # df.residual Statistics::R::REXP::Integer->new([4]), # xlevels Statistics::R::REXP::List->new( elements => [], attributes => { names => Statistics::R::REXP::Character->new([]) }), # call Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), # terms Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::GlobalEnvironment->new, predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), # model Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 2.62, 2.875, 2.32, 3.215, 3.44, 3.46 ]), ], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant']), class => Statistics::R::REXP::Character->new(['data.frame']), terms => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::GlobalEnvironment->new, predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), }), ], attributes => { names => Statistics::R::REXP::Character->new([ 'coefficients', 'residuals', 'effects', 'rank', 'fitted.values', 'assign', 'qr', 'df.residual', 'xlevels', 'call', 'terms', 'model', ]), class => Statistics::R::REXP::Character->new(['lm']) }), ); check_rdata_variants('t/data/lm', \%expected_models, 'Models'); my %expected_all = ( %expected_vecs, %expected_mats, %expected_lists, %expected_frames, %expected_env, %expected_models, ); check_rdata_variants('t/data/all', \%expected_all, 'all'); rexp-raw.t100644000765000024 455113140202262 16304 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 21; use Test::Fatal; use Statistics::R::REXP::Raw; use Statistics::R::REXP::List; my $empty_vec = new_ok('Statistics::R::REXP::Raw', [ ], 'new raw vector' ); is($empty_vec, $empty_vec, 'self equality'); my $empty_vec_2 = Statistics::R::REXP::Raw->new(); is($empty_vec, $empty_vec_2, 'empty raw vector equality'); my $vec = Statistics::R::REXP::Raw->new(elements => [3, 4, 11]); my $vec2 = Statistics::R::REXP::Raw->new([3, 4, 11]); is($vec, $vec2, 'raw vector equality'); is(Statistics::R::REXP::Raw->new($vec2), $vec, 'copy constructor'); is(Statistics::R::REXP::Raw->new(Statistics::R::REXP::List->new([3.3, [4, '11']])), $vec, 'copy constructor from a vector'); ## error checking in constructor arguments like(exception { Statistics::R::REXP::Raw->new(sub {1+1}) }, qr/Attribute 'elements' must be an array reference/, 'error-check in single-arg constructor'); like(exception { Statistics::R::REXP::Raw->new(1, 2, 3) }, qr/odd number of arguments/, 'odd constructor arguments'); like(exception { Statistics::R::REXP::Raw->new(elements => {foo => 1, bar => 2}) }, qr/Attribute 'elements' must be an array reference/, 'bad elements argument'); like(exception { Statistics::R::REXP::Raw->new([-1]) }, qr/Elements of raw vectors must be 0-255/, 'elements range'); my $another_vec = Statistics::R::REXP::Raw->new(elements => [3, 4, 1]); isnt($vec, $another_vec, 'raw vector inequality'); my $truncated_vec = Statistics::R::REXP::Raw->new(elements => [3.3, 4.0, 11]); is($truncated_vec, $vec, 'constructing from floats'); is_deeply($empty_vec->elements, [], 'empty raw vector contents'); is_deeply($vec->elements, [3, 4, 11], 'raw vector contents'); is($vec->elements->[2], 11, 'single element access'); ok(! $empty_vec->is_null, 'is not null'); ok( $empty_vec->is_vector, 'is vector'); ## attributes is_deeply($vec->attributes, undef, 'default attributes'); ## cannot set attributes on Raw like(exception { Statistics::R::REXP::Raw->new(attributes => { foo => 'bar', x => 42 }) }, qr/Raw vectors cannot have attributes/, 'setting raw attributes'); ## Perl representation is_deeply($empty_vec->to_pl, [], 'empty vector Perl representation'); is_deeply($vec->to_pl, [3, 4, 11], 'Perl representation'); io-oo-rds.t100644000765000024 5371113140202262 16371 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 66; use Test::Fatal; use Statistics::R::IO::RDS; use Statistics::R::IO::REXPFactory; use lib 't/lib'; use ShortDoubleVector; use TestCases; ## integer vectors sub check_rds { my ($file, $expected, $message) = @_; subtest 'rds ' . $message => sub { plan tests => 2; ## test with filename my $rds = Statistics::R::IO::RDS->new($file); my $actual = $rds->read; ## NOTE: I'm switching the order of comparisons to ensure ## ShortDoubleVector's 'eq' overload is used is($expected, $actual, $message); $rds->close; ## test with raw file handle open my $fh, $file or die $!; $rds = Statistics::R::IO::RDS->new({ fh => $fh }); $actual = $rds->read; ## NOTE: I'm switching the order of comparisons to ensure ## ShortDoubleVector's 'eq' overload is used is($expected, $actual, $message); $rds->close; } } sub check_rds_variants { my ($file, $expected, $message) = @_; subtest 'variants ' . $message => sub { plan tests => (-f "$file-noxdr" ? 5 : 4); check_rds($file . '-xdr', $expected, $message . ' - xdr'); check_rds($file . '-noxdr', $expected, $message . ' - binary') if (-f "$file-noxdr"); check_rds($file . '-xdr.rds', $expected, $message . ' - compressed xdr'); check_rds($file . '-xdr_bzip.rds', $expected, $message . ' - bzip compressed xdr'); like(exception { Statistics::R::IO::RDS->new($file . '-xdr_xz.rds')->read }, qr/xz-compressed R files are not supported/, $message . ' - xz'); } } ## serialize 1:3, XDR: true check_rds_variants('t/data/noatt-123l', Statistics::R::REXP::Integer->new([ 1, 2, 3 ]), 'int vector no atts'); ## serialize a=1L, b=2L, c=3L, XDR: true check_rds_variants('t/data/abc-123l', Statistics::R::REXP::Integer->new( elements => [ 1, 2, 3 ], attributes => { names => Statistics::R::REXP::Character->new(['a', 'b', 'c']) }), 'int vector names att'); ## double vectors ## serialize 1234.56, XDR: true check_rds_variants('t/data/noatt-123456', ShortDoubleVector->new([ 1234.56 ]), 'double vector no atts'); ## serialize foo=1234.56, XDR: true check_rds_variants('t/data/foo-123456', ShortDoubleVector->new( elements => [ 1234.56 ], attributes => { names => Statistics::R::REXP::Character->new(['foo']) }), 'double vector names att'); ## character vectors ## serialize letters[1:3], XDR: true check_rds_variants('t/data/noatt-abc', Statistics::R::REXP::Character->new([ 'a', 'b', 'c' ]), 'character vector no atts'); ## serialize A='a', B='b', C='c', XDR: true check_rds_variants('t/data/ABC-abc', Statistics::R::REXP::Character->new( elements => [ 'a', 'b', 'c' ], attributes => { names => Statistics::R::REXP::Character->new(['A', 'B', 'C']) }), 'character vector names att - xdr'); ## raw vectors ## serialize as.raw(c(1:3, 255, 0), XDR: true check_rds_variants('t/data/noatt-raw', Statistics::R::REXP::Raw->new([ 1, 2, 3, 255, 0 ]), 'raw vector'); ## logical vectors ## serialize TRUE check_rds_variants('t/data/noatt-true', Statistics::R::REXP::Logical->new([ 1 ]), 'logical vector - singleton'); ## serialize c(TRUE, FALSE, FALSE, TRUE, FALSE) check_rds_variants('t/data/noatt-tfftf', Statistics::R::REXP::Logical->new([ 1, 0, 0, 1, 0 ]), 'logical vector'); ## serialize c(A=T, B=F, C=F, D=T, E=F) check_rds_variants('t/data/ABCDE-tfftf', Statistics::R::REXP::Logical->new( elements => [ 1, 0, 0, 1, 0 ], attributes => { names => Statistics::R::REXP::Character->new(['A', 'B', 'C', 'D', 'E']) }), 'logical vector names att'); ## list (i.e., generic vector) ## serialize list(1:3, list('a', 'b', 11), 'foo'), XDR: true check_rds_variants('t/data/noatt-list', Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ]), 'generic vector no atts'); ## serialize list(foo=1:3, list('a', 'b', 11), bar='foo'), XDR: true check_rds_variants('t/data/foobar-list', Statistics::R::REXP::List->new( elements => [ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ], attributes => { names => Statistics::R::REXP::Character->new(['foo', '', 'bar']) }), 'generic vector names att - xdr'); ## matrix ## serialize matrix(-1:4, 2, 3), XDR: true check_rds_variants('t/data/noatt-mat', Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), }), 'int matrix no atts'); ## serialize matrix(-1:4, 2, 3, dimnames=list(c('a', 'b'))), XDR: true check_rds_variants('t/data/ab-mat', Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a', 'b']), Statistics::R::REXP::Null->new ]), }), 'int matrix rownames'); ## data frames ## serialize head(cars) check_rds_variants('t/data/cars', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 4, 4, 7, 7, 8, 9]), ShortDoubleVector->new([ 2, 10, 4, 22, 16, 10]), ], attributes => { names => Statistics::R::REXP::Character->new(['speed', 'dist']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), 'the cars data frame'); ## serialize head(mtcars) check_rds_variants('t/data/mtcars', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 6, 6, 4, 6, 8, 6 ]), ShortDoubleVector->new([ 160, 160, 108, 258, 360, 225 ]), ShortDoubleVector->new([ 110, 110, 93, 110, 175, 105 ]), ShortDoubleVector->new([ 3.90, 3.90, 3.85, 3.08, 3.15, 2.76 ]), ShortDoubleVector->new([ 2.620, 2.875, 2.320, 3.215, 3.440, 3.460 ]), ShortDoubleVector->new([ 16.46, 17.02, 18.61, 19.44, 17.02, 20.22 ]), ShortDoubleVector->new([ 0, 0, 1, 1, 0, 1 ]), ShortDoubleVector->new([ 1, 1, 1, 0, 0, 0 ]), ShortDoubleVector->new([ 4, 4, 4, 3, 3, 3 ]), ShortDoubleVector->new([ 4, 4, 1, 1, 2, 1 ]), ], attributes => { names => Statistics::R::REXP::Character->new([ 'mpg' , 'cyl', 'disp', 'hp', 'drat', 'wt', 'qsec', 'vs', 'am', 'gear', 'carb']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant' ]), }), 'the mtcars data frame'); ## serialize head(iris) check_rds_variants('t/data/iris', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 5.1, 4.9, 4.7, 4.6, 5.0, 5.4 ]), ShortDoubleVector->new([ 3.5, 3.0, 3.2, 3.1, 3.6, 3.9 ]), ShortDoubleVector->new([ 1.4, 1.4, 1.3, 1.5, 1.4, 1.7 ]), ShortDoubleVector->new([ 0.2, 0.2, 0.2, 0.2, 0.2, 0.4 ]), Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 1 ], attributes => { levels => Statistics::R::REXP::Character->new([ 'setosa', 'versicolor', 'virginica']), class => Statistics::R::REXP::Character->new(['factor']) } ), ], attributes => { names => Statistics::R::REXP::Character->new([ 'Sepal.Length', 'Sepal.Width', 'Petal.Length', 'Petal.Width', 'Species']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), 'the iris data frame'); ## Call lm(mpg ~ wt, data = head(mtcars)) check_rds_variants('t/data/lang-lm-mpgwt', Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), 'language lm(mpg~wt, head(mtcars))'); ## serialize lm(mpg ~ wt, data = head(mtcars)) check_rds_variants('t/data/mtcars-lm-mpgwt', Statistics::R::REXP::List->new( elements => [ # coefficients ShortDoubleVector->new( elements => [ 30.3002034730204, -3.27948805566774 ], attributes => { names => Statistics::R::REXP::Character->new(['(Intercept)', 'wt']) }), # residuals ShortDoubleVector->new( elements => [ -0.707944767170941, 0.128324687024322, 0.108208816128727, 1.64335062595135, -0.318764561523408, -0.853174800410051 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # effects ShortDoubleVector->new( elements => [ -50.2145397270552, -3.39713386075597, 0.13375416348722, 1.95527848390874, 0.0651588996571721, -0.462851730054076 ], attributes => { names => Statistics::R::REXP::Character->new([ '(Intercept)', 'wt', '', '', '', '' ]) }), # rank Statistics::R::REXP::Integer->new([2]), # fitted.values ShortDoubleVector->new( elements => [ 21.7079447671709, 20.8716753129757, 22.6917911838713, 19.7566493740486, 19.0187645615234, 18.9531748004101 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # assign Statistics::R::REXP::Integer->new([0, 1]), # qr Statistics::R::REXP::List->new( elements => [ # qr ShortDoubleVector->new( elements => [ -2.44948974278318, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, -7.31989184801706, 1.03587322261623, 0.542107126002057, -0.321898217952644, -0.539106265315558, -0.558413647303373 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 6, 2 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]), Statistics::R::REXP::Character->new([ '(Intercept)', 'wt' ]) ]), assign => Statistics::R::REXP::Integer->new([ 0, 1 ]), }), # qraux ShortDoubleVector->new( [ 1.40824829046386, 1.0063272758402 ]), # pivot Statistics::R::REXP::Integer->new([1, 2]), # tol ShortDoubleVector->new([1E-7]), # rank Statistics::R::REXP::Integer->new([2]), ], attributes => { names => Statistics::R::REXP::Character->new([ "qr", "qraux", "pivot", "tol", "rank" ]), class => Statistics::R::REXP::Character->new(['qr']) }), # df.residual Statistics::R::REXP::Integer->new([4]), # xlevels Statistics::R::REXP::List->new( elements => [], attributes => { names => Statistics::R::REXP::Character->new([]) }), # call Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), # terms Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::GlobalEnvironment->new, predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), # model Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 2.62, 2.875, 2.32, 3.215, 3.44, 3.46 ]), ], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant']), class => Statistics::R::REXP::Character->new(['data.frame']), terms => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::GlobalEnvironment->new, predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), }), ], attributes => { names => Statistics::R::REXP::Character->new([ 'coefficients', 'residuals', 'effects', 'rank', 'fitted.values', 'assign', 'qr', 'df.residual', 'xlevels', 'call', 'terms', 'model', ]), class => Statistics::R::REXP::Character->new(['lm']) }), 'lm mpg~wt, head(mtcars)'); ## opening a non-existent file like(exception { Statistics::R::IO::RDS->new('foobard') }, qr/No such file 'foobard'/, 'new on non-existent file'); ## bad arguments to new like(exception { Statistics::R::IO::RDS->new }, qr/Attribute 'fh' is required/, 'new with no args'); like(exception { Statistics::R::IO::RDS->new([]) }, qr/Single parameters to new/, 'new with array ref'); like(exception { Statistics::R::IO::RDS->new(fh => []) }, qr/Attribute 'fh' must be an instance of IO::Handle or an open filehandle/, 'bad fh'); while ( my ($name, $value) = each %{TEST_CASES()} ) { SKIP: { skip "not yet supported", 1 if ($value->{skip} || '' =~ 'rds'); check_rds_variants('t/data/' . $name, $value->{value}, $value->{desc}); } } io-parser.t100644000765000024 3453413140202262 16464 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 9; use Test::Fatal; use Statistics::R::IO::Parser qw(:all); use Statistics::R::IO::ParserState; my $state = Statistics::R::IO::ParserState->new(data => 'foobar'); subtest 'characters' => sub { plan tests => 10; ## any_char parser is_deeply(any_char($state), ['f', Statistics::R::IO::ParserState->new(data => 'foobar', position => 1, singletons => [])], # bypass lazy attribute ctor 'any_char'); is_deeply(any_char($state->next->next->next->next->next->next), undef, 'any_char at eof'); ## char parser my $f_char = char('f'); is_deeply($f_char->($state), ['f', Statistics::R::IO::ParserState->new(data => 'foobar', position => 1, singletons => [])], # bypass lazy attribute ctor 'char'); is($f_char->($state->next), undef, 'char doesn\'t match'); is($f_char->($state->next->next->next->next->next->next), undef, 'char at eof'); like(exception { char('foo') }, qr/Must be a single-char argument/, "bad 'char' argument"); ## string parser my $foo_string = string('foo'); is_deeply($foo_string->($state), ['foo', Statistics::R::IO::ParserState->new(data => 'foobar', position => 3, singletons => [])], # bypass lazy attribute ctor 'string'); is($foo_string->($state->next), undef, 'string doesn\'t match'); is($foo_string->($state->next->next->next->next->next->next), undef, 'string at eof'); like(exception { string(['foo']) }, qr/Must be a scalar argument/, "bad 'string' argument"); }; subtest 'int parsers' => sub { plan tests => 20; ## any_uint my $num_state = Statistics::R::IO::ParserState->new(data => pack('N', 0x12345678)); is(any_uint8($num_state)->[0], 0x12, 'any_uint8'); is(any_uint8(any_uint8($num_state)->[1])->[0], 0x34, 'second any_uint8'); is(any_uint16($num_state)->[0], 0x1234, 'any_uint16'); is(any_uint16(any_uint16($num_state)->[1])->[0], 0x5678, 'second any_uint16'); is(any_uint24($num_state)->[0], 0x123456, 'any_uint24'); is(any_uint24(any_uint24($num_state)->[1]), undef, 'second any_uint24'); is(any_uint32($num_state)->[0], 0x12345678, 'any_uint32'); is(any_uint32(any_uint32($num_state)->[1]), undef, 'second any_uint32'); ## uint is(uint8(0x12)->($num_state)->[0], 0x12, 'uint8'); is(uint8(0x34)->(uint8(0x12)->($num_state)->[1])->[0], 0x34, 'second uint8'); is(uint8(0x10)->($num_state), undef, 'uint8 fails'); is(uint16(0x1234)->($num_state)->[0], 0x1234, 'uint16'); is(uint16(0x5678)->(uint16(0x1234)->($num_state)->[1])->[0], 0x5678, 'second uint16'); is(uint16(0x1010)->($num_state), undef, 'uint16 fails'); is(uint24(0x123456)->($num_state)->[0], 0x123456, 'uint24'); is(uint24(0x78)->(uint24(0x123456)->($num_state)->[1]), undef, 'second uint24'); is(uint24(0x1010)->($num_state), undef, 'uint24 fails'); is(uint32(0x12345678)->($num_state)->[0], 0x12345678, 'uint32'); is(uint32(0)->(uint32(0x12345678)->($num_state)->[1]), undef, 'second uint32'); is(uint32(0x1010)->($num_state), undef, 'uint32 fails'); }; subtest 'signed int parsers' => sub { plan tests => 18; my $signed_num_state = Statistics::R::IO::ParserState->new(data => pack('N', 0x12bacafe)); ## any_int is(any_int8($signed_num_state)->[0], 0x12, 'any_int8'); is(any_int8($signed_num_state->next->next)->[0], -54, 'negative any_int8'); is(any_int16($signed_num_state)->[0], 0x12ba, 'any_int16'); is(any_int16($signed_num_state->next->next)->[0], -13570, 'negative any_int16'); is(any_int24($signed_num_state)->[0], 0x12baca, 'any_int24'); is(any_int24($signed_num_state->next)->[0], -4535554, 'negative any_int24'); is(any_int32($signed_num_state)->[0], 0x12bacafe, 'any_int32'); is(any_int32(Statistics::R::IO::ParserState->new(data => pack('N', 0xbabecafe)))->[0], -1161901314, 'negative any_int32'); is(any_int32(any_int32($signed_num_state)->[1]), undef, 'failed any_int32'); ## int is(int8(0x12)->($signed_num_state)->[0], 0x12, 'int8'); is(int8(unpack c=>"\xca")->($signed_num_state->next->next)->[0], -54, 'negative int8'); is(int16(0x12ba)->($signed_num_state)->[0], 0x12ba, 'int16'); is(int16(unpack 's>'=>"\xca\xfe")->($signed_num_state->next->next)->[0], -13570, 'negative any_int16'); is(int24(0x12baca)->($signed_num_state)->[0], 0x12baca, 'int24'); is(int24(unpack 'l>'=>"\xff\xba\xca\xfe")->($signed_num_state->next)->[0], -4535554, 'negative int24'); is(int32(0x12bacafe)->($signed_num_state)->[0], 0x12bacafe, 'int32'); is(int32(unpack 'l>'=>"\xba\xbe\xca\xfe")-> (Statistics::R::IO::ParserState->new(data => pack('N', 0xbabecafe)))->[0], -1161901314, 'negative int32'); is(int32(0x00bacafe)->($signed_num_state->next), undef, 'failed int32'); }; subtest 'floating point parsers' => sub { plan tests => 2; is(any_real32(Statistics::R::IO::ParserState->new(data => "\x45\xcc\x79\0"))->[0], 6543.125, 'any_real32'); is(any_real64(Statistics::R::IO::ParserState->new(data => "\x40\x93\x4a\x45\x6d\x5c\xfa\xad"))->[0], unpack('d', pack('d', 1234.5678)), 'any_real64'); }; subtest 'NAs' => sub { plan tests => 4; my $signed_num_state = Statistics::R::IO::ParserState->new(data => pack('N', 0x12bacafe)); is(any_int32_na->($signed_num_state)->[0], 0x12bacafe, 'any_int32_na'); my $int_na = Statistics::R::IO::ParserState->new(data => "\x80\0\0\0"); is(any_int32_na->($int_na)->[0], undef, 'int NA'); is(any_real64_na->(Statistics::R::IO::ParserState->new(data => "\x40\x93\x4a\x45\x6d\x5c\xfa\xad"))->[0], unpack('d', pack('d', 1234.5678)), 'any_real64_na'); my $real_na = Statistics::R::IO::ParserState->new(data => "\x7f\xf0\0\0\0\0\7\xa2"); is(any_real64_na->($real_na)->[0], undef, 'real NA') }; subtest 'endianness' => sub { plan tests => 23; is(endianness, '>', 'get endianness'); is(endianness('<'), '<', 'set endianness'); is(endianness('bla'), '<', 'ignore bad endianness value'); my $num_state = Statistics::R::IO::ParserState->new(data => pack('N', 0x12345678)); is(any_uint16($num_state)->[0], 0x3412, 'any_uint16 little endian'); is(any_uint16(any_uint16($num_state)->[1])->[0], 0x7856, 'second any_uint16 little endian'); is(any_uint24($num_state)->[0], 0x563412, 'any_uint24 little endian'); is(any_uint24(any_uint24($num_state)->[1]), undef, 'second any_uint24 little endian'); is(any_uint32($num_state)->[0], 0x78563412, 'any_uint32 little endian'); is(any_uint32(any_uint32($num_state)->[1]), undef, 'second any_uint32 little endian'); ## little-endian uint's is(uint8(0x12)->($num_state)->[0], 0x12, 'little-endian uint8'); is(uint8(0x34)->(uint8(0x12)->($num_state)->[1])->[0], 0x34, 'second little-endian uint8'); is(uint8(0x10)->($num_state), undef, 'little-endian uint8 fails'); is(uint16(0x3412)->($num_state)->[0], 0x3412, 'little-endian uint16'); is(uint16(0x7856)->(uint16(0x3412)->($num_state)->[1])->[0], 0x7856, 'second little-endian uint16'); is(uint16(0x1010)->($num_state), undef, 'little-endian uint16 fails'); is(uint24(0x563412)->($num_state)->[0], 0x563412, 'little-endian uint24'); is(uint24(0x78)->(uint24(0x563412)->($num_state)->[1]), undef, 'second little-endian uint24'); is(uint24(0x1010)->($num_state), undef, 'little-endian uint24 fails'); is(uint32(0x78563412)->($num_state)->[0], 0x78563412, 'little-endian uint32'); is(uint32(0)->(uint32(0x78563412)->($num_state)->[1]), undef, 'second little-endian uint32'); is(uint32(0x1010)->($num_state), undef, 'little-endian uint32 fails'); is(any_real32(Statistics::R::IO::ParserState->new(data => "\0\x79\xcc\x45"))->[0], 6543.125, 'any_real32 little endian'); is(any_real64(Statistics::R::IO::ParserState->new(data => "\xad\xfa\x5c\x6d\x45\x4a\x93\x40"))->[0], unpack('d', pack('d', 1234.5678)), 'any_real64 little endian'); }; subtest 'monad' => sub { plan tests => 4; ## mreturn is_deeply(mreturn('foobar')->($state), [ 'foobar', $state ], 'mreturn'); ## bind my $len_chars_bind = bind( \&any_uint8, sub { my $n = shift or return; count($n, \&any_uint8) }); is_deeply($len_chars_bind->(Statistics::R::IO::ParserState->new(data => "\3\x2a\7\0"))->[0], [42, 7, 0], 'bind'); is($len_chars_bind->(Statistics::R::IO::ParserState->new(data => "\3\x2a\7")), undef, 'bind fails'); ## error like(exception { error('foobar-ed')->($state->next) }, qr/foobar-ed \(at 1\)/, 'error'); }; subtest 'combinators' => sub { plan tests => 14; ## seq my $f_oob_seq = seq(char('f'), string('oob')); is_deeply($f_oob_seq->($state), [['f', 'oob'], Statistics::R::IO::ParserState->new(data => 'foobar', position => 4, singletons => [])], # bypass lazy attribute ctor 'seq'); is($f_oob_seq->($state->next), undef, 'seq fails'); ## many_till my $many_o_till_b = many_till(char('o'), char('b')); is_deeply($many_o_till_b->($state->next), [['o', 'o'], Statistics::R::IO::ParserState->new(data => 'foobar', position => 3, singletons => [])], # bypass lazy attribute ctor 'many_till'); is($many_o_till_b->($state), undef, 'many_till fails'); ## choose my $f_oob_choose = choose(char('f'), string('oob'), char('o')); is_deeply($f_oob_choose->($state), ['f', Statistics::R::IO::ParserState->new(data => 'foobar', position => 1, singletons => [])], # bypass lazy attribute ctor 'seq first'); is_deeply($f_oob_choose->($state->next), ['oob', Statistics::R::IO::ParserState->new(data => 'foobar', position => 4, singletons => [])], # bypass lazy attribute ctor 'seq second'); is($f_oob_choose->($state->next->next->next), undef, 'choose fails'); ## count is_deeply(count(3, \&any_char)->($state), [['f', 'o', 'o'], Statistics::R::IO::ParserState->new(data => 'foobar', position => 3, singletons => [])], # bypass lazy attribute ctor 'count 3 any_char'); is_deeply(count(0, \&any_char)->($state), [[], Statistics::R::IO::ParserState->new(data => 'foobar', position => 0, singletons => [])], # bypass lazy attribute ctor 'count 0 any_char'); is(count(7, \&any_char)->($state), undef, 'count fails'); ## with_count endianness('>'); is_deeply(with_count(\&any_uint8, \&any_uint8)->(Statistics::R::IO::ParserState->new(data => "\3\x2a\7\0"))->[0], [42, 7, 0], 'with_count'); is_deeply(with_count(\&any_real64)-> (Statistics::R::IO::ParserState->new(data => "\0\0\0\1\x40\x93\x4a\x3d\x70\xa3\xd7\x0a"))->[0], [ unpack('d', pack('d', 1234.56)) ], 'with_count default counter'); is_deeply(with_count(\&any_uint)-> (Statistics::R::IO::ParserState->new(data => "\0\0\0\0"))->[0], [ ], 'with_count zero counter'); is(with_count(\&any_uint8, \&any_uint8)->(Statistics::R::IO::ParserState->new(data => "\3\x2a\7")), undef, 'with_count fails'); }; subtest 'singletons' => sub { plan tests => 3; ## add_singleton is_deeply(add_singleton('baz')->($state), [ 'baz', Statistics::R::IO::ParserState->new(data => 'foobar', position => 0, # bypass lazy attribute ctor singletons => [ 'baz' ])], 'add_singleton'); ## reserve_singleton will preallocate a singleton that get the value ## 'baz' at the end is_deeply(reserve_singleton(bind(add_singleton('foo'), sub { mreturn('baz') }))->($state), [ 'baz', Statistics::R::IO::ParserState->new(data => 'foobar', position => 0, # bypass lazy attribute ctor singletons => [ 'baz', 'foo' ])], 'reserve_singleton'); is_deeply(get_singleton(0)->(add_singleton('bla')->($state)->[1]), [ 'bla', Statistics::R::IO::ParserState->new(data => 'foobar', position => 0, # bypass lazy attribute ctor singletons => [ 'bla' ])], 'get_singleton'); }; io-rserve.t100644000765000024 5232313140202262 16472 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 59; use Test::Fatal; use Test::MockObject::Extends; use Statistics::R::IO::Parser qw(:all); use Statistics::R::IO qw( evalRserve ); use lib 't/lib'; use ShortDoubleVector; use TestCases; sub mock_rserve_response { my $filename = shift; open (my $f, $filename) or die $! . " $filename"; binmode $f; my ($data, $rc) = ''; while ($rc = read($f, $data, 8192, length $data)) {} die $! unless defined $rc; my $response = pack("VVA*", 0x10001, length($data), "\0"x8) . $data; my $mock = Test::MockObject::Extends->new('IO::Socket::INET'); $mock->mock('print', sub { my ($self, $data) = (shift, shift); length($data); }); $mock->mock('read', sub { state $pos = 0; my ($length, $offset) = @_[2..3]; # args: self, $data, length, position $_[1] .= substr($response, $pos, $length); $pos += $length; # advance the cursor $length # return the amount read }); $mock->set_always('peerhost', 'localhost'); $mock->set_always('peerport', 6311) } sub parse_rserve_eval { my ($file, $expected, $message) = @_; my $filename = $file . '.qap'; subtest 'mock ' . $message => sub { plan tests => 11; my $mock = mock_rserve_response($filename); ## NOTE: I'm switching the order of comparisons to ensure ## ShortDoubleVector's 'eq' overload is used is($expected, evalRserve('testing, please ignore', $mock), $message); is($mock->next_call(), 'peerhost', 'get server name'); is($mock->next_call(), 'peerport', 'get server port'); my ($request, $args) = $mock->next_call(); is($request, 'print', 'send request'); my ($command, $length, $offset, $length_hi) = unpack('V4', $args->[1]); is($command, 0x03, 'request CMD_eval'); is($length+16, length($args->[1]), 'request length'); is($offset, 0, 'request offset'); is($length_hi, 0, 'request hi-length'); is($mock->next_call(), 'read', 'read response status'); is($mock->next_call(), 'read', 'read response data'); is($mock->next_call(), undef, 'last call'); } } ## integer vectors ## serialize 1:3, XDR: true parse_rserve_eval('t/data/noatt-123l', Statistics::R::REXP::Integer->new([ 1, 2, 3 ]), 'int vector no atts'); ## serialize a=1L, b=2L, c=3L, XDR: true parse_rserve_eval('t/data/abc-123l', Statistics::R::REXP::Integer->new( elements => [ 1, 2, 3 ], attributes => { names => Statistics::R::REXP::Character->new(['a', 'b', 'c']) }), 'int vector names att'); ## double vectors ## serialize 1234.56, XDR: true parse_rserve_eval('t/data/noatt-123456', ShortDoubleVector->new([ 1234.56 ]), 'double vector no atts'); ## serialize foo=1234.56, XDR: true parse_rserve_eval('t/data/foo-123456', ShortDoubleVector->new( elements => [ 1234.56 ], attributes => { names => Statistics::R::REXP::Character->new(['foo']) }), 'double vector names att'); ## character vectors ## serialize letters[1:3], XDR: true parse_rserve_eval('t/data/noatt-abc', Statistics::R::REXP::Character->new([ 'a', 'b', 'c' ]), 'character vector no atts'); ## serialize A='a', B='b', C='c', XDR: true parse_rserve_eval('t/data/ABC-abc', Statistics::R::REXP::Character->new( elements => [ 'a', 'b', 'c' ], attributes => { names => Statistics::R::REXP::Character->new(['A', 'B', 'C']) }), 'character vector names att - xdr'); ## raw vectors ## serialize as.raw(c(1:3, 255, 0), XDR: true parse_rserve_eval('t/data/noatt-raw', Statistics::R::REXP::Raw->new([ 1, 2, 3, 255, 0 ]), 'raw vector'); ## list (i.e., generic vector) ## serialize list(1:3, list('a', 'b', 11), 'foo'), XDR: true parse_rserve_eval('t/data/noatt-list', Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ]), 'generic vector no atts'); ## serialize list(foo=1:3, list('a', 'b', 11), bar='foo'), XDR: true parse_rserve_eval('t/data/foobar-list', Statistics::R::REXP::List->new( elements => [ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ], attributes => { names => Statistics::R::REXP::Character->new(['foo', '', 'bar']) }), 'generic vector names att - xdr'); ## matrix ## serialize matrix(-1:4, 2, 3), XDR: true parse_rserve_eval('t/data/noatt-mat', Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), }), 'int matrix no atts'); ## serialize matrix(-1:4, 2, 3, dimnames=list(c('a', 'b'))), XDR: true parse_rserve_eval('t/data/ab-mat', Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a', 'b']), Statistics::R::REXP::Null->new ]), }), 'int matrix rownames'); ## data frames ## serialize head(cars) parse_rserve_eval('t/data/cars', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 4, 4, 7, 7, 8, 9]), ShortDoubleVector->new([ 2, 10, 4, 22, 16, 10]), ], attributes => { names => Statistics::R::REXP::Character->new(['speed', 'dist']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), 'the cars data frame'); ## serialize head(mtcars) parse_rserve_eval('t/data/mtcars', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 6, 6, 4, 6, 8, 6 ]), ShortDoubleVector->new([ 160, 160, 108, 258, 360, 225 ]), ShortDoubleVector->new([ 110, 110, 93, 110, 175, 105 ]), ShortDoubleVector->new([ 3.90, 3.90, 3.85, 3.08, 3.15, 2.76 ]), ShortDoubleVector->new([ 2.620, 2.875, 2.320, 3.215, 3.440, 3.460 ]), ShortDoubleVector->new([ 16.46, 17.02, 18.61, 19.44, 17.02, 20.22 ]), ShortDoubleVector->new([ 0, 0, 1, 1, 0, 1 ]), ShortDoubleVector->new([ 1, 1, 1, 0, 0, 0 ]), ShortDoubleVector->new([ 4, 4, 4, 3, 3, 3 ]), ShortDoubleVector->new([ 4, 4, 1, 1, 2, 1 ]), ], attributes => { names => Statistics::R::REXP::Character->new([ 'mpg' , 'cyl', 'disp', 'hp', 'drat', 'wt', 'qsec', 'vs', 'am', 'gear', 'carb']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant' ]), }), 'the mtcars data frame'); ## serialize head(iris) parse_rserve_eval('t/data/iris', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 5.1, 4.9, 4.7, 4.6, 5.0, 5.4 ]), ShortDoubleVector->new([ 3.5, 3.0, 3.2, 3.1, 3.6, 3.9 ]), ShortDoubleVector->new([ 1.4, 1.4, 1.3, 1.5, 1.4, 1.7 ]), ShortDoubleVector->new([ 0.2, 0.2, 0.2, 0.2, 0.2, 0.4 ]), Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 1 ], attributes => { levels => Statistics::R::REXP::Character->new([ 'setosa', 'versicolor', 'virginica']), class => Statistics::R::REXP::Character->new(['factor']) } ), ], attributes => { names => Statistics::R::REXP::Character->new([ 'Sepal.Length', 'Sepal.Width', 'Petal.Length', 'Petal.Width', 'Species']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), 'the iris data frame'); ## serialize lm(mpg ~ wt, data = head(mtcars)) parse_rserve_eval('t/data/mtcars-lm-mpgwt', Statistics::R::REXP::List->new( elements => [ # coefficients ShortDoubleVector->new( elements => [ 30.3002034730204, -3.27948805566774 ], attributes => { names => Statistics::R::REXP::Character->new(['(Intercept)', 'wt']) }), # residuals ShortDoubleVector->new( elements => [ -0.707944767170941, 0.128324687024322, 0.108208816128727, 1.64335062595135, -0.318764561523408, -0.853174800410051 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # effects ShortDoubleVector->new( elements => [ -50.2145397270552, -3.39713386075597, 0.13375416348722, 1.95527848390874, 0.0651588996571721, -0.462851730054076 ], attributes => { names => Statistics::R::REXP::Character->new([ '(Intercept)', 'wt', '', '', '', '' ]) }), # rank Statistics::R::REXP::Integer->new([2]), # fitted.values ShortDoubleVector->new( elements => [ 21.7079447671709, 20.8716753129757, 22.6917911838713, 19.7566493740486, 19.0187645615234, 18.9531748004101 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # assign Statistics::R::REXP::Integer->new([0, 1]), # qr Statistics::R::REXP::List->new( elements => [ # qr ShortDoubleVector->new( elements => [ -2.44948974278318, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, -7.31989184801706, 1.03587322261623, 0.542107126002057, -0.321898217952644, -0.539106265315558, -0.558413647303373 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 6, 2 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]), Statistics::R::REXP::Character->new([ '(Intercept)', 'wt' ]) ]), assign => Statistics::R::REXP::Integer->new([ 0, 1 ]), }), # qraux ShortDoubleVector->new( [ 1.40824829046386, 1.0063272758402 ]), # pivot Statistics::R::REXP::Integer->new([1, 2]), # tol ShortDoubleVector->new([1E-7]), # rank Statistics::R::REXP::Integer->new([2]), ], attributes => { names => Statistics::R::REXP::Character->new([ "qr", "qraux", "pivot", "tol", "rank" ]), class => Statistics::R::REXP::Character->new(['qr']) }), # df.residual Statistics::R::REXP::Integer->new([4]), # xlevels Statistics::R::REXP::List->new( elements => [], attributes => { names => Statistics::R::REXP::Character->new([]) }), # call Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), # terms Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::Unknown->new(sexptype => 4), predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), # model Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 2.62, 2.875, 2.32, 3.215, 3.44, 3.46 ]), ], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant']), class => Statistics::R::REXP::Character->new(['data.frame']), terms => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::Unknown->new(sexptype => 4), predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), }), ], attributes => { names => Statistics::R::REXP::Character->new([ 'coefficients', 'residuals', 'effects', 'rank', 'fitted.values', 'assign', 'qr', 'df.residual', 'xlevels', 'call', 'terms', 'model', ]), class => Statistics::R::REXP::Character->new(['lm']) }), 'lm mpg~wt, head(mtcars)'); ## Server error my $error_mock = Test::MockObject::Extends->new('IO::Socket'); $error_mock->mock('print', sub { my ($self, $data) = (shift, shift); length($data); }); $error_mock->mock('read', sub { # args: self, $data, length $_[1] = pack('VVA*', 0x10002, 0, "\0"x8); 0 }); $error_mock->set_always('peerhost', 'localhost'); $error_mock->set_always('peerport', 6311); like(exception { evalRserve('testing, please ignore', $error_mock), }, qr/R server returned an error: 0x10002/, 'server error'); while ( my ($name, $value) = each %{TEST_CASES()} ) { SKIP: { skip "not yet supported", 1 if ($value->{skip} || '' =~ 'rserve'); parse_rserve_eval('t/data/' . $name, $value->{value}, $value->{desc}); } } rexp-list.t100644000765000024 1306013140202262 16501 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 39; use Test::Fatal; use Statistics::R::REXP::List; use Statistics::R::REXP::Character; use Statistics::R::REXP::Double; use Statistics::R::REXP::Integer; my $empty_list = new_ok('Statistics::R::REXP::List', [ ], 'new generic vector' ); is($empty_list, $empty_list, 'self equality'); my $empty_list_2 = Statistics::R::REXP::List->new(); is($empty_list, $empty_list_2, 'empty generic vector equality'); my $list = Statistics::R::REXP::List->new(elements => [3.3, '4', 11]); my $list2 = Statistics::R::REXP::List->new([3.3, 4, 11]); is($list, $list2, 'generic vector equality'); is(Statistics::R::REXP::List->new($list2), $list, 'copy constructor'); is(Statistics::R::REXP::List->new(Statistics::R::REXP::Double->new([3.3, 4, 11])), $list, 'copy constructor from a vector'); ## error checking in constructor arguments like(exception { Statistics::R::REXP::List->new(sub {1+1}) }, qr/Attribute 'elements' must be an array reference/, 'error-check in single-arg constructor'); like(exception { Statistics::R::REXP::List->new(1, 2, 3) }, qr/odd number of arguments/, 'odd constructor arguments'); like(exception { Statistics::R::REXP::List->new(elements => {foo => 1, bar => 2}) }, qr/Attribute 'elements' must be an array reference/, 'bad elements argument'); my $another_list = Statistics::R::REXP::List->new(elements => [3.3, 4, 10.9]); isnt($list, $another_list, 'generic vector inequality'); my $na_heavy_list = Statistics::R::REXP::List->new(elements => [11.3, ['', undef], '0']); my $na_heavy_list2 = Statistics::R::REXP::List->new(elements => [11.3, [undef, undef], 0]); is($na_heavy_list, $na_heavy_list, 'NA-heavy generic vector equality'); isnt($na_heavy_list, $na_heavy_list2, 'NA-heavy generic vector inequality'); is($empty_list .'', 'list()', 'empty generic vector text representation'); is($list .'', 'list(3.3, 4, 11)', 'generic vector text representation'); is(Statistics::R::REXP::List->new(elements => [undef]) .'', 'list(undef)', 'text representation of a singleton NA'); is(Statistics::R::REXP::List->new(elements => [[[undef]]]) .'', 'list([[undef]])', 'text representation of a nested singleton NA'); is($na_heavy_list .'', 'list(11.3, [, undef], 0)', 'empty string representation'); is_deeply($empty_list->elements, [], 'empty generic vector contents'); is_deeply($list->elements, [3.3, 4, 11], 'generic vector contents'); is($list->elements->[2], 11, 'single element access'); is_deeply(Statistics::R::REXP::List->new(elements => [3.3, 4.0, '3x', 11])->elements, [3.3, 4, '3x', 11], 'constructor with non-numeric values'); my $nested_list = Statistics::R::REXP::List->new(elements => [3.3, 4.0, ['b', ['cc', 44.1]], 11]); is_deeply($nested_list->elements, [3.3, 4, ['b', ['cc', 44.1]], 11], 'nested list contents'); is_deeply($nested_list->elements->[2]->[1], ['cc', 44.1], 'nested element'); is_deeply($nested_list->elements->[3], 11, 'non-nested element'); is($nested_list .'', 'list(3.3, 4, [b, [cc, 44.1]], 11)', 'nested generic vector text representation'); my $nested_rexps = Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), Statistics::R::REXP::Double->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ]); is($nested_rexps .'', 'list(integer(1, 2, 3), list(character(a), character(b), double(11)), character(foo))', 'nested generic vector of REXPs text representation'); ok(! $empty_list->is_null, 'is not null'); ok( $empty_list->is_vector, 'is vector'); ## attributes is_deeply($list->attributes, undef, 'default attributes'); my $list_attr = Statistics::R::REXP::List->new(elements => [3.3, '4', 11], attributes => { foo => 'bar', x => [40, 41, 42] }); is_deeply($list_attr->attributes, { foo => 'bar', x => [40, 41, 42] }, 'constructed attributes'); my $list_attr2 = Statistics::R::REXP::List->new(elements => [3.3, '4', 11], attributes => { foo => 'bar', x => [40, 41, 42] }); my $another_list_attr = Statistics::R::REXP::List->new(elements => [3.3, '4', 11], attributes => { foo => 'bar', x => [40, 42, 42] }); is($list_attr, $list_attr2, 'equality considers attributes'); isnt($list_attr, $list, 'inequality considers attributes'); isnt($list_attr, $another_list_attr, 'inequality considers attributes deeply'); ## attributes must be a hash like(exception { Statistics::R::REXP::List->new(attributes => 1) }, qr/Attribute 'attributes' must be a hash reference/, 'setting non-HASH attributes'); ## Perl representation is_deeply($empty_list->to_pl, [], 'empty list Perl representation'); is_deeply($list->to_pl, [3.3, '4', 11], 'Perl representation'); is_deeply($na_heavy_list->to_pl, [11.3, ['', undef], '0'], 'list with NAs Perl representation'); is_deeply($nested_list->to_pl, [3.3, 4.0, ['b', ['cc', 44.1]], 11], 'nested lists Perl representation'); is_deeply($nested_rexps->to_pl, [ [ 1, 2, 3], [ 'a', 'b', 11 ], 'foo' ], 'list with nested REXPs Perl representation'); rexp-null.t100644000765000024 152413140202262 16462 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 10; use Test::Fatal; use Statistics::R::REXP::Null; my $null = new_ok('Statistics::R::REXP::Null', [], 'new null'); is($null, $null, 'self equality'); my $null_2 = Statistics::R::REXP::Null->new; is($null, $null_2, 'null equality'); isnt($null, 'null', 'null inequality'); ok($null->is_null, 'is null'); ok(! $null->is_vector, 'is not vector'); is($null .'', 'NULL', 'null text representation'); ## attributes is_deeply($null->attributes, undef, 'default attributes'); ## cannot set attributes on Null like(exception { Statistics::R::REXP::Null->new(attributes => { foo => 'bar', x => 42 }) }, qr/Null cannot have attributes/, 'setting null attributes'); ## Perl representation is_deeply($null->to_pl, undef, 'Perl representation'); data000755000765000024 013140202262 15116 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/tREADME100644000765000024 2704113140202262 16162 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataData sets produced by R's serialization: Doubles: - noatt-123456-noxdr: serialize(c(1234.56), ascii=F, xdr=F) [1] 42 0a 02 00 00 00 02 00 03 00 00 03 02 00 0e 00 00 00 01 00 00 00 0a d7 a3 [26] 70 3d 4a 93 40 - noatt-123456-xdr: serialize(c(1234.56), ascii=F, xdr=T) [1] 58 0a 00 00 00 02 00 03 00 02 00 02 03 00 00 00 00 0e 00 00 00 01 40 93 4a [26] 3d 70 a3 d7 0a - f-123456-xdr: serialize(c(f=1234.56), ascii=F, xdr=T) [1] 58 0a 00 00 00 02 00 03 00 02 00 02 03 00 00 00 02 0e 00 00 00 01 40 93 4a [26] 3d 70 a3 d7 0a 00 00 04 02 00 00 00 01 00 04 00 09 00 00 00 05 6e 61 6d 65 [51] 73 00 00 00 10 00 00 00 01 00 04 00 09 00 00 00 01 66 00 00 00 fe - foo-123456-xdr: serialize(c(foo=1234.56), ascii=F, xdr=T) [1] 58 0a 00 00 00 02 00 03 00 02 00 02 03 00 00 00 02 0e 00 00 00 01 40 93 4a [26] 3d 70 a3 d7 0a 00 00 04 02 00 00 00 01 00 04 00 09 00 00 00 05 6e 61 6d 65 [51] 73 00 00 00 10 00 00 00 01 00 04 00 09 00 00 00 03 66 6f 6f 00 00 00 fe Ints: - noatt-123l-noxdr: serialize(1:3, ascii=F, xdr=F) [1] 42 0a 02 00 00 00 02 00 03 00 00 03 02 00 0d 00 00 00 03 00 00 00 01 00 00 [26] 00 02 00 00 00 03 00 00 00 - noatt-123l-xdr: serialize(1:3, ascii=F, xdr=T) [1] 58 0a 00 00 00 02 00 03 00 02 00 02 03 00 00 00 00 0d 00 00 00 03 00 00 00 [26] 01 00 00 00 02 00 00 00 03 - abc-123l-xdr: serialize(c(a=1L, b=2L, c=3L), ascii=F, xdr=T) [1] 58 0a 00 00 00 02 00 03 00 02 00 02 03 00 00 00 02 0d 00 00 00 03 00 00 00 [26] 01 00 00 00 02 00 00 00 03 00 00 04 02 00 00 00 01 00 04 00 09 00 00 00 05 [51] 6e 61 6d 65 73 00 00 00 10 00 00 00 03 00 04 00 09 00 00 00 01 61 00 04 00 [76] 09 00 00 00 01 62 00 04 00 09 00 00 00 01 63 00 00 00 fe Chars: - noatt-abc-noxdr: serialize(letters[1:3], f, ascii=F, xdr=F) [1] 42 0a 02 00 00 00 02 00 03 00 00 03 02 00 10 00 00 00 03 00 00 00 09 00 04 [26] 00 01 00 00 00 61 09 00 04 00 01 00 00 00 62 09 00 04 00 01 00 00 00 63 - noatt-abc-xdr: serialize(letters[1:3], f, ascii=F, xdr=T) [1] 58 0a 00 00 00 02 00 03 00 02 00 02 03 00 00 00 00 10 00 00 00 03 00 04 00 [26] 09 00 00 00 01 61 00 04 00 09 00 00 00 01 62 00 04 00 09 00 00 00 01 63 - ABC-abc-xdr: serialize(c(A='a', B='b', C='c'), ascii=F, xdr=T) [1] 58 0a 00 00 00 02 00 03 00 02 00 02 03 00 00 00 02 10 00 00 00 03 00 04 00 [26] 09 00 00 00 01 61 00 04 00 09 00 00 00 01 62 00 04 00 09 00 00 00 01 63 00 [51] 00 04 02 00 00 00 01 00 04 00 09 00 00 00 05 6e 61 6d 65 73 00 00 00 10 00 [76] 00 00 03 00 04 00 09 00 00 00 01 41 00 04 00 09 00 00 00 01 42 00 04 00 09 [101] 00 00 00 01 43 00 00 00 fe Complex vectors: - empty_cpx: complex() - cpx_na: c(1, NA_complex_, 3i, 0) - noatt-cpx: 3+2i - foo-cpx: c(foo=3+2i) - cpx-1i: 1i - cpx-0i: 5+0i - cpx-vector: complex(real=1:3, imaginary=4:6) Raw: - noatt-raw-noxdr: serialize(as.raw(c(1:3, 255, 0)), NULL, xdr=F) [1] 42 0a 02 00 00 00 02 00 03 00 00 03 02 00 18 00 00 00 05 00 00 00 01 02 03 [26] ff 00 - noatt-raw-xdr: serialize(as.raw(c(1:3, 255, 0)), NULL, xdr=T) [1] 58 0a 00 00 00 02 00 03 00 02 00 02 03 00 00 00 00 18 00 00 00 05 01 02 03 [26] ff 00 Logical: - noatt-true-noxdr: serialize(TRUE, NULL, xdr=F) [1] 42 0a 02 00 00 00 00 01 03 00 00 03 02 00 0a 00 00 00 01 00 00 00 01 00 00 [26] 00 - noatt-true-xdr: serialize(TRUE, NULL xdr=T) [1] 58 0a 00 00 00 02 00 03 01 00 00 02 03 00 00 00 00 0a 00 00 00 01 00 00 00 [26] 01 - noatt-tfftf-xdr: serialize(c(T, F, F, T, F), NULL, xdr=T) [1] 58 0a 00 00 00 02 00 03 01 00 00 02 03 00 00 00 00 0a 00 00 00 05 00 00 00 [26] 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 - ABCDE-tfftf-xdr: serialize(c(A=T, B=F, C=F, D=T, E=F), NULL, xdr=T) [1] 58 0a 00 00 00 02 00 03 01 00 00 02 03 00 00 00 02 0a 00 00 00 05 00 00 00 [26] 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 04 02 00 00 00 01 [51] 00 04 00 09 00 00 00 05 6e 61 6d 65 73 00 00 00 10 00 00 00 05 00 04 00 09 [76] 00 00 00 01 41 00 04 00 09 00 00 00 01 42 00 04 00 09 00 00 00 01 43 00 04 [101] 00 09 00 00 00 01 44 00 04 00 09 00 00 00 01 45 00 00 00 fe Lists: - noatt-list-noxdr: serialize(list(1:3, list('a', 'b', 11), 'foo'), f, ascii=F, xdr=F) [1] 42 0a 02 00 00 00 02 00 03 00 00 03 02 00 13 00 00 00 03 00 00 00 0d 00 00 [26] 00 03 00 00 00 01 00 00 00 02 00 00 00 03 00 00 00 13 00 00 00 03 00 00 00 [51] 10 00 00 00 01 00 00 00 09 00 04 00 01 00 00 00 61 10 00 00 00 01 00 00 00 [76] 09 00 04 00 01 00 00 00 62 0e 00 00 00 01 00 00 00 00 00 00 00 00 00 26 40 [101] 10 00 00 00 01 00 00 00 09 00 04 00 03 00 00 00 66 6f 6f - noatt-list-xdr: serialize(list(1:3, list('a', 'b', 11), 'foo'), f, ascii=F, xdr=T) [1] 58 0a 00 00 00 02 00 03 00 02 00 02 03 00 00 00 00 13 00 00 00 03 00 00 00 [26] 0d 00 00 00 03 00 00 00 01 00 00 00 02 00 00 00 03 00 00 00 13 00 00 00 03 [51] 00 00 00 10 00 00 00 01 00 04 00 09 00 00 00 01 61 00 00 00 10 00 00 00 01 [76] 00 04 00 09 00 00 00 01 62 00 00 00 0e 00 00 00 01 40 26 00 00 00 00 00 00 [101] 00 00 00 10 00 00 00 01 00 04 00 09 00 00 00 03 66 6f 6f - foobar-list-xdr: serialize(list(foo=1:3, list('a', 'b', 11), bar='foo'), f, ascii=F, xdr=T) [1] 58 0a 00 00 00 02 00 03 00 02 00 02 03 00 00 00 02 13 00 00 00 03 00 00 00 [26] 0d 00 00 00 03 00 00 00 01 00 00 00 02 00 00 00 03 00 00 00 13 00 00 00 03 [51] 00 00 00 10 00 00 00 01 00 04 00 09 00 00 00 01 61 00 00 00 10 00 00 00 01 [76] 00 04 00 09 00 00 00 01 62 00 00 00 0e 00 00 00 01 40 26 00 00 00 00 00 00 [101] 00 00 00 10 00 00 00 01 00 04 00 09 00 00 00 03 66 6f 6f 00 00 04 02 00 00 [126] 00 01 00 04 00 09 00 00 00 05 6e 61 6d 65 73 00 00 00 10 00 00 00 03 00 04 [151] 00 09 00 00 00 03 66 6f 6f 00 04 00 09 00 00 00 00 00 04 00 09 00 00 00 03 [176] 62 61 72 00 00 00 fe Matrix: - noatt-mat-noxdr: serialize(matrix(-1:4, 2, 3), f, ascii=F, xdr=F) [1] 42 0a 02 00 00 00 02 00 03 00 00 03 02 00 0d 02 00 00 06 00 00 00 ff ff ff [26] ff 00 00 00 00 01 00 00 00 02 00 00 00 03 00 00 00 04 00 00 00 02 04 00 00 [51] 01 00 00 00 09 00 04 00 03 00 00 00 64 69 6d 0d 00 00 00 02 00 00 00 02 00 [76] 00 00 03 00 00 00 fe 00 00 00 - noatt-mat-noxdr: serialize(matrix(-1:4, 2, 3), f, ascii=F, xdr=T) [1] 58 0a 00 00 00 02 00 03 00 02 00 02 03 00 00 00 02 0d 00 00 00 06 ff ff ff [26] ff 00 00 00 00 00 00 00 01 00 00 00 02 00 00 00 03 00 00 00 04 00 00 04 02 [51] 00 00 00 01 00 04 00 09 00 00 00 03 64 69 6d 00 00 00 0d 00 00 00 02 00 00 [76] 00 02 00 00 00 03 00 00 00 fe - ab-mat-noxdr: serialize(matrix(-1:4, 2, 3, dimnames=list(c('a', 'b'))), f, ascii=F, xdr=T) [1] 58 0a 00 00 00 02 00 03 00 02 00 02 03 00 00 00 02 0d 00 00 00 06 ff ff ff [26] ff 00 00 00 00 00 00 00 01 00 00 00 02 00 00 00 03 00 00 00 04 00 00 04 02 [51] 00 00 00 01 00 04 00 09 00 00 00 03 64 69 6d 00 00 00 0d 00 00 00 02 00 00 [76] 00 02 00 00 00 03 00 00 04 02 00 00 00 01 00 04 00 09 00 00 00 08 64 69 6d [101] 6e 61 6d 65 73 00 00 00 13 00 00 00 02 00 00 00 10 00 00 00 02 00 04 00 09 [126] 00 00 00 01 61 00 04 00 09 00 00 00 01 62 00 00 00 fe 00 00 00 fe Data frame: - cars-noxdr: serialize(head(cars), f, ascii=F, xdr=F) - cars-xdr: serialize(head(cars), f, ascii=F, xdr=T) [1] 58 0a 00 00 00 02 00 03 00 02 00 02 03 00 00 00 03 13 00 00 00 02 00 00 00 [26] 0e 00 00 00 06 40 10 00 00 00 00 00 00 40 10 00 00 00 00 00 00 40 1c 00 00 [51] 00 00 00 00 40 1c 00 00 00 00 00 00 40 20 00 00 00 00 00 00 40 22 00 00 00 [76] 00 00 00 00 00 00 0e 00 00 00 06 40 00 00 00 00 00 00 00 40 24 00 00 00 00 [101] 00 00 40 10 00 00 00 00 00 00 40 36 00 00 00 00 00 00 40 30 00 00 00 00 00 [126] 00 40 24 00 00 00 00 00 00 00 00 04 02 00 00 00 01 00 04 00 09 00 00 00 05 [151] 6e 61 6d 65 73 00 00 00 10 00 00 00 02 00 04 00 09 00 00 00 05 73 70 65 65 [176] 64 00 04 00 09 00 00 00 04 64 69 73 74 00 00 04 02 00 00 00 01 00 04 00 09 [201] 00 00 00 09 72 6f 77 2e 6e 61 6d 65 73 00 00 00 0d 00 00 00 02 80 00 00 00 [226] 00 00 00 06 00 00 04 02 00 00 00 01 00 04 00 09 00 00 00 05 63 6c 61 73 73 [251] 00 00 00 10 00 00 00 01 00 04 00 09 00 00 00 0a 64 61 74 61 2e 66 72 61 6d [276] 65 00 00 00 fe - mtcars-noxdr: serialize(head(mtcars), f, ascii=F, xdr=F) - mtcars-xdr: serialize(head(mtcars), f, ascii=F, xdr=T) - iris-noxdr: serialize(head(iris), f, ascii=F, xdr=F) - iris-xdr: serialize(head(iris), f, ascii=F, xdr=T) - df_auto_rownames: data.frame(a=1:3, b="x") - row.names attribute is `c(NA, -3L)` - df_expl_rownames: data.frame(a=1:3, b="x")[1:3,] - row.names attribute is `c(NA, 3L)` Language: - lang-lm-mpgwt-xdr: serialize(lm(mpg ~ wt, data = head(mtcars))$call, f, ascii=F, xdr=T) More complex: - mtcars-lm-mpgwt-xdr: serialize(lm(mpg ~ wt, data = head(mtcars)), f, ascii=F, xdg=T) Environments: - global environment: [1] 58 0a 00 00 00 02 00 03 00 02 00 02 03 00 00 00 00 fd - e1 <- new.env(size=3, parent=.GlobalEnv); assign('x', 'foo', e1); assign('y', 'bar', e1) serialize(e1, NULL): [1] 58 0a 00 00 00 02 00 03 00 02 00 02 03 00 00 00 00 04 00 00 00 00 00 00 00 [26] fd 00 00 00 fe 00 00 00 13 00 00 00 03 00 00 04 02 00 00 00 01 00 04 00 09 [51] 00 00 00 01 78 00 00 00 10 00 00 00 01 00 04 00 09 00 00 00 03 66 6f 6f 00 [76] 00 00 fe 00 00 04 02 00 00 00 01 00 04 00 09 00 00 00 01 79 00 00 00 10 00 [101] 00 00 01 00 04 00 09 00 00 00 03 62 61 72 00 00 00 fe 00 00 00 fe 00 00 00 [126] fe - e2 <- new.env(parent=e1); assign('x', 7L, e2) serialize(e2, NULL): [1] 58 0a 00 00 00 02 00 03 00 02 00 02 03 00 00 00 00 04 00 00 00 00 00 00 00 [26] 04 00 00 00 00 00 00 00 fd 00 00 00 fe 00 00 00 13 00 00 00 03 00 00 04 02 [51] 00 00 00 01 00 04 00 09 00 00 00 01 78 00 00 00 10 00 00 00 01 00 04 00 09 [76] 00 00 00 03 66 6f 6f 00 00 00 fe 00 00 04 02 00 00 00 01 00 04 00 09 00 00 [101] 00 01 79 00 00 00 10 00 00 00 01 00 04 00 09 00 00 00 03 62 61 72 00 00 00 [126] fe 00 00 00 fe 00 00 00 fe 00 00 00 fe 00 00 00 13 00 00 00 1d 00 00 00 fe [151] 00 00 00 fe 00 00 00 fe 00 00 00 fe 00 00 04 02 00 00 03 ff 00 00 00 0d 00 [176] 00 00 01 00 00 00 07 00 00 00 fe 00 00 00 fe 00 00 00 fe 00 00 00 fe 00 00 [201] 00 fe 00 00 00 fe 00 00 00 fe 00 00 00 fe 00 00 00 fe 00 00 00 fe 00 00 00 [226] fe 00 00 00 fe 00 00 00 fe 00 00 00 fe 00 00 00 fe 00 00 00 fe 00 00 00 fe [251] 00 00 00 fe 00 00 00 fe 00 00 00 fe 00 00 00 fe 00 00 00 fe 00 00 00 fe 00 [276] 00 00 fe 00 00 00 fe 00 00 00 fe Expressions: - expression() [1] 58 0a 00 00 00 02 00 03 01 00 00 02 03 00 00 00 00 14 00 00 00 00 - expression(NULL) [1] 58 0a 00 00 00 02 00 03 01 00 00 02 03 00 00 00 00 14 00 00 00 01 00 00 00 [26] fe - expression(42L) [1] 58 0a 00 00 00 02 00 03 01 00 00 02 03 00 00 00 00 14 00 00 00 01 00 00 00 [26] 0d 00 00 00 01 00 00 00 2a - expression(1+2) [1] 58 0a 00 00 00 02 00 03 01 00 00 02 03 00 00 00 00 14 00 00 00 01 00 00 00 [26] 06 00 00 00 01 00 04 00 09 00 00 00 01 2b 00 00 00 02 00 00 00 0e 00 00 00 [51] 01 3f f0 00 00 00 00 00 00 00 00 00 02 00 00 00 0e 00 00 00 01 40 00 00 00 [76] 00 00 00 00 00 00 00 fe - expression(u, v, 1+0:9) [1] 58 0a 00 00 00 02 00 03 01 00 00 02 03 00 00 00 00 14 00 00 00 03 00 00 00 [26] 01 00 04 00 09 00 00 00 01 75 00 00 00 01 00 04 00 09 00 00 00 01 76 00 00 [51] 00 06 00 00 00 01 00 04 00 09 00 00 00 01 2b 00 00 00 02 00 00 00 0e 00 00 [76] 00 01 3f f0 00 00 00 00 00 00 00 00 00 02 00 00 00 06 00 00 00 01 00 04 00 [101] 09 00 00 00 01 3a 00 00 00 02 00 00 00 0e 00 00 00 01 00 00 00 00 00 00 00 [126] 00 00 00 00 02 00 00 00 0e 00 00 00 01 40 22 00 00 00 00 00 00 00 00 00 fe [151] 00 00 00 fe Closures: - `function() {}` - `function() NULL` - `function() 1L` - `function() 1+2` - `function(a, b) {a - b}` - `function(a=3, b) {a + b * pi}` - `function(x=3, y, ...) {x * log(y) }` Additional formats: - .rds: the object from the corresponding file serialized using `saveRDS` (with no compression, or using Gzip, Bzip2, and XZ, as recorded in the name) - .qap: the object from the corresponding file serialized by the Rserve server using the QAP protocol s4-xdr100644000765000024 31713140202262 16303 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  x  y@@@ class track package .GlobalEnvþþs4.qap100644000765000024 20413140202262 16263 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data €‡|x x!@@@y¢(" .GlobalEnvpackagetrackclassio-oo-rdata.t100644000765000024 5403313140202262 16672 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 11; use Test::Fatal; use Statistics::R::IO::RData; use Statistics::R::IO::REXPFactory; use lib 't/lib'; use ShortDoubleVector; sub check_rdata { my ($file, $expected, $message) = @_; subtest 'rdata ' . $message => sub { plan tests => 2 * (keys(%{$expected}) + 1); ## test with filename my $rdata = Statistics::R::IO::RData->new($file); my %actual = $rdata->read; is(keys %actual, keys %{$expected}, "$message keys"); while (my ($key, $value) = each %{$expected}) { ## NOTE: I'm switching the order of comparisons to ensure ## ShortDoubleVector's 'eq' overload is used is($expected->{$key}, $actual{$key}, "$message $key"); } $rdata->close; ## test with raw file handle open my $fh, $file or die $!; $rdata = Statistics::R::IO::RData->new({ fh => $fh }); %actual = $rdata->read; is(keys %actual, keys %{$expected}, "$message keys"); while (my ($key, $value) = each %{$expected}) { ## NOTE: I'm switching the order of comparisons to ensure ## ShortDoubleVector's 'eq' overload is used is($expected->{$key}, $actual{$key}, "$message $key"); } $rdata->close } } sub check_rdata_variants { my ($file, $expected, $message) = @_; subtest 'variants ' . $message => sub { plan tests => 4; check_rdata($file . '.RData', $expected, $message . ' - default'); check_rdata($file . '_uncompressed.RData', $expected, $message . ' - uncompressed'); check_rdata($file . '_bzip.RData', $expected, $message . ' - bzip'); like(exception { Statistics::R::IO::RData->new($file . '_xz.RData')->read }, qr/xz-compressed R files are not supported/, $message . ' - xz'); } } ## Atomic vectors my %expected_vecs = ( noatt_int => Statistics::R::REXP::Integer->new([ -1, 0, 1, 2, 3 ]), abc_int => Statistics::R::REXP::Integer->new( elements => [ 1, 2, 3 ], attributes => { names => Statistics::R::REXP::Character->new(['a', 'b', 'c']) }), noatt_num => ShortDoubleVector->new([ 1234.56 ]), foo_num => ShortDoubleVector->new( elements => [ 1234.56 ], attributes => { names => Statistics::R::REXP::Character->new(['foo']) }), noatt_chr => Statistics::R::REXP::Character->new([ 'a', 'b', 'c' ]), abc_chr => Statistics::R::REXP::Character->new( elements => [ 'a', 'b', 'c' ], attributes => { names => Statistics::R::REXP::Character->new(['A', 'B', 'C']) }), noatt_raw => Statistics::R::REXP::Raw->new([ 1, 2, 3, 255, 0 ]), ); check_rdata_variants('t/data/vecs', \%expected_vecs, 'Vectors'); ## Matrices my %expected_mats = ( noatt_mat => Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), }), ab_mat => Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a', 'b']), Statistics::R::REXP::Null->new ]), }), ); check_rdata_variants('t/data/mats', \%expected_mats, 'Matrices'); ## Lists my %expected_lists = ( noatt_list => Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ]), foobar_list => Statistics::R::REXP::List->new( elements => [ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ], attributes => { names => Statistics::R::REXP::Character->new(['foo', '', 'bar']) }), ); check_rdata_variants('t/data/lists', \%expected_lists, 'Lists'); ## Data frames my %expected_frames = ( my_cars => Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 4, 4, 7, 7, 8, 9]), ShortDoubleVector->new([ 2, 10, 4, 22, 16, 10]), ], attributes => { names => Statistics::R::REXP::Character->new(['speed', 'dist']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), my_mtcars => Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 6, 6, 4, 6, 8, 6 ]), ShortDoubleVector->new([ 160, 160, 108, 258, 360, 225 ]), ShortDoubleVector->new([ 110, 110, 93, 110, 175, 105 ]), ShortDoubleVector->new([ 3.90, 3.90, 3.85, 3.08, 3.15, 2.76 ]), ShortDoubleVector->new([ 2.620, 2.875, 2.320, 3.215, 3.440, 3.460 ]), ShortDoubleVector->new([ 16.46, 17.02, 18.61, 19.44, 17.02, 20.22 ]), ShortDoubleVector->new([ 0, 0, 1, 1, 0, 1 ]), ShortDoubleVector->new([ 1, 1, 1, 0, 0, 0 ]), ShortDoubleVector->new([ 4, 4, 4, 3, 3, 3 ]), ShortDoubleVector->new([ 4, 4, 1, 1, 2, 1 ]), ], attributes => { names => Statistics::R::REXP::Character->new([ 'mpg' , 'cyl', 'disp', 'hp', 'drat', 'wt', 'qsec', 'vs', 'am', 'gear', 'carb']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant' ]), }), my_iris => Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 5.1, 4.9, 4.7, 4.6, 5.0, 5.4 ]), ShortDoubleVector->new([ 3.5, 3.0, 3.2, 3.1, 3.6, 3.9 ]), ShortDoubleVector->new([ 1.4, 1.4, 1.3, 1.5, 1.4, 1.7 ]), ShortDoubleVector->new([ 0.2, 0.2, 0.2, 0.2, 0.2, 0.4 ]), Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 1 ], attributes => { levels => Statistics::R::REXP::Character->new([ 'setosa', 'versicolor', 'virginica']), class => Statistics::R::REXP::Character->new(['factor']) } ), ], attributes => { names => Statistics::R::REXP::Character->new([ 'Sepal.Length', 'Sepal.Width', 'Petal.Length', 'Petal.Width', 'Species']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), ); check_rdata_variants('t/data/frames', \%expected_frames, 'Frames'); ## Environments my %expected_env = ( e1 => Statistics::R::REXP::Environment->new( frame => { x => Statistics::R::REXP::Character->new(['foo']), y => Statistics::R::REXP::Character->new(['bar']), }, enclosure => Statistics::R::REXP::GlobalEnvironment->new), e2 => Statistics::R::REXP::Environment->new( frame => { x => Statistics::R::REXP::Integer->new([7]), }, enclosure => Statistics::R::REXP::Environment->new( frame => { x => Statistics::R::REXP::Character->new(['foo']), y => Statistics::R::REXP::Character->new(['bar']), }, enclosure => Statistics::R::REXP::GlobalEnvironment->new), ), ); check_rdata_variants('t/data/env', \%expected_env, 'Environment'); ## Model objects my %expected_models = ( mtcars_lm => Statistics::R::REXP::List->new( elements => [ # coefficients ShortDoubleVector->new( elements => [ 30.3002034730204, -3.27948805566774 ], attributes => { names => Statistics::R::REXP::Character->new(['(Intercept)', 'wt']) }), # residuals ShortDoubleVector->new( elements => [ -0.707944767170941, 0.128324687024322, 0.108208816128727, 1.64335062595135, -0.318764561523408, -0.853174800410051 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # effects ShortDoubleVector->new( elements => [ -50.2145397270552, -3.39713386075597, 0.13375416348722, 1.95527848390874, 0.0651588996571721, -0.462851730054076 ], attributes => { names => Statistics::R::REXP::Character->new([ '(Intercept)', 'wt', '', '', '', '' ]) }), # rank Statistics::R::REXP::Integer->new([2]), # fitted.values ShortDoubleVector->new( elements => [ 21.7079447671709, 20.8716753129757, 22.6917911838713, 19.7566493740486, 19.0187645615234, 18.9531748004101 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # assign Statistics::R::REXP::Integer->new([0, 1]), # qr Statistics::R::REXP::List->new( elements => [ # qr ShortDoubleVector->new( elements => [ -2.44948974278318, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, -7.31989184801706, 1.03587322261623, 0.542107126002057, -0.321898217952644, -0.539106265315558, -0.558413647303373 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 6, 2 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]), Statistics::R::REXP::Character->new([ '(Intercept)', 'wt' ]) ]), assign => Statistics::R::REXP::Integer->new([ 0, 1 ]), }), # qraux ShortDoubleVector->new( [ 1.40824829046386, 1.0063272758402 ]), # pivot Statistics::R::REXP::Integer->new([1, 2]), # tol ShortDoubleVector->new([1E-7]), # rank Statistics::R::REXP::Integer->new([2]), ], attributes => { names => Statistics::R::REXP::Character->new([ "qr", "qraux", "pivot", "tol", "rank" ]), class => Statistics::R::REXP::Character->new(['qr']) }), # df.residual Statistics::R::REXP::Integer->new([4]), # xlevels Statistics::R::REXP::List->new( elements => [], attributes => { names => Statistics::R::REXP::Character->new([]) }), # call Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), # terms Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::GlobalEnvironment->new, predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), # model Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 2.62, 2.875, 2.32, 3.215, 3.44, 3.46 ]), ], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant']), class => Statistics::R::REXP::Character->new(['data.frame']), terms => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::GlobalEnvironment->new, predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), }), ], attributes => { names => Statistics::R::REXP::Character->new([ 'coefficients', 'residuals', 'effects', 'rank', 'fitted.values', 'assign', 'qr', 'df.residual', 'xlevels', 'call', 'terms', 'model', ]), class => Statistics::R::REXP::Character->new(['lm']) }), ); check_rdata_variants('t/data/lm', \%expected_models, 'Models'); my %expected_all = ( %expected_vecs, %expected_mats, %expected_lists, %expected_frames, %expected_env, %expected_models, ); check_rdata_variants('t/data/all', \%expected_all, 'all'); ## opening a non-existent file like(exception { Statistics::R::IO::RData->new('foobard') }, qr/No such file 'foobard'/, 'new on non-existent file'); ## bad arguments to new like(exception { Statistics::R::IO::RData->new }, qr/Attribute 'fh' is required/, 'new with no args'); like(exception { Statistics::R::IO::RData->new([]) }, qr/Single parameters to new/, 'new with array ref'); like(exception { Statistics::R::IO::RData->new(fh => []) }, qr/Attribute 'fh' must be an instance of IO::Handle or an open filehandle/, 'bad fh'); rexp-double.t100644000765000024 1043013140202262 16776 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 32; use Test::Fatal; use Statistics::R::REXP::Double; use Statistics::R::REXP::List; my $empty_vec = new_ok('Statistics::R::REXP::Double', [ ], 'new double vector' ); is($empty_vec, $empty_vec, 'self equality'); my $empty_vec_2 = Statistics::R::REXP::Double->new(); is($empty_vec, $empty_vec_2, 'empty double vector equality'); my $vec = Statistics::R::REXP::Double->new(elements => [3.3, 4.7, 11]); my $vec2 = Statistics::R::REXP::Double->new([3.3, 4.7, 11]); is($vec, $vec2, 'double vector equality'); is(Statistics::R::REXP::Double->new($vec2), $vec, 'copy constructor'); is(Statistics::R::REXP::Double->new(Statistics::R::REXP::List->new([3.3, [4.7, 11]])), $vec, 'copy constructor from a vector'); ## error checking in constructor arguments like(exception { Statistics::R::REXP::Double->new(sub {1+1}) }, qr/Attribute 'elements' must be an array reference/, 'error-check in single-arg constructor'); like(exception { Statistics::R::REXP::Double->new(1, 2, 3) }, qr/odd number of arguments/, 'odd constructor arguments'); like(exception { Statistics::R::REXP::Double->new(elements => {foo => 1, bar => 2}) }, qr/Attribute 'elements' must be an array reference/, 'bad elements argument'); my $another_vec = Statistics::R::REXP::Double->new(elements => [3, 4.7, 11]); isnt($vec, $another_vec, 'double vector inequality'); my $na_heavy_vec = Statistics::R::REXP::Double->new(elements => [11.3, '', undef, 0.0]); my $na_heavy_vec2 = Statistics::R::REXP::Double->new(elements => [11.3, 0, undef, 0]); is($na_heavy_vec, $na_heavy_vec, 'NA-heavy vector equality'); isnt($na_heavy_vec, $na_heavy_vec2, 'NA-heavy vector inequality'); is($empty_vec .'', 'double()', 'empty double vector text representation'); is($vec .'', 'double(3.3, 4.7, 11)', 'double vector text representation'); is(Statistics::R::REXP::Double->new(elements => [undef]) .'', 'double(undef)', 'text representation of a singleton NA'); is($na_heavy_vec .'', 'double(11.3, undef, undef, 0)', 'empty numbers representation'); is_deeply($empty_vec->elements, [], 'empty double vector contents'); is_deeply($vec->elements, [3.3, 4.7, 11], 'double vector contents'); is($vec->elements->[1], 4.7, 'single element access'); is_deeply(Statistics::R::REXP::Double->new(elements => [3.3, 4.0, '3x', 11])->elements, [3.3, 4, undef, 11], 'constructor with non-numeric values'); is_deeply(Statistics::R::REXP::Double->new(elements => [3.3, 4.0, [7, [20.9, 44.1]], 11])->elements, [3.3, 4, 7, 20.9, 44.1, 11], 'constructor from nested arrays'); ok(! $empty_vec->is_null, 'is not null'); ok( $empty_vec->is_vector, 'is vector'); ## attributes is_deeply($vec->attributes, undef, 'default attributes'); my $vec_attr = Statistics::R::REXP::Double->new(elements => [3.3, 4.7, 11], attributes => { foo => 'bar', x => [40, 41, 42] }); is_deeply($vec_attr->attributes, { foo => 'bar', x => [40, 41, 42] }, 'constructed attributes'); my $vec_attr2 = Statistics::R::REXP::Double->new(elements => [3.3, 4.7, 11], attributes => { foo => 'bar', x => [40, 41, 42] }); my $another_vec_attr = Statistics::R::REXP::Double->new(elements => [3.3, 4.7, 11], attributes => { foo => 'bar', x => [40, 42, 42] }); is($vec_attr, $vec_attr2, 'equality considers attributes'); isnt($vec_attr, $vec, 'inequality considers attributes'); isnt($vec_attr, $another_vec_attr, 'inequality considers attributes deeply'); ## attributes must be a hash like(exception { Statistics::R::REXP::Double->new(attributes => 1) }, qr/Attribute 'attributes' must be a hash reference/, 'setting non-HASH attributes'); ## Perl representation is_deeply($empty_vec->to_pl, [], 'empty vector Perl representation'); is_deeply($vec->to_pl, [3.3, 4.7, 11], 'Perl representation'); is_deeply($na_heavy_vec->to_pl, [11.3, undef, undef, 0], 'NA-heavy vector Perl representation'); rexp-symbol.t100644000765000024 517313140202262 17021 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 20; use Test::Fatal; use Statistics::R::REXP::Symbol; my $sym = new_ok('Statistics::R::REXP::Symbol', [ name => 'sym' ], 'new symbol' ); is($sym, $sym, 'self equality'); my $sym_2 = Statistics::R::REXP::Symbol->new(name => $sym); is($sym, $sym_2, 'symbol equality with copy'); is(Statistics::R::REXP::Symbol->new($sym_2), $sym, 'copy constructor'); is(Statistics::R::REXP::Symbol->new('sym'), $sym, 'string constructor'); ## error checking in constructor arguments like(exception { Statistics::R::REXP::Symbol->new([1, 2, 3]) }, qr/Attribute 'name' must be a scalar value/, 'error-check in single-arg constructor'); like(exception { Statistics::R::REXP::Symbol->new(1, 2, 3) }, qr/odd number of arguments/, 'odd constructor arguments'); like(exception { Statistics::R::REXP::Symbol->new(name => [1, 2, 3]) }, qr/Attribute 'name' must be a scalar value/, 'bad name argument'); my $sym_foo = Statistics::R::REXP::Symbol->new(name => 'foo'); isnt($sym, $sym_foo, 'symbol inequality'); is($sym->name, 'sym', 'symbol name'); ok(! $sym->is_null, 'is not null'); ok(! $sym->is_vector, 'is not vector'); is($sym .'', 'symbol `sym`', 'symbol text representation'); ## attributes is_deeply($sym->attributes, undef, 'default attributes'); my $sym_attr = Statistics::R::REXP::Symbol->new(name => 'sym', attributes => { foo => 'bar', x => [40, 41, 42] }); is_deeply($sym_attr->attributes, { foo => 'bar', x => [40, 41, 42] }, 'constructed attributes'); my $sym_attr2 = Statistics::R::REXP::Symbol->new(name => 'sym', attributes => { foo => 'bar', x => [40, 41, 42] }); my $another_sym_attr = Statistics::R::REXP::Symbol->new(name => 'sym', attributes => { foo => 'bar', x => [40, 42, 42] }); is($sym_attr, $sym_attr2, 'equality considers attributes'); isnt($sym_attr, $sym, 'inequality considers attributes'); isnt($sym_attr, $another_sym_attr, 'inequality considers attributes deeply'); ## attributes must be a hash like(exception { Statistics::R::REXP::Symbol->new(attributes => 1) }, qr/Attribute 'attributes' must be a hash reference/, 'setting non-HASH attributes'); ## Perl representation is_deeply($sym->to_pl, 'sym', 'Perl representation'); rexp-vector.t100644000765000024 63013140202262 16767 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 3; use Test::Fatal; use Statistics::R::REXP::Vector; # not instantiable like(exception { Statistics::R::REXP::Vector->new, }, qr /method required/, 'creating a Vector instance'); ok( Statistics::R::REXP::Vector->is_vector, 'is vector' ); ok( ! Statistics::R::REXP::Vector->is_null, 'is not null' ); cars-xdr100644000765000024 43013140202262 16701 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX @@@@@ @"@@$@@6@0@$ names speed dist row.names € class data.frameþcars.qap100644000765000024 31013140202262 16663 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data ÄÀT" speeddistnames € row.names" data.frameclass!0@@@@ @"@!0@$@@6@0@$@iris-xdr100644000765000024 113513140202262 16742 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX @ffffff@™™™™™š@ÌÌÌÌÌÍ@ffffff@@™™™™™š@ @@ ™™™™™š@ÌÌÌÌÌÍ@ ÌÌÌÌÌÍ@333333?öffffff?öffffff?ôÌÌÌÌÌÍ?ø?öffffff?û333333?É™™™™™š?É™™™™™š?É™™™™™š?É™™™™™š?É™™™™™š?Ù™™™™™š  levels setosa versicolor virginica class factorþ names Sepal.Length Sepal.Width Petal.Length Petal.Width Species row.names €ÿ data.frameþiris.qap100644000765000024 70413140202262 16710 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data À¼„"<Sepal.LengthSepal.WidthPetal.LengthPetal.WidthSpeciesnames € row.names" data.frameclass!0ffffff@š™™™™™@ÍÌÌÌÌÌ@ffffff@@š™™™™™@!0 @@š™™™™™ @ÍÌÌÌÌÌ@ÍÌÌÌÌÌ @333333@!0ffffffö?ffffffö?ÍÌÌÌÌÌô?ø?ffffffö?333333û?!0š™™™™™É?š™™™™™É?š™™™™™É?š™™™™™É?š™™™™™É?š™™™™™Ù? `D"setosaversicolorvirginicalevels"factorclasslm.RData100644000765000024 211513140202262 16602 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹ÍV]ŒÔTî´3`—YÅ•°Ôàª8Âþ`"ºmÂ*K„DÁè&n$wÛÛµ±?CÛ™e×D7 Æ'‰< ƒ?1E\ø—™5š/‚1]²/š‘ÅŸ}Xêm{Ûm;3²¾€M¦÷öÜsÏýÎ9ß9w¶õöwdú3A…~$…¦4‰^ ‚&ÒhL«– s‡¢•C‚,Ò]âlà{¶œ½å…/?¨fî7|ûñHlcR*4Ѥɵî ÙöÍš ­;°ˆ¶Ðûol•©üøÎ³'¾þõg®ª\yžž{ûtb߸,·ssßɼuû›•3Ò¡‘F.T.ní~`]¦Ó;•´ñAŒ{+A~[,ù'Àfze–´ü½ëÖbÉ’>ÝР•ïÊ÷rbi3–n/ê†õ’…REZăêæåôá÷wWÙ»Û=öömÜdÛ¹ž™Ópvß7Ëõ§z¹÷ÆùËËVU~88ðýÔ‘±4•7#Ž.b±›'îßýᆩ‡vä»Î¯^™˜eùõÇZïkD¾srâ«?s—øNúÔäÍÍ+øŽß¨/®ºô «ë ‰½K`&±gÙ*õÚ+-éUîlþóbv wµ±ºrÓ«Ÿì™]ÊÍì»|ò|r˜›î¿ÂÞª«œÙ?÷ÇÑÓ{+Óü“'¶ßU¨LO½´¥õÜ»1ZS¢¬† 1ÞQY„T|òç°Þõ âBJ0âLSÒjcïæÃ-nöå{(¶‰›i½ðÆšŸÖ†t1ó\½DÏèw¿øìh_”•v%}; ¿yì4@i—ÿQ”˺ïeé žÒО‰wAAбÝDÈn´.h$ÌyNEøõÄw;­/rHJÒ µ¤€˜bâ¹ÀŒU-ÅDA·‹¤E`Å­ÑOC Æv3^3Æ Ñbâíº  *.ù"æÙ´J/5AU,µ¯ßfûš3}™]oÕYÉù‡†ØRGvCÙ!êö<)—/ H7Ù×”qÑ6ôáBø¿äu»F#Qöáeœ²,H8>ˆ@Öo‚%IdÔÌÀ1hÊb (AŽ ‚uïzîI²eA±PJ ú þ%¿ 'all'; use Test::More tests => 21; use Test::Fatal; use Statistics::R::REXP::Closure; use Statistics::R::REXP::Language; use Statistics::R::REXP::Character; use Statistics::R::REXP::Double; use Statistics::R::REXP::Integer; use Statistics::R::REXP::List; use Statistics::R::REXP::Symbol; use Statistics::R::REXP::Null; my $closure = Statistics::R::REXP::Closure->new(body => Statistics::R::REXP::Null->new); my $closure2 = Statistics::R::REXP::Closure->new(body => Statistics::R::REXP::Null->new); is($closure, $closure2, 'closure equality'); is(Statistics::R::REXP::Closure->new($closure2), $closure, 'copy constructor'); ## error checking in constructor arguments like(exception { Statistics::R::REXP::Closure->new() }, qr/Attribute \(body\) is required/, 'error-check in no-arg constructor'); like(exception { Statistics::R::REXP::Closure->new([1, 2, 3]) }, qr/HASH data or a Statistics::R::REXP::Closure/, 'error-check in single-arg constructor'); like(exception { Statistics::R::REXP::Closure->new(1, 2, 3) }, qr/odd number of arguments/, 'odd constructor arguments'); like(exception { Statistics::R::REXP::Closure->new(args => [], defaults => [undef], body => Statistics::R::REXP::Null->new) }, qr/argument names don't match their defaults/, 'odd constructor arguments'); like(exception { Statistics::R::REXP::Closure->new(body => {foo => 1, bar => 2}) }, qr/Attribute 'body' must be a reference to an instance of Statistics::R::REXP/, 'bad body argument'); like(exception { Statistics::R::REXP::Closure->new(body => Statistics::R::REXP::Integer->new([42]), environment => 'foo') }, qr/Attribute 'environment' must be an instance of Environment/, 'bad env enclosure'); my $another_closure = Statistics::R::REXP::Closure->new(body => Statistics::R::REXP::Symbol->new('foo')); isnt($closure, $another_closure, 'closure inequality'); my $args_closure = Statistics::R::REXP::Closure->new(args => ['foo'], body => Statistics::R::REXP::Symbol->new('foo')); isnt($args_closure, $another_closure, 'args inequality'); # my $na_heavy_language = Statistics::R::REXP::Language->new(elements => [Statistics::R::REXP::Symbol->new('bla'), ['', undef], '0']); # my $na_heavy_language2 = Statistics::R::REXP::Language->new(elements => [Statistics::R::REXP::Symbol->new('bla'), [undef, undef], 0]); # is($na_heavy_language, $na_heavy_language, 'NA-heavy language equality'); # isnt($na_heavy_language, $na_heavy_language2, 'NA-heavy language inequality'); is($closure .'', 'function() NULL', 'closure text representation'); is($args_closure .'', 'function(foo) symbol `foo`', 'closure text representation'); ok(! $closure->is_null, 'is not null'); ok(! $closure->is_vector, 'is not vector'); ## attributes is_deeply($closure->attributes, undef, 'default attributes'); my $closure_attr = Statistics::R::REXP::Closure->new(body => Statistics::R::REXP::Null->new, attributes => { foo => 'bar', x => [40, 41, 42] }); is_deeply($closure_attr->attributes, { foo => 'bar', x => [40, 41, 42] }, 'constructed attributes'); my $closure_attr2 = Statistics::R::REXP::Closure->new(body => Statistics::R::REXP::Null->new, attributes => { foo => 'bar', x => [40, 41, 42] }); my $another_closure_attr = Statistics::R::REXP::Closure->new(body => Statistics::R::REXP::Null->new, attributes => { foo => 'bar', x => [40, 42, 42] }); is($closure_attr, $closure_attr2, 'equality considers attributes'); isnt($closure_attr, $closure, 'inequality considers attributes'); isnt($closure_attr, $another_closure_attr, 'inequality considers attributes deeply'); ## attributes must be a hash like(exception { Statistics::R::REXP::Closure->new(body => [ Statistics::R::REXP::Symbol->new('foo') ], attributes => 1) }, qr/Attribute 'attributes' must be a hash reference/, 'setting non-HASH attributes'); ## Perl representation like(exception { $closure->to_pl }, qr/Closures do not have a native Perl representation/, 'Perl representation'); rexp-complex.t100644000765000024 1066313140202262 17203 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 32; use Test::Fatal; use Statistics::R::REXP::Complex; use Statistics::R::REXP::List; use Math::Complex qw(cplx); use Data::Dumper; my $empty_vec = new_ok('Statistics::R::REXP::Complex', [ ], 'new complex vector' ); is($empty_vec, $empty_vec, 'self equality'); my $empty_vec_2 = Statistics::R::REXP::Complex->new(); is($empty_vec, $empty_vec_2, 'empty complex vector equality'); my $vec = Statistics::R::REXP::Complex->new(elements => [cplx(3.3), cplx(4.7), cplx(11)]); my $vec2 = Statistics::R::REXP::Complex->new([3.3, 4.7, 11]); is($vec, $vec2, 'complex vector equality'); is(Statistics::R::REXP::Complex->new($vec2), $vec, 'copy constructor'); is(Statistics::R::REXP::Complex->new(Statistics::R::REXP::List->new([3.3, [4.7, 11]])), $vec, 'copy constructor from a vector'); ## error checking in constructor arguments like(exception { Statistics::R::REXP::Complex->new(sub {1+1}) }, qr/Attribute 'elements' must be an array reference/, 'error-check in single-arg constructor'); like(exception { Statistics::R::REXP::Complex->new(1, 2, 3) }, qr/odd number of arguments/, 'odd constructor arguments'); like(exception { Statistics::R::REXP::Complex->new(elements => {foo => 1, bar => 2}) }, qr/Attribute 'elements' must be an array reference/, 'bad elements argument'); my $another_vec = Statistics::R::REXP::Complex->new(elements => [cplx(3.3), cplx(4.7, 1), 11]); isnt($vec, $another_vec, 'complex vector inequality'); my $na_heavy_vec = Statistics::R::REXP::Complex->new(elements => [cplx(11.3, 3), '', undef, 0.0]); my $na_heavy_vec2 = Statistics::R::REXP::Complex->new(elements => [cplx(11.3, 3), 0, undef, 0]); is($na_heavy_vec, $na_heavy_vec, 'NA-heavy vector equality'); isnt($na_heavy_vec, $na_heavy_vec2, 'NA-heavy vector inequality'); is($empty_vec .'', 'complex()', 'empty complex vector text representation'); is($vec .'', 'complex(3.3, 4.7, 11)', 'complex vector text representation'); is(Statistics::R::REXP::Complex->new(elements => [undef]) .'', 'complex(undef)', 'text representation of a singleton NA'); is($na_heavy_vec .'', 'complex(11.3+3i, undef, undef, 0)', 'empty numbers representation'); is_deeply($empty_vec->elements, [], 'empty complex vector contents'); is_deeply($vec->elements, [3.3, 4.7, 11], 'complex vector contents'); cmp_ok($vec->elements->[1], '==', 4.7, 'single element access'); is_deeply(Statistics::R::REXP::Complex->new(elements => [3.3, 4.0, '3x', 11])->elements, [3.3, 4, undef, 11], 'constructor with non-numeric values'); is_deeply(Statistics::R::REXP::Complex->new(elements => [3.3, 4.0, [7, [20.9, 44.1]], 11])->elements, [3.3, 4, 7, 20.9, 44.1, 11], 'constructor from nested arrays'); ok(! $empty_vec->is_null, 'is not null'); ok( $empty_vec->is_vector, 'is vector'); ## attributes is_deeply($vec->attributes, undef, 'default attributes'); my $vec_attr = Statistics::R::REXP::Complex->new(elements => [3.3, 4.7, 11], attributes => { foo => 'bar', x => [40, 41, 42] }); is_deeply($vec_attr->attributes, { foo => 'bar', x => [40, 41, 42] }, 'constructed attributes'); my $vec_attr2 = Statistics::R::REXP::Complex->new(elements => [3.3, 4.7, 11], attributes => { foo => 'bar', x => [40, 41, 42] }); my $another_vec_attr = Statistics::R::REXP::Complex->new(elements => [3.3, 4.7, 11], attributes => { foo => 'bar', x => [40, 42, 42] }); is($vec_attr, $vec_attr2, 'equality considers attributes'); isnt($vec_attr, $vec, 'inequality considers attributes'); isnt($vec_attr, $another_vec_attr, 'inequality considers attributes deeply'); ## attributes must be a hash like(exception { Statistics::R::REXP::Complex->new(attributes => 1) }, qr/Attribute 'attributes' must be a hash reference/, 'setting non-HASH attributes'); ## Perl representation is_deeply($empty_vec->to_pl, [], 'empty vector Perl representation'); is_deeply($vec->to_pl, [3.3, 4.7, 11], 'Perl representation'); is_deeply($na_heavy_vec->to_pl, [cplx(11.3, 3), undef, undef, 0], 'NA-heavy vector Perl representation'); rexp-integer.t100644000765000024 1106713140202262 17170 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 34; use Test::Fatal; use Statistics::R::REXP::Integer; use Statistics::R::REXP::List; my $empty_vec = new_ok('Statistics::R::REXP::Integer', [ ], 'new integer vector' ); is($empty_vec, $empty_vec, 'self equality'); my $empty_vec_2 = Statistics::R::REXP::Integer->new(); is($empty_vec, $empty_vec_2, 'empty integer vector equality'); my $vec = Statistics::R::REXP::Integer->new(elements => [3, 4, 11]); my $vec2 = Statistics::R::REXP::Integer->new([3, 4, 11]); is($vec, $vec2, 'integer vector equality'); is(Statistics::R::REXP::Integer->new($vec2), $vec, 'copy constructor'); is(Statistics::R::REXP::Integer->new(Statistics::R::REXP::List->new([3.3, [4, '11']])), $vec, 'copy constructor from a vector'); ## error checking in constructor arguments like(exception { Statistics::R::REXP::Integer->new(sub {1+1}) }, qr/Attribute 'elements' must be an array reference/, 'error-check in single-arg constructor'); like(exception { Statistics::R::REXP::Integer->new(1, 2, 3) }, qr/odd number of arguments/, 'odd constructor arguments'); like(exception { Statistics::R::REXP::Integer->new(elements => {foo => 1, bar => 2}) }, qr/Attribute 'elements' must be an array reference/, 'bad elements argument'); my $another_vec = Statistics::R::REXP::Integer->new(elements => [3, 4, 1]); isnt($vec, $another_vec, 'integer vector inequality'); ## TODO: undef == 0! my $truncated_vec = Statistics::R::REXP::Integer->new(elements => [3.3, 4.0, 11]); is($truncated_vec, $vec, 'constructing from floats'); my $na_heavy_vec = Statistics::R::REXP::Integer->new(elements => [11.3, '', undef, '0.0']); my $na_heavy_vec2 = Statistics::R::REXP::Integer->new(elements => [11, 0, undef, 0]); is($na_heavy_vec, $na_heavy_vec, 'NA-heavy vector equality'); isnt($na_heavy_vec, $na_heavy_vec2, 'NA-heavy vector inequality'); is($empty_vec .'', 'integer()', 'empty integer vector text representation'); is($vec .'', 'integer(3, 4, 11)', 'integer vector text representation'); is(Statistics::R::REXP::Integer->new(elements => [undef]) .'', 'integer(undef)', 'text representation of a singleton NA'); is($na_heavy_vec .'', 'integer(11, undef, undef, 0)', 'empty numbers representation'); is_deeply($empty_vec->elements, [], 'empty integer vector contents'); is_deeply($vec->elements, [3, 4, 11], 'integer vector contents'); is($vec->elements->[2], 11, 'single element access'); is_deeply(Statistics::R::REXP::Integer->new([-1, -1.5, -1.6, -1.4])->elements, [-1, -2, -2, -1], 'negative integer vector contents'); is_deeply(Statistics::R::REXP::Integer->new(elements => [3.3, 4.0, '3x', 11])->elements, [3, 4, undef, 11], 'constructor with non-numeric values'); is_deeply(Statistics::R::REXP::Integer->new(elements => [3.3, 4.0, [7, [20.9, 44.1]], 11])->elements, [3, 4, 7, 21, 44, 11], 'constructor from nested arrays'); ok(! $empty_vec->is_null, 'is not null'); ok( $empty_vec->is_vector, 'is vector'); ## attributes is_deeply($vec->attributes, undef, 'default attributes'); my $vec_attr = Statistics::R::REXP::Integer->new(elements => [3, 4, 11], attributes => { foo => 'bar', x => [40, 41, 42] }); is_deeply($vec_attr->attributes, { foo => 'bar', x => [40, 41, 42] }, 'constructed attributes'); my $vec_attr2 = Statistics::R::REXP::Integer->new(elements => [3, 4, 11], attributes => { foo => 'bar', x => [40, 41, 42] }); my $another_vec_attr = Statistics::R::REXP::Integer->new(elements => [3, 4, 11], attributes => { foo => 'bar', x => [40, 42, 42] }); is($vec_attr, $vec_attr2, 'equality considers attributes'); isnt($vec_attr, $vec, 'inequality considers attributes'); isnt($vec_attr, $another_vec_attr, 'inequality considers attributes deeply'); ## attributes must be a hash like(exception { Statistics::R::REXP::Integer->new(attributes => 1) }, qr/Attribute 'attributes' must be a hash reference/, 'setting non-HASH attributes'); ## Perl representation is_deeply($empty_vec->to_pl, [], 'empty vector Perl representation'); is_deeply($vec->to_pl, [3, 4, 11], 'Perl representation'); is_deeply($na_heavy_vec->to_pl, [11, undef, undef, 0], 'NA-heavy Perl representation'); rexp-logical.t100644000765000024 777213140202262 17135 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 30; use Test::Fatal; use Statistics::R::REXP::Logical; use Statistics::R::REXP::List; my $empty_vec = new_ok('Statistics::R::REXP::Logical', [ ], 'new logical vector' ); is($empty_vec, $empty_vec, 'self equality'); my $empty_vec_2 = Statistics::R::REXP::Logical->new(); is($empty_vec, $empty_vec_2, 'empty logical vector equality'); my $vec = Statistics::R::REXP::Logical->new(elements => [1, 0, 1, 0]); my $vec2 = Statistics::R::REXP::Logical->new([3.3, '', 'bla', '0']); is($vec, $vec2, 'logical vector equality'); is(Statistics::R::REXP::Logical->new($vec2), $vec, 'copy constructor'); is(Statistics::R::REXP::Logical->new(Statistics::R::REXP::List->new([3.3, '', ['bla', 0]])), $vec, 'copy constructor from a vector'); ## error checking in constructor arguments like(exception { Statistics::R::REXP::Logical->new(sub {1+1}) }, qr/Attribute 'elements' must be an array reference/, 'error-check in single-arg constructor'); like(exception { Statistics::R::REXP::Logical->new(1, 2, 3) }, qr/odd number of arguments/, 'odd constructor arguments'); like(exception { Statistics::R::REXP::Logical->new(elements => {foo => 1, bar => 2}) }, qr/Attribute 'elements' must be an array reference/, 'bad elements argument'); my $another_vec = Statistics::R::REXP::Logical->new(elements => [1, 0, 1, undef]); isnt($vec, $another_vec, 'logical vector inequality'); is($empty_vec .'', 'logical()', 'empty logical vector text representation'); is($vec .'', 'logical(1, 0, 1, 0)', 'logical vector text representation'); is($another_vec .'', 'logical(1, 0, 1, undef)', 'text representation with logical NAs'); is(Statistics::R::REXP::Logical->new(elements => [undef]) .'', 'logical(undef)', 'text representation of a singleton NA'); is_deeply($empty_vec->elements, [], 'empty logical vector contents'); is_deeply($vec->elements, [1, 0, 1, 0], 'logical vector contents'); is($vec->elements->[2], 1, 'single element access'); is_deeply(Statistics::R::REXP::Logical->new(elements => [3.3, '', undef, 'foo'])->elements, [1, 0, undef, 1], 'constructor with undefined values'); is_deeply(Statistics::R::REXP::Logical->new(elements => [3.3, '', [0, ['00', undef]], 1])->elements, [1, 0, 0, 1, undef, 1], 'constructor from nested arrays'); ok(! $empty_vec->is_null, 'is not null'); ok( $empty_vec->is_vector, 'is vector'); ## attributes is_deeply($vec->attributes, undef, 'default attributes'); my $vec_attr = Statistics::R::REXP::Logical->new(elements => [1, 0, 1, 0], attributes => { foo => 'bar', x => [40, 41, 42] }); is_deeply($vec_attr->attributes, { foo => 'bar', x => [40, 41, 42] }, 'constructed attributes'); my $vec_attr2 = Statistics::R::REXP::Logical->new(elements => [1, 0, 1, 0], attributes => { foo => 'bar', x => [40, 41, 42] }); my $another_vec_attr = Statistics::R::REXP::Logical->new(elements => [1, 0, 1, 0], attributes => { foo => 'bar', x => [40, 42, 42] }); is($vec_attr, $vec_attr2, 'equality considers attributes'); isnt($vec_attr, $vec, 'inequality considers attributes'); isnt($vec_attr, $another_vec_attr, 'inequality considers attributes deeply'); ## attributes must be a hash like(exception { Statistics::R::REXP::Logical->new(attributes => 1) }, qr/Attribute 'attributes' must be a hash reference/, 'setting non-HASH attributes'); ## Perl representation is_deeply($empty_vec->to_pl, [], 'empty vector Perl representation'); is_deeply($vec->to_pl, [1, 0, 1, 0], 'Perl representation'); is_deeply($another_vec->to_pl, [1, 0, 1, undef], 'NA-heavy vector Perl representation'); rexp-unknown.t100644000765000024 533313140202262 17211 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 20; use Test::Fatal; use Statistics::R::REXP::Unknown; my $unk = new_ok('Statistics::R::REXP::Unknown', [sexptype=>42], 'new unknown'); is($unk, $unk, 'self equality'); my $unk_2 = Statistics::R::REXP::Unknown->new(sexptype => 42); is($unk, $unk_2, 'unknown equality'); is(Statistics::R::REXP::Unknown->new($unk_2), $unk, 'copy constructor'); is(Statistics::R::REXP::Unknown->new(42), $unk, 'scalar constructor'); ## error checking in constructor arguments like(exception { Statistics::R::REXP::Unknown->new([1, 2, 3]) }, qr/Attribute 'sexptype' must be a number in range 0-255/, 'error-check in single-arg constructor'); like(exception { Statistics::R::REXP::Unknown->new(1, 2, 3) }, qr/odd number of arguments/, 'odd constructor arguments'); like(exception { Statistics::R::REXP::Unknown->new(sexptype => [1, 2, 3]) }, qr/Attribute 'sexptype' must be a number in range 0-255/, 'bad name argument'); my $unk_foo = Statistics::R::REXP::Unknown->new(sexptype => 100); isnt($unk, $unk_foo, 'unknown inequality'); is($unk->sexptype, 42, 'unknown sexptype'); ok(! $unk->is_null, 'is not null'); ok(! $unk->is_vector, 'is not vector'); is($unk .'', 'Unknown', 'unknown text representation'); ## attributes is_deeply($unk->attributes, undef, 'default attributes'); my $unk_attr = Statistics::R::REXP::Unknown->new(sexptype => 42, attributes => { foo => 'bar', x => [40, 41, 42] }); is_deeply($unk_attr->attributes, { foo => 'bar', x => [40, 41, 42] }, 'constructed attributes'); my $unk_attr2 = Statistics::R::REXP::Unknown->new(sexptype => 42, attributes => { foo => 'bar', x => [40, 41, 42] }); my $another_unk_attr = Statistics::R::REXP::Unknown->new(sexptype => 42, attributes => { foo => 'bar', x => [40, 42, 42] }); is($unk_attr, $unk_attr2, 'equality considers attributes'); isnt($unk_attr, $unk, 'inequality considers attributes'); isnt($unk_attr, $another_unk_attr, 'inequality considers attributes deeply'); ## attributes must be a hash like(exception { Statistics::R::REXP::Unknown->new(sexptype => 42, attributes => 1) }, qr/Attribute 'attributes' must be a hash reference/, 'setting non-HASH attributes'); ## Perl representation is_deeply($unk->to_pl, undef, 'Perl representation'); all.RData100644000765000024 336413140202262 16751 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹ÕklExïÙÞ£PhQ ´Ͼ@#–[¥ ($H4ÒØÌÝ͵÷n¯»Û+ÅDã/‰øÇ#1 Æh@D#¾Òb4ÁCûG RÂ9»3³w3»g‹ÐIö¾Ùo¿ï›o¾çܬimo ¶Ap ô¸=hêu£—àúA¼3 tDPa¼åÑðp™\‚`²p\ž¤”F ‚2†¤‘d@jh^Eh*Mˆ¿»ÄÑÏ%ü0Ê@<Ñ™èVO¥¹€‘L§.ÌðÝM'÷ÐÉÒR«Jjk ƒÔ—ç%;jd“ì† Ø”æ¸Hv]å`;×z²‚e8Htõótq ¬é AcAƒò|‘µ,å 䉗 ”Ùiþ­‡õÚ|g¦œ{’_¸¿%»ýHóÆ8¶ !4²N§,i†o‰ÙS—0R‘9„¶XŸyv=Æü„§‚ÍsŒÖ´žªÖ)£Ý{ ½ÂÄ nqÉÊ£³ŸúìÝáà]ÉÅ_ÐÏ-EÓ,4EF‡jfõ›hôéx%Sè‡×ßÿå/?ņå³OzÏ¿ûhÏ–’4?vþ›ý¯Þ¸cèpj{ÿûý'‡N­ZØÒlâòSMW IYÓÞL"²td°èZo&r{C=ÁLZ®¨¨Gš#­ª”ƒ;…`Û²Šªƒ¸Ò«Ó`xÈÈ0;^1#xóá[Ú8ðÚÜØ¾ºcKF­Žå—u­òhkìí♩ó†¾ÛÖñíñ·Jì „©X?Ù!Zš$nª”¸ð½ÅÇïëÜ&6Ÿ˜Wë ‰‹v×ÜY—HŠMûö|þ{Õi±É{pßô)3ÄÆsž¥OÏ:ý_2«Uؼ+3ò|dgáaÏ‹ÏUfEcG#Ÿdà bãÁáÚeϸilrltË™'|}±‘ö³¡9Êî¡Ãƒç/ì:´yhD\·¿í–èÐÈñgVÖ{[Â/Òá÷ä¶¡\=KM$ϸf«iRWÆn`ÓèfZÇÆž½­ÃªŒÖœ|eÁõE´´D™EgɆ#?oýx×r6ô˜òQ=zTÚ{Tлž¾d¥œBwåÑ™L½*È<Æ7Ô„ŒTØgÈeƒßK «ÀiB“Ä_Ìm”4¾Î«é^p„®'¬ý]ÓÙ.e•4F 7 t^š·‚$ÇíÇEV°ÚÇÏ—áP%—ÍC#·CÜ´<†×äT)K„®k¸9×ÛbÝ]ÀÛbÝ]l‚â­3~q4FEg:*ƒ8”mŽ´ªOQ“P-ò¬‹7ˆD£ýOˆÊU¨e•Œí4Sø>å3ÔÓl‘ÀÈ GïÍä$Uɤ¡™ùõ²*Læ°'‘“fä'à˜#Kè6|ë.V© 9 *%øWçFks ‰¥êZx¨_I·ÀaÁEŒqP\˜2‡Ø¸§ÉbcÍ [->ﯟnî˜?&–>7zC(1°÷ÁS›êöŠ!ôƒfbhgõ†‘e;'¨< Ø5VVLÏoß™ù+éµüAÐÚI]ñ)–,x½.※œ@•/åì iNþŠF›ÀªÒ-þ›tÕÚ(ceª^ÐHËhJE ”·,¦!¡ÀTJJH¨hÖÆ &%{lù‘À„õ·7²µ”¤ë0͹RÚ¤ùæJ¦¢T6½^†9h­äMYv _ZIB¹ÄVÍFhoéþNÜ”¸BQI™Œ8[ ó‘q.Ç¿ˆÀzö{‰˜óiY“V5›ŸAxƒ•טÛ9Žev-©’V8rí«I¬4ËŸ8•”Ç©_M´Ÿ6È–Ç0Á— üå„?Làd³º6Q¾Ø–kÁs˜.ö–cá/p|_`ùãÂo¨žž ž(öüHÂý7é× ®hô"˜ƒª&%Y¡@=³KÊH PÂ'~|8ì‰Fá6˜rt%ÌtéÝ40n­”´PáÕP·‘a\1YY[¢œÕþÑÐ  Ð¡ç83xBÂßí­×z +¹÷ûnñ% žÂuf1ƒ˜ÃåË·Žà)\+²ïð{ Y>¼œDöW¾ýH°%»C ¼ß<T ùì@øê{1_ƒo|É`뛌[™– ß|‡)‡ò ܈²ÇS>žŽ§wÎ¥’ÂrgXŠ_W´éÉäLÈÞž=‰~¹¨ffiåïÎZXÐÎX¸sðöhžÜ9ÚLÜ M¿wA z/J(C“ÿAK/¤oFºŽ¯{'p¹êÄk^Úš•Äç|Í01ùÿv%¯y½'|ýn;<{JÒ¼/îKyBô¡£„ù\nó.\úæýb7env.RData100644000765000024 17013140202262 16741 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹ r‰0âŠàb```b`b&f “… H02°0p‚ÄS AB ðˆÿ±03£©d¬HÌiùùõ¨ê*ÑÕ%%AÍý‡E=SªÂLÿ‘\ ‹ª ¦“¤†l;¦Úau¶ÁZOrexp-language.t100644000765000024 1530613140202262 17316 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 36; use Test::Fatal; use Statistics::R::REXP::Language; use Statistics::R::REXP::Character; use Statistics::R::REXP::Double; use Statistics::R::REXP::Integer; use Statistics::R::REXP::List; use Statistics::R::REXP::Symbol; my $language = Statistics::R::REXP::Language->new(elements => [Statistics::R::REXP::Symbol->new('foo'), 4, 11.2]); my $language2 = Statistics::R::REXP::Language->new([Statistics::R::REXP::Symbol->new('foo'), 4, 11.2]); is($language, $language2, 'language equality'); is(Statistics::R::REXP::Language->new($language2), $language, 'copy constructor'); is(Statistics::R::REXP::Language->new(Statistics::R::REXP::List->new([Statistics::R::REXP::Symbol->new('foo'), 4, 11.2])), $language, 'copy constructor from a vector'); ## error checking in constructor arguments like(exception { Statistics::R::REXP::Language->new() }, qr/The first element must be a Symbol or Language/, 'error-check in no-arg constructor'); like(exception { Statistics::R::REXP::Language->new(elements => []) }, qr/The first element must be a Symbol or Language/, 'error-check in empty vec constructor'); like(exception { Statistics::R::REXP::Language->new(sub {1+1}) }, qr/Attribute 'elements' must be an array reference/, 'error-check in single-arg constructor'); like(exception { Statistics::R::REXP::Language->new(1, 2, 3) }, qr/odd number of arguments/, 'odd constructor arguments'); like(exception { Statistics::R::REXP::Language->new([ {foo => 1, bar => 2} ]) }, qr/The first element must be a Symbol or Language/, 'bad call argument'); like(exception { Statistics::R::REXP::Language->new(elements => {foo => 1, bar => 2}) }, qr/Attribute 'elements' must be an array reference/, 'bad elements argument'); my $another_language = Statistics::R::REXP::Language->new([Statistics::R::REXP::Symbol->new('bla'), 4, 11.2]); isnt($language, $another_language, 'language inequality'); my $na_heavy_language = Statistics::R::REXP::Language->new(elements => [Statistics::R::REXP::Symbol->new('bla'), ['', undef], '0']); my $na_heavy_language2 = Statistics::R::REXP::Language->new(elements => [Statistics::R::REXP::Symbol->new('bla'), [undef, undef], 0]); is($na_heavy_language, $na_heavy_language, 'NA-heavy language equality'); isnt($na_heavy_language, $na_heavy_language2, 'NA-heavy language inequality'); is($language .'', 'language(symbol `foo`, 4, 11.2)', 'language text representation'); is(Statistics::R::REXP::Language->new(elements => [Statistics::R::REXP::Symbol->new('foo'), undef]) .'', 'language(symbol `foo`, undef)', 'text representation of a singleton NA'); is(Statistics::R::REXP::Language->new(elements => [Statistics::R::REXP::Symbol->new('bar'), [[undef]]]) .'', 'language(symbol `bar`, [[undef]])', 'text representation of a nested singleton NA'); is($na_heavy_language .'', 'language(symbol `bla`, [, undef], 0)', 'empty string representation'); is_deeply($language->elements, [Statistics::R::REXP::Symbol->new('foo'), 4, 11.2], 'language contents'); is($language->elements->[2], 11.2, 'single element access'); is_deeply(Statistics::R::REXP::Language->new(elements => [Statistics::R::REXP::Symbol->new('baz'), 4.0, '3x', 11])->elements, [Statistics::R::REXP::Symbol->new('baz'), 4, '3x', 11], 'constructor with non-numeric values'); my $nested_language = Statistics::R::REXP::Language->new(elements => [Statistics::R::REXP::Symbol->new('qux'), 4.0, ['b', ['cc', 44.1]], 11]); is_deeply($nested_language->elements, [Statistics::R::REXP::Symbol->new('qux'), 4, ['b', ['cc', 44.1]], 11], 'nested language contents'); is_deeply($nested_language->elements->[2]->[1], ['cc', 44.1], 'nested element'); is_deeply($nested_language->elements->[3], 11, 'non-nested element'); is($nested_language .'', 'language(symbol `qux`, 4, [b, [cc, 44.1]], 11)', 'nested language text representation'); my $nested_rexps = Statistics::R::REXP::Language->new([ Statistics::R::REXP::Symbol->new('quux'), Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::Language->new([ Statistics::R::REXP::Symbol->new('a'), Statistics::R::REXP::Character->new(['b']), Statistics::R::REXP::Double->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ]); is($nested_rexps .'', 'language(symbol `quux`, integer(1, 2, 3), language(symbol `a`, character(b), double(11)), character(foo))', 'nested language of REXPs text representation'); ok(! $language->is_null, 'is not null'); ok( $language->is_vector, 'is vector'); ## attributes is_deeply($language->attributes, undef, 'default attributes'); my $language_attr = Statistics::R::REXP::Language->new(elements => [Statistics::R::REXP::Symbol->new('fred'), 3.3, '4', 11], attributes => { foo => 'bar', x => [40, 41, 42] }); is_deeply($language_attr->attributes, { foo => 'bar', x => [40, 41, 42] }, 'constructed attributes'); my $language_attr2 = Statistics::R::REXP::Language->new(elements => [Statistics::R::REXP::Symbol->new('fred'), 3.3, '4', 11], attributes => { foo => 'bar', x => [40, 41, 42] }); my $another_language_attr = Statistics::R::REXP::Language->new(elements => [Statistics::R::REXP::Symbol->new('fred'), 3.3, '4', 11], attributes => { foo => 'bar', x => [40, 42, 42] }); is($language_attr, $language_attr2, 'equality considers attributes'); isnt($language_attr, $language, 'inequality considers attributes'); isnt($language_attr, $another_language_attr, 'inequality considers attributes deeply'); ## attributes must be a hash like(exception { Statistics::R::REXP::Language->new(elements => [ Statistics::R::REXP::Symbol->new('foo') ], attributes => 1) }, qr/Attribute 'attributes' must be a hash reference/, 'setting non-HASH attributes'); ## Perl representation is_deeply($language->to_pl, ['foo', 4, 11.2], 'Perl representation'); is_deeply($na_heavy_language->to_pl, ['bla', ['', undef], '0'], 'language with NAs Perl representation'); is_deeply($nested_language->to_pl, ['qux', 4.0, ['b', ['cc', 44.1]], 11], 'nested languages Perl representation'); is_deeply($nested_rexps->to_pl, [ 'quux', [ 1, 2, 3], [ 'a', ['b'], [11] ], ['foo'] ], 'language with nested REXPs Perl representation'); ab-mat-xdr100644000765000024 22313140202262 17112 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  ÿÿÿÿ dim  dimnames a bþþab-mat.qap100644000765000024 13013140202262 17074 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data T P4 dim "ab dimnamesÿÿÿÿcars-noxdr100644000765000024 43013140202262 17236 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB @@@@ @"@@$@@6@0@$@ names speed dist  row.names € class  data.frameþcpx-0i-xdr100644000765000024 4613140202262 17034 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX @cpx-0i.qap100644000765000024 3013140202262 17012 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data &@cpx-1i-xdr100644000765000024 4613140202262 17035 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX ?ðcpx-1i.qap100644000765000024 3013140202262 17013 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data &ð?cpx_na-xdr100644000765000024 12613140202262 17223 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX ?ðð¢ð¢@cpx_na.qap100644000765000024 11013140202262 17201 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data D&@ð?¢ð¢ð@int_na-xdr100644000765000024 4613140202262 17204 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX   €int_na.qap100644000765000024 3013140202262 17162 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data   €iris-noxdr100644000765000024 113513140202262 17277 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB ffffff@š™™™™™@ÍÌÌÌÌÌ@ffffff@@š™™™™™@ @@š™™™™™ @ÍÌÌÌÌÌ@ÍÌÌÌÌÌ @333333@ffffffö?ffffffö?ÍÌÌÌÌÌô?ø?ffffffö?333333û?š™™™™™É?š™™™™™É?š™™™™™É?š™™™™™É?š™™™™™É?š™™™™™Ù?  levels setosa  versicolor  virginica class factorþ names  Sepal.Length  Sepal.Width  Petal.Length  Petal.Width Species  row.names €ÿ  data.frameþlgl_na-xdr100644000765000024 4613140202262 17170 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  €lgl_na.qap100644000765000024 2013140202262 17145 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data $mats.RData100644000765000024 20313140202262 17112 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹ r‰0âŠàb```b`b&f “… H02°0pi¶Ä¤øÜÄ ^ï?0@#XX š.æ”Ì\ Å UU†¢„¨$/17µÈ†ªÓyÆD# Hüƒ`8óòKJˆwÓL'A ‰”2Ymtcars-xdr100644000765000024 173713140202262 17275 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  @5@5@6ÌÌÌÌÌÍ@5ffffff@2³33333@2™™™™š@@@@@ @@d@d@[@p @v€@l @[€@[€@W@@[€@eà@Z@@333333@333333@ÌÌÌÌÌÍ@£× =p¤@ 333333@záG®@õÂ\(ö@@\(õÂ@ ¸Që…¸@ …¸Që…@ ®záG®@0uÂ\(ö@1¸Që…@2œ(õÂ\@3p£× =q@1¸Që…@48Që…¸?ð?ð?ð?ð?ð?ð@@@@@@@@?ð?ð@?ð names  mpg cyl disp hp drat wt qsec vs am gear carb row.names Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive Hornet Sportabout Valiant class data.frameþmtcars.qap100644000765000024 140413140202262 17251 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data ü¼"0mpgcyldisphpdratwtqsecvsamgearcarbnames"LMazda RX4Mazda RX4 WagDatsun 710Hornet 4 DriveHornet SportaboutValiant row.names" data.frameclass!05@5@ÍÌÌÌÌÌ6@ffffff5@33333³2@š™™™™2@!0@@@@ @@!0d@d@[@ p@€v@ l@!0€[@€[@@W@€[@àe@@Z@!0333333@333333@ÍÌÌÌÌÌ@¤p= ×£@333333 @®Gáz@!0ö(\Âõ@@Âõ(\@¸…ëQ¸ @…ëQ¸… @®Gáz® @!0ö(\Âu0@…ëQ¸1@\Âõ(œ2@q= ×£p3@…ëQ¸1@¸…ëQ84@!0ð?ð?ð?!0ð?ð?ð?!0@@@@@@!0@@ð?ð?@ð?null-noxdr100644000765000024 2213140202262 17235 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB þnum_na-xdr100644000765000024 7613140202262 17214 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX @&™™™™™šøÿðð¢num_na.qap100644000765000024 6013140202262 17172 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data ,!(š™™™™™&@øðÿ¢ðs4-xdr.rds100644000765000024 20113140202262 17062 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`fba`bf``d–d``aŠ12°0p‚è Á Ä,`AbfUa%àI:0@€”€  j`MÎI,.(€,XR”˜œ¦’½(–˜ž d"«åÒsÏÉOJÌqÍ+òþ0“Ô£Ïvecs.RData100644000765000024 30013140202262 17104 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹ r‰0âŠàb```b`b&f “… H02°0piμüÄ’’øäŒ" Gˆ™¡Œ‰0FŒ‘Œ¦—=1)¢“‰D¬y‰¹©Åè6:ÂN0†3ø‡ÝÅy¥¹@HÂa²—mÁâë\Øfæ•9¼ [ÿ0‚Ãd9?µ0ñB¤Ñ•2ÿ'*¤0ÜÍž–Ÿq5WÃM…)g*Çíû¢Är Gä)F&°^†3ýEMíio-parserstate.t100644000765000024 275313140202262 17503 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 11; use Test::Fatal; use Statistics::R::IO::ParserState; use Scalar::Util qw( refaddr ); my $state = Statistics::R::IO::ParserState->new(data => 'foobar'); ## basic state sanity is_deeply($state->data, ['f', 'o', 'o', 'b', 'a', 'r'], 'split data'); is($state->at, 'f', 'starting at'); is($state->position, 0, 'starting position'); ok(!$state->eof, 'starting eof'); ## state next my $next_state = $state->next; is_deeply($next_state, Statistics::R::IO::ParserState->new(data => 'foobar', position => 1, singletons => []), # bypass lazy attribute ctor "next"); is($next_state->at, 'o', 'next value'); is($next_state->position, 1, 'next position'); is_deeply($state, Statistics::R::IO::ParserState->new(data => 'foobar', position => 0, # bypass lazy attribute ctor singletons => []), "next doesn't mutate in place"); ## state singletons stash my $singleton = [ 457 ]; my $add_state = $state->add_singleton($singleton); is_deeply($add_state->singletons, [ [ 457 ] ], 'add_singleton'); is_deeply($state->singletons, [], "add_singleton doesn't mutate the state"); is(refaddr($add_state->get_singleton(0)), refaddr $singleton, 'add_singleton preserves reference identity'); io-rserve-eval.t100644000765000024 5020213140202262 17411 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl use 5.010; use strict; use warnings FATAL => 'all'; use IO::Socket::INET (); use Test::More; my $rserve_host = $ENV{RSERVE_HOST} || 'localhost'; my $rserve_port = $ENV{RSERVE_PORT} || 6311; if (IO::Socket::INET->new(PeerAddr => $rserve_host, PeerPort => $rserve_port)) { plan tests => 59; } else { plan skip_all => "Cannot connect to Rserve server at $rserve_host:$rserve_port"; } use Test::Fatal; use Statistics::R::IO::Parser qw(:all); use Statistics::R::IO qw( evalRserve ); use lib 't/lib'; use ShortDoubleVector; use TestCases; ## integer vectors ## serialize 1:3, XDR: true is(evalRserve('1:3', "$rserve_host:$rserve_port"), Statistics::R::REXP::Integer->new([ 1, 2, 3 ]), 'int vector no atts'); ## serialize a=1L, b=2L, c=3L, XDR: true is(evalRserve('c(a=1L, b=2L, c=3L)', "$rserve_host:$rserve_port"), Statistics::R::REXP::Integer->new( elements => [ 1, 2, 3 ], attributes => { names => Statistics::R::REXP::Character->new(['a', 'b', 'c']) }), 'int vector names att'); ## double vectors ## serialize 1234.56, XDR: true is(ShortDoubleVector->new([ 1234.56 ]), evalRserve('1234.56', "$rserve_host:$rserve_port"), 'double vector no atts'); ## serialize foo=1234.56, XDR: true is(ShortDoubleVector->new( elements => [ 1234.56 ], attributes => { names => Statistics::R::REXP::Character->new(['foo']) }), evalRserve('c(foo=1234.56)', "$rserve_host:$rserve_port"), 'double vector names att'); ## character vectors ## serialize letters[1:3], XDR: true is(evalRserve('letters[1:3]', "$rserve_host:$rserve_port"), Statistics::R::REXP::Character->new([ 'a', 'b', 'c' ]), 'character vector no atts'); ## serialize A='a', B='b', C='c', XDR: true is(evalRserve('c(A="a", B="b", C="c")', "$rserve_host:$rserve_port"), Statistics::R::REXP::Character->new( elements => [ 'a', 'b', 'c' ], attributes => { names => Statistics::R::REXP::Character->new(['A', 'B', 'C']) }), 'character vector names att - xdr'); ## raw vectors ## serialize as.raw(c(1:3, 255, 0), XDR: true is(evalRserve('as.raw(c(1,2,3,255, 0))', "$rserve_host:$rserve_port"), Statistics::R::REXP::Raw->new([ 1, 2, 3, 255, 0 ]), 'raw vector'); ## list (i.e., generic vector) ## serialize list(1:3, list('a', 'b', 11), 'foo'), XDR: true is(Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ]), evalRserve("list(1:3, list('a', 'b', 11), 'foo')", "$rserve_host:$rserve_port"), 'generic vector no atts'); ## serialize list(foo=1:3, list('a', 'b', 11), bar='foo'), XDR: true is(evalRserve("list(foo=1:3, list('a', 'b', 11), bar='foo')", "$rserve_host:$rserve_port"), Statistics::R::REXP::List->new( elements => [ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ], attributes => { names => Statistics::R::REXP::Character->new(['foo', '', 'bar']) }), 'generic vector names att - xdr'); ## matrix ## serialize matrix(-1:4, 2, 3), XDR: true is(evalRserve('matrix(-1:4, 2, 3)', "$rserve_host:$rserve_port"), Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), }), 'int matrix no atts'); ## serialize matrix(-1:4, 2, 3, dimnames=list(c('a', 'b'))), XDR: true is(evalRserve("matrix(-1:4, 2, 3, dimnames=list(c('a', 'b')))", "$rserve_host:$rserve_port"), Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a', 'b']), Statistics::R::REXP::Null->new ]), }), 'int matrix rownames'); ## data frames ## serialize head(cars) is(Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 4, 4, 7, 7, 8, 9]), ShortDoubleVector->new([ 2, 10, 4, 22, 16, 10]), ], attributes => { names => Statistics::R::REXP::Character->new(['speed', 'dist']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), evalRserve('head(cars)', "$rserve_host:$rserve_port"), 'the cars data frame'); ## serialize head(mtcars) is(Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 6, 6, 4, 6, 8, 6 ]), ShortDoubleVector->new([ 160, 160, 108, 258, 360, 225 ]), ShortDoubleVector->new([ 110, 110, 93, 110, 175, 105 ]), ShortDoubleVector->new([ 3.90, 3.90, 3.85, 3.08, 3.15, 2.76 ]), ShortDoubleVector->new([ 2.620, 2.875, 2.320, 3.215, 3.440, 3.460 ]), ShortDoubleVector->new([ 16.46, 17.02, 18.61, 19.44, 17.02, 20.22 ]), ShortDoubleVector->new([ 0, 0, 1, 1, 0, 1 ]), ShortDoubleVector->new([ 1, 1, 1, 0, 0, 0 ]), ShortDoubleVector->new([ 4, 4, 4, 3, 3, 3 ]), ShortDoubleVector->new([ 4, 4, 1, 1, 2, 1 ]), ], attributes => { names => Statistics::R::REXP::Character->new([ 'mpg' , 'cyl', 'disp', 'hp', 'drat', 'wt', 'qsec', 'vs', 'am', 'gear', 'carb']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant' ]), }), evalRserve('head(mtcars)', "$rserve_host:$rserve_port"), 'the mtcars data frame'); ## serialize head(iris) is(Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 5.1, 4.9, 4.7, 4.6, 5.0, 5.4 ]), ShortDoubleVector->new([ 3.5, 3.0, 3.2, 3.1, 3.6, 3.9 ]), ShortDoubleVector->new([ 1.4, 1.4, 1.3, 1.5, 1.4, 1.7 ]), ShortDoubleVector->new([ 0.2, 0.2, 0.2, 0.2, 0.2, 0.4 ]), Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 1 ], attributes => { levels => Statistics::R::REXP::Character->new([ 'setosa', 'versicolor', 'virginica']), class => Statistics::R::REXP::Character->new(['factor']) } ), ], attributes => { names => Statistics::R::REXP::Character->new([ 'Sepal.Length', 'Sepal.Width', 'Petal.Length', 'Petal.Width', 'Species']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), evalRserve('head(iris)', "$rserve_host:$rserve_port"), 'the iris data frame'); ## Call lm(mpg ~ wt, data = head(mtcars)) is(evalRserve('lm(mpg ~ wt, data = head(mtcars))$call', "$rserve_host:$rserve_port"), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), 'language lm(mpg~wt, head(mtcars))'); ## serialize lm(mpg ~ wt, data = head(mtcars)) is(Statistics::R::REXP::List->new( elements => [ # coefficients ShortDoubleVector->new( elements => [ 30.3002034730204, -3.27948805566774 ], attributes => { names => Statistics::R::REXP::Character->new(['(Intercept)', 'wt']) }), # residuals ShortDoubleVector->new( elements => [ -0.707944767170941, 0.128324687024322, 0.108208816128727, 1.64335062595135, -0.318764561523408, -0.853174800410051 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # effects ShortDoubleVector->new( elements => [ -50.2145397270552, -3.39713386075597, 0.13375416348722, 1.95527848390874, 0.0651588996571721, -0.462851730054076 ], attributes => { names => Statistics::R::REXP::Character->new([ '(Intercept)', 'wt', '', '', '', '' ]) }), # rank Statistics::R::REXP::Integer->new([2]), # fitted.values ShortDoubleVector->new( elements => [ 21.7079447671709, 20.8716753129757, 22.6917911838713, 19.7566493740486, 19.0187645615234, 18.9531748004101 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # assign Statistics::R::REXP::Integer->new([0, 1]), # qr Statistics::R::REXP::List->new( elements => [ # qr ShortDoubleVector->new( elements => [ -2.44948974278318, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, -7.31989184801706, 1.03587322261623, 0.542107126002057, -0.321898217952644, -0.539106265315558, -0.558413647303373 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 6, 2 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]), Statistics::R::REXP::Character->new([ '(Intercept)', 'wt' ]) ]), assign => Statistics::R::REXP::Integer->new([ 0, 1 ]), }), # qraux ShortDoubleVector->new( [ 1.40824829046386, 1.0063272758402 ]), # pivot Statistics::R::REXP::Integer->new([1, 2]), # tol ShortDoubleVector->new([1E-7]), # rank Statistics::R::REXP::Integer->new([2]), ], attributes => { names => Statistics::R::REXP::Character->new([ "qr", "qraux", "pivot", "tol", "rank" ]), class => Statistics::R::REXP::Character->new(['qr']) }), # df.residual Statistics::R::REXP::Integer->new([4]), # xlevels Statistics::R::REXP::List->new( elements => [], attributes => { names => Statistics::R::REXP::Character->new([]) }), # call Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), # terms Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::Unknown->new(sexptype => 4), predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), # model Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 2.62, 2.875, 2.32, 3.215, 3.44, 3.46 ]), ], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant']), class => Statistics::R::REXP::Character->new(['data.frame']), terms => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::Unknown->new(sexptype => 4), predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), }), ], attributes => { names => Statistics::R::REXP::Character->new([ 'coefficients', 'residuals', 'effects', 'rank', 'fitted.values', 'assign', 'qr', 'df.residual', 'xlevels', 'call', 'terms', 'model', ]), class => Statistics::R::REXP::Character->new(['lm']) }), evalRserve('lm(mpg ~ wt, data = head(mtcars))', "$rserve_host:$rserve_port"), 'lm mpg~wt, head(mtcars)'); while ( my ($name, $value) = each %{TEST_CASES()} ) { my $expected = $value->{value}; SKIP: { skip "not yet supported", 1 if ($value->{skip} || '' =~ 'rserve'); ## NOTE: I'm switching the order of comparisons to ensure ## ShortDoubleVector's 'eq' overload is used is($expected, evalRserve($value->{expr}, "$rserve_host:$rserve_port"), $value->{desc}); } } io-unserialize.t100644000765000024 7154513140202262 17525 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 10; use Test::Fatal; use Statistics::R::IO::Parser qw(:all); use Statistics::R::IO::ParserState; use Statistics::R::IO::REXPFactory qw(:all); use lib 't/lib'; use ShortDoubleVector; subtest 'integer vectors' => sub { plan tests => 9; ## serialize 1:3, XDR: true my $noatt_123_xdr = Statistics::R::IO::ParserState->new( data => "\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x0d\0\0\0\5" . "\xff\xff\xff\xff" . "\0\0\0\0" . "\0\0\0\1" . "\0\0\0\2" . "\0\0\0\3"); is_deeply(Statistics::R::IO::REXPFactory::header->($noatt_123_xdr)->[0], [ "X\n", 2, 0x030002, 0x020300 ], 'XDR header'); is_deeply(bind(Statistics::R::IO::REXPFactory::header, sub { Statistics::R::IO::REXPFactory::unpack_object_info })->($noatt_123_xdr)->[0], { is_object => 0, has_attributes => 0, has_tag => 0, object_type => 13, levels => 0, flags => 13}, 'header plus object info - no atts'); is(unserialize($noatt_123_xdr->data)->[0], Statistics::R::REXP::Integer->new([ -1, 0, 1, 2, 3 ]), 'no atts'); ## serialize 1:3, XDR: false my $noatt_123_bin = Statistics::R::IO::ParserState->new( data => "\x42\x0a\2\0\0\0\2\0\3\0\0\3\2\0\x0d\0\0\0\5\0\0\0" . "\xff\xff\xff\xff" . "\0\0\0\0" . "\1\0\0\0" . "\2\0\0\0" . "\3\0\0\0"); is_deeply(Statistics::R::IO::REXPFactory::header->($noatt_123_bin)->[0], [ "B\n", 2, 0x030002, 0x020300 ], 'binary header'); is_deeply(bind(Statistics::R::IO::REXPFactory::header, sub { Statistics::R::IO::REXPFactory::unpack_object_info })->($noatt_123_bin)->[0], { is_object => 0, has_attributes => 0, has_tag => 0, object_type => 13, levels => 0, flags => 13 }, 'binary header plus object info - no atts'); is(unserialize($noatt_123_bin->data)->[0], Statistics::R::REXP::Integer->new([ -1, 0, 1, 2, 3 ]), 'no atts - binary'); ## serialize a=1L, b=2L, c=3L, XDR: true my $abc_123l_xdr = "\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\2\x0d\0\0\0\3\0\0\0" . "\1\0\0\0\2\0\0\0\3\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\5" . "\x6e\x61\x6d\x65\x73\0\0\0\x10\0\0\0\3\0\4\0\x09\0\0\0\1\x61\0\4\0" . "\x09\0\0\0\1\x62\0\4\0\x09\0\0\0\1\x63\0\0\0\xfe"; is(unserialize($abc_123l_xdr)->[0], Statistics::R::REXP::Integer->new( elements => [ 1, 2, 3 ], attributes => { names => Statistics::R::REXP::Character->new(['a', 'b', 'c']) }), 'names att - xdr'); ## handling of negative integer vector length like(exception { unserialize("\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x0d\xff\xff\xff\xff" . "\0\0\0\0" . "\0\0\0\1") }, qr/TODO: Long vectors are not supported/, 'long length'); like(exception { unserialize("\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x0d\xff\xff\xff\x0") }, qr/Negative length/, 'negative length'); }; subtest 'double vectors' => sub { plan tests => 7; ## serialize 1234.56, XDR: true my $noatt_123456_xdr = Statistics::R::IO::ParserState->new( data => "\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x0e\0\0\0\1\x40\x93\x4a". "\x3d\x70\xa3\xd7\x0a"); is_deeply(bind(Statistics::R::IO::REXPFactory::header, sub { Statistics::R::IO::REXPFactory::unpack_object_info })->($noatt_123456_xdr)->[0], { is_object => 0, has_attributes => 0, has_tag => 0, object_type => 14, levels => 0, flags => 14 }, 'header plus object info - no atts'); is(ShortDoubleVector->new([ 1234.56 ]), unserialize($noatt_123456_xdr->data)->[0], 'no atts'); ## serialize 1234.56, XDR: false my $noatt_123456_bin = Statistics::R::IO::ParserState->new( data => "\x42\x0a\2\0\0\0\2\0\3\0\0\3\2\0\x0e\0\0\0\1\0\0\0\x0a\xd7\xa3". "\x70\x3d\x4a\x93\x40"); is_deeply(bind(Statistics::R::IO::REXPFactory::header, sub { Statistics::R::IO::REXPFactory::unpack_object_info })->($noatt_123456_bin)->[0], { is_object => 0, has_attributes => 0, has_tag => 0, object_type => 14, levels => 0, flags => 14 }, 'binary header plus object info - no atts'); is(ShortDoubleVector->new([ 1234.56 ]), unserialize($noatt_123456_bin->data)->[0], 'no atts - binary'); ## serialize foo=1234.56, XDR: true my $foo_123456_xdr = "\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\2\x0e\0\0\0\1\x40\x93\x4a" . "\x3d\x70\xa3\xd7\x0a\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\5\x6e\x61\x6d\x65" . "\x73\0\0\0\x10\0\0\0\1\0\4\0\x09\0\0\0\3\x66\x6f\x6f\0\0\0\xfe"; is(ShortDoubleVector->new( elements => [ 1234.56 ], attributes => { names => Statistics::R::REXP::Character->new(['foo']) }), unserialize($foo_123456_xdr)->[0], 'names att - xdr'); ## handling of negative double vector length like(exception { unserialize("\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x0e\xff\xff\xff\xff" . "\0\0\0\0" . "\0\0\0\1") }, qr/TODO: Long vectors are not supported/, 'long length'); like(exception { unserialize("\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x0e\xff\xff\xff\x0") }, qr/Negative length/, 'negative length'); }; subtest 'character vectors' => sub { plan tests => 7; ## serialize letters[1:3], XDR: true my $noatt_abc_xdr = Statistics::R::IO::ParserState->new( data => "\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x10\0\0\0\3\0\4\0" . "\x09\0\0\0\1\x61\0\4\0\x09\0\0\0\1\x62\0\4\0\x09\0\0\0\1\x63"); is_deeply(bind(Statistics::R::IO::REXPFactory::header, sub { Statistics::R::IO::REXPFactory::unpack_object_info })->($noatt_abc_xdr)->[0], { is_object => 0, has_attributes => 0, has_tag => 0, object_type => 16, levels => 0, flags => 16 }, 'header plus object info - no atts'); is(unserialize($noatt_abc_xdr->data)->[0], Statistics::R::REXP::Character->new([ 'a', 'b', 'c' ]), 'no atts'); ## serialize A='a', B='b', C='c', XDR: true my $ABC_abc_xdr = "\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\2\x10\0\0\0\3\0\4\0" . "\x09\0\0\0\1\x61\0\4\0\x09\0\0\0\1\x62\0\4\0\x09\0\0\0\1\x63\0" . "\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\5\x6e\x61\x6d\x65\x73\0\0\0\x10\0" . "\0\0\3\0\4\0\x09\0\0\0\1\x41\0\4\0\x09\0\0\0\1\x42\0\4\0\x09" . "\0\0\0\1\x43\0\0\0\xfe"; is(unserialize($ABC_abc_xdr)->[0], Statistics::R::REXP::Character->new( elements => [ 'a', 'b', 'c' ], attributes => { names => Statistics::R::REXP::Character->new(['A', 'B', 'C']) }), 'names att - xdr'); ## handling of negative character vector length like(exception { unserialize("\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x10\xff\xff\xff\xff" . "\0\0\0\0" . "\0\0\0\1") }, qr/TODO: Long vectors are not supported/, 'long length'); like(exception { unserialize("\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x10\xff\xff\xff\x0") }, qr/Negative length/, 'negative length'); ## handling of negative charsxp length # Length "-1" is used as the encoding for a NA string is(unserialize("\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x10\0\0\0\1". "\0\4\0\x09" . "\xff\xff\xff\xff")->[0], Statistics::R::REXP::Character->new( elements => [ undef ]), 'NA_STRING'); # Other negative lengths are illegal like(exception { unserialize("\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x10\0\0\0\1". "\0\4\0\x09" . "\xff\xff\xff\xf0") }, qr/Negative length/, 'negative charsxp length'); }; subtest 'raw vectors' => sub { plan tests => 4; ## serialize as.raw(c(1:3, 255, 0), XDR: true my $noatt_raw_xdr = "\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x18\0\0\0\5" . "\1\2\3\xff\0"; is(unserialize($noatt_raw_xdr)->[0], Statistics::R::REXP::Raw->new([ 1, 2, 3, 255, 0 ]), 'xdr'); my $noatt_raw_bin = "\x42\x0a\2\0\0\0\2\0\3\0\0\3\2\0\x18\0\0\0\5\0\0\0" . "\1\2\3\xff\0"; is(unserialize($noatt_raw_bin)->[0], Statistics::R::REXP::Raw->new([ 1, 2, 3, 255, 0 ]), 'binary'); ## handling of negative raw vector length like(exception { unserialize("\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x18\xff\xff\xff\xff" . "\0\0\0\0" . "\0\0\0\1") }, qr/TODO: Long vectors are not supported/, 'long length'); like(exception { unserialize("\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x18\xff\xff\xff\x0") }, qr/Negative length/, 'negative length'); }; subtest 'generic vector (list)' => sub { plan tests => 5; ## serialize list(1:3, list('a', 'b', 11), 'foo'), XDR: true my $noatt_list_xdr = Statistics::R::IO::ParserState->new( data => "\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x13\0\0\0\3\0\0\0" . "\x0d\0\0\0\3\0\0\0\1\0\0\0\2\0\0\0\3\0\0\0\x13\0\0\0\3" . "\0\0\0\x10\0\0\0\1\0\4\0\x09\0\0\0\1\x61\0\0\0\x10\0\0\0\1" . "\0\4\0\x09\0\0\0\1\x62\0\0\0\x0e\0\0\0\1\x40\x26\0\0\0\0\0\0" . "\0\0\0\x10\0\0\0\1\0\4\0\x09\0\0\0\3\x66\x6f\x6f"); is_deeply(bind(Statistics::R::IO::REXPFactory::header, sub { Statistics::R::IO::REXPFactory::unpack_object_info })->($noatt_list_xdr)->[0], { is_object => 0, has_attributes => 0, has_tag => 0, object_type => 19, levels => 0, flags => 19 }, 'header plus object info - no atts'); is(Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ]), unserialize($noatt_list_xdr->data)->[0], 'no atts'); ## serialize list(foo=1:3, list('a', 'b', 11), bar='foo'), XDR: true my $foobar_list_xdr = "\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\2\x13\0\0\0\3\0\0\0" . "\x0d\0\0\0\3\0\0\0\1\0\0\0\2\0\0\0\3\0\0\0\x13\0\0\0\3" . "\0\0\0\x10\0\0\0\1\0\4\0\x09\0\0\0\1\x61\0\0\0\x10\0\0\0\1" . "\0\4\0\x09\0\0\0\1\x62\0\0\0\x0e\0\0\0\1\x40\x26\0\0\0\0\0\0" . "\0\0\0\x10\0\0\0\1\0\4\0\x09\0\0\0\3\x66\x6f\x6f\0\0\4\2\0\0" . "\0\1\0\4\0\x09\0\0\0\5\x6e\x61\x6d\x65\x73\0\0\0\x10\0\0\0\3\0\4" . "\0\x09\0\0\0\3\x66\x6f\x6f\0\4\0\x09\0\0\0\0\0\4\0\x09\0\0\0\3" . "\x62\x61\x72\0\0\0\xfe"; is(Statistics::R::REXP::List->new( elements => [ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ], attributes => { names => Statistics::R::REXP::Character->new(['foo', '', 'bar']) }), unserialize($foobar_list_xdr)->[0], 'names att - xdr'); ## handling of negative generic vector length like(exception { unserialize("\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x13\xff\xff\xff\xff" . "\0\0\0\0" . "\0\0\0\1") }, qr/TODO: Long vectors are not supported/, 'long length'); like(exception { unserialize("\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\x13\xff\xff\xff\x0") }, qr/Negative length/, 'negative length'); }; subtest 'matrix' => sub { plan tests => 3; ## serialize matrix(-1:4, 2, 3), XDR: true my $noatt_mat_xdr = "\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\2\x0d\0\0\0\6\xff\xff\xff" . "\xff\0\0\0\0\0\0\0\1\0\0\0\2\0\0\0\3\0\0\0\4\0\0\4\2" . "\0\0\0\1\0\4\0\x09\0\0\0\3\x64\x69\x6d\0\0\0\x0d\0\0\0\2\0\0" . "\0\2\0\0\0\3\0\0\0\xfe"; is(unserialize($noatt_mat_xdr)->[0], Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]) }), 'int matrix no atts - xdr'); ## serialize matrix(-1:4, 2, 3), XDR: false my $noatt_mat_noxdr = "\x42\x0a\2\0\0\0\2\0\3\0\0\3\2\0\x0d\2\0\0\6\0\0\0\xff\xff\xff" . "\xff\0\0\0\0\1\0\0\0\2\0\0\0\3\0\0\0\4\0\0\0\2\4\0\0" . "\1\0\0\0\x09\0\4\0\3\0\0\0\x64\x69\x6d\x0d\0\0\0\2\0\0\0\2\0" . "\0\0\3\0\0\0\xfe\0\0\0"; is(unserialize($noatt_mat_noxdr)->[0], Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]) }), 'int matrix no atts - binary'); ## serialize matrix(-1:4, 2, 3, dimnames=list(c('a', 'b'))), XDR: true my $ab_mat_xdr = "\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\2\x0d\0\0\0\6\xff\xff\xff" . "\xff\0\0\0\0\0\0\0\1\0\0\0\2\0\0\0\3\0\0\0\4\0\0\4\2" . "\0\0\0\1\0\4\0\x09\0\0\0\3\x64\x69\x6d\0\0\0\x0d\0\0\0\2\0\0" . "\0\2\0\0\0\3\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\x08\x64\x69\x6d" . "\x6e\x61\x6d\x65\x73\0\0\0\x13\0\0\0\2\0\0\0\x10\0\0\0\2\0\4\0\x09" . "\0\0\0\1\x61\0\4\0\x09\0\0\0\1\x62\0\0\0\xfe\0\0\0\xfe"; is(unserialize($ab_mat_xdr)->[0], Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a', 'b']), Statistics::R::REXP::Null->new ]), }), 'int matrix rownames'); }; subtest 'pairlist' => sub { plan tests => 5; my $names_attribute_pairlist = Statistics::R::IO::ParserState->new( data => "\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\5". "\x6e\x61\x6d\x65\x73\0\0\0\x10\0\0\0\3\0\4\0\x09\0\0\0\1\x61\0\4\0". "\x09\0\0\0\1\x62\0\4\0\x09\0\0\0\1\x63\0\0\0\xfe"); is_deeply(Statistics::R::IO::REXPFactory::unpack_object_info->($names_attribute_pairlist)->[0], { is_object => 0, has_attributes => 0, has_tag => 1<<10, object_type => 2, levels => 0, flags => 1026 }, 'object info - names'); is_deeply(Statistics::R::IO::REXPFactory::object_content->($names_attribute_pairlist)->[0], [ { tag => Statistics::R::REXP::Symbol->new('names'), value => Statistics::R::REXP::Character->new([ 'a', 'b', 'c' ]) } ], 'names attribute'); ## a more complicated pairlist: ## attributes from a matrix(1:6, 2, 3, dimnames=list(c('a', 'b'))), ## i.e., dims = c(2,3) and dimnames = list(c('a', 'b'), NULL) my $matrix_dims_attribute_pairlist = Statistics::R::IO::ParserState->new( data => "\0\0\4\2" . "\0\0\0\1\0\4\0\x09\0\0\0\3\x64\x69\x6d\0\0\0\x0d\0\0\0\2\0\0" . "\0\2\0\0\0\3\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\x08\x64\x69\x6d" . "\x6e\x61\x6d\x65\x73\0\0\0\x13\0\0\0\2\0\0\0\x10\0\0\0\2\0\4\0\x09" . "\0\0\0\1\x61\0\4\0\x09\0\0\0\1\x62\0\0\0\xfe\0\0\0\xfe"); is_deeply(Statistics::R::IO::REXPFactory::unpack_object_info->($matrix_dims_attribute_pairlist)->[0], { is_object => 0, has_attributes => 0, has_tag => 1<<10, object_type => 2, levels => 0, flags => 1026 }, 'object info - matrix dims'); is_deeply(Statistics::R::IO::REXPFactory::object_content->($matrix_dims_attribute_pairlist)->[0], [ { tag => Statistics::R::REXP::Symbol->new('dim'), value => Statistics::R::REXP::Integer->new([ 2, 3 ]) }, { tag => Statistics::R::REXP::Symbol->new('dimnames'), value => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'a', 'b' ]), Statistics::R::REXP::Null->new ]) } ], 'matrix dims attributes'); ## yet more complicated pairlist: ## attributes from the head of the 'cars' data frame, ## i.e., names = ['speed', 'dist'], row.names = 1..6, class = 'data.frame' my $cars_attribute_pairlist = Statistics::R::IO::ParserState->new( data => "\0\0\4\2" . "\0\0\0\1\0\4\0\x09\0\0\0\5" . "\x6e\x61\x6d\x65\x73\0\0\0\x10\0\0\0\2\0\4\0\x09\0\0\0\5\x73\x70\x65\x65" . "\x64\0\4\0\x09\0\0\0\4\x64\x69\x73\x74\0\0\4\2\0\0\0\1\0\4\0\x09" . "\0\0\0\x09\x72\x6f\x77\x2e\x6e\x61\x6d\x65\x73\0\0\0\x0d\0\0\0\2\x80\0\0\0" . "\0\0\0\6\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\5\x63\x6c\x61\x73\x73" . "\0\0\0\x10\0\0\0\1\0\4\0\x09\0\0\0\x0a\x64\x61\x74\x61\x2e\x66\x72\x61\x6d" . "\x65\0\0\0\xfe"); is_deeply(Statistics::R::IO::REXPFactory::object_content->($cars_attribute_pairlist)->[0], [ { tag => Statistics::R::REXP::Symbol->new('names'), value => Statistics::R::REXP::Character->new([ 'speed', 'dist' ]) }, { tag => Statistics::R::REXP::Symbol->new('row.names'), # compact encoding value => Statistics::R::REXP::Integer->new([ undef, 6 ]) }, { tag => Statistics::R::REXP::Symbol->new('class'), value => Statistics::R::REXP::Character->new([ 'data.frame' ]) }, ], 'cars dataframe attributes'); }; subtest 'language object' => sub { plan tests => 2; my $lm_language = Statistics::R::IO::ParserState->new( data => "\0\0\0\6" . "\0\0\0\1\0\4\0\x09\0\0\0\2\x6c\x6d\0\0\4\2\0\0\0" . "\1\0\4\0\x09\0\0\0\7\x66\x6f\x72\x6d\x75\x6c\x61\0\0\0\6\0\0\0\1" . "\0\4\0\x09\0\0\0\1\x7e\0\0\0\2\0\0\0\1\0\4\0\x09\0\0\0" . "\3\x6d\x70\x67\0\0\0\2\0\0\0\1\0\4\0\x09\0\0\0\2\x77\x74\0\0" . "\0\xfe\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\4\x64\x61\x74\x61\0\0" . "\0\6\0\0\0\1\0\4\0\x09\0\0\0\4\x68\x65\x61\x64\0\0\0\2\0\0" . "\0\1\0\4\0\x09\0\0\0\6\x6d\x74\x63\x61\x72\x73\0\0\0\xfe\0\0\0\xfe"); is(Statistics::R::IO::REXPFactory::object_content->($lm_language)->[0], Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new([ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new([ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new(['', 'formula', 'data']) }), 'lm(formula=mpg~wt, head(mtcars))'); ## lm(mpg~wt, head(mtcars)$terms has an interesting structure: ## a language with multiple classes, and plenty of attributes my $lm_terms_language = Statistics::R::IO::ParserState->new( data => ("\0\0\3\6" . "\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\x09\x76\x61\x72\x69\x61\x62\x6c\x65\x73" . "\0\0\0\6\0\0\0\1\0\4\0\x09\0\0\0\4\x6c\x69\x73\x74\0\0\0\2\0" . "\0\0\1\0\4\0\x09\0\0\0\3\x6d\x70\x67\0\0\0\2\0\0\0\1\0\4\0" . "\x09\0\0\0\2\x77\x74\0\0\0\xfe\0\0\4\2\0\0\0\1\0\4\0\x09\0\0" . "\0\7\x66\x61\x63\x74\x6f\x72\x73\0\0\2\x0d\0\0\0\2\0\0\0\0\0\0\0\1" . "\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\3\x64\x69\x6d\0\0\0\x0d\0\0" . "\0\2\0\0\0\2\0\0\0\1\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0" . "\x08\x64\x69\x6d\x6e\x61\x6d\x65\x73\0\0\0\x13\0\0\0\2\0\0\0\x10\0\0\0\2" . "\0\4\0\x09\0\0\0\3\x6d\x70\x67\0\4\0\x09\0\0\0\2\x77\x74\0\0\0\x10" . "\0\0\0\1\0\4\0\x09\0\0\0\2\x77\x74\0\0\0\xfe\0\0\4\2\0\0\0" . "\1\0\4\0\x09\0\0\0\x0b\x74\x65\x72\x6d\x2e\x6c\x61\x62\x65\x6c\x73\0\0\0\x10\0" . "\0\0\1\0\4\0\x09\0\0\0\2\x77\x74\0\0\4\2\0\0\0\1\0\4\0\x09" . "\0\0\0\5\x6f\x72\x64\x65\x72\0\0\0\x0d\0\0\0\1\0\0\0\1\0\0\4\2" . "\0\0\0\1\0\4\0\x09\0\0\0\x09\x69\x6e\x74\x65\x72\x63\x65\x70\x74\0\0\0\x0d" . "\0\0\0\1\0\0\0\1\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\x08\x72" . "\x65\x73\x70\x6f\x6e\x73\x65\0\0\0\x0d\0\0\0\1\0\0\0\1\0\0\4\2\0\0" . "\0\1\0\4\0\x09\0\0\0\5\x63\x6c\x61\x73\x73\0\0\0\x10\0\0\0\2\0\4" . "\0\x09\0\0\0\5\x74\x65\x72\x6d\x73\0\4\0\x09\0\0\0\7\x66\x6f\x72\x6d\x75\x6c" . "\x61\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\x0c\x2e\x45\x6e\x76\x69\x72\x6f\x6e" . "\x6d\x65\x6e\x74\0\0\0\xfd\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\x08\x70" . "\x72\x65\x64\x76\x61\x72\x73\0\0\0\6\0\0\2\xff\0\0\0\2\0\0\3\xff\0\0" . "\0\2\0\0\4\xff\0\0\0\xfe\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0" . "\x0b\x64\x61\x74\x61\x43\x6c\x61\x73\x73\x65\x73\0\0\2\x10\0\0\0\2\0\4\0\x09\0" . "\0\0\7\x6e\x75\x6d\x65\x72\x69\x63\0\4\0\x09\0\0\0\7\x6e\x75\x6d\x65\x72\x69\x63" . "\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\5\x6e\x61\x6d\x65\x73\0\0\0\x10" . "\0\0\0\2\0\4\0\x09\0\0\0\3\x6d\x70\x67\0\4\0\x09\0\0\0\2\x77\x74" . "\0\0\0\xfe\0\0\0\xfe\0\0\0\1\0\4\0\x09\0\0\0\1\x7e\0\0\0\2" . "\0\0\3\xff\0\0\0\2\0\0\4\xff\0\0\0\xfe")); is(Statistics::R::IO::REXPFactory::object_content->($lm_terms_language)->[0], Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::GlobalEnvironment->new, predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), 'terms of lm(formula=mpg~wt, head(mtcars))'); }; subtest 'data frames' => sub { plan tests => 1; my $cars_xdr = "\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\3\x13\0\0\0\2\0\0\0" . "\x0e\0\0\0\6\x40\x10\0\0\0\0\0\0\x40\x10\0\0\0\0\0\0\x40\x1c\0\0" . "\0\0\0\0\x40\x1c\0\0\0\0\0\0\x40\x20\0\0\0\0\0\0\x40\x22\0\0\0" . "\0\0\0\0\0\0\x0e\0\0\0\6\x40\0\0\0\0\0\0\0\x40\x24\0\0\0\0" . "\0\0\x40\x10\0\0\0\0\0\0\x40\x36\0\0\0\0\0\0\x40\x30\0\0\0\0\0" . "\0\x40\x24\0\0\0\0\0\0\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\5" . "\x6e\x61\x6d\x65\x73\0\0\0\x10\0\0\0\2\0\4\0\x09\0\0\0\5\x73\x70\x65\x65" . "\x64\0\4\0\x09\0\0\0\4\x64\x69\x73\x74\0\0\4\2\0\0\0\1\0\4\0\x09" . "\0\0\0\x09\x72\x6f\x77\x2e\x6e\x61\x6d\x65\x73\0\0\0\x0d\0\0\0\2\x80\0\0\0" . "\0\0\0\6\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\5\x63\x6c\x61\x73\x73" . "\0\0\0\x10\0\0\0\1\0\4\0\x09\0\0\0\x0a\x64\x61\x74\x61\x2e\x66\x72\x61\x6d" . "\x65\0\0\0\xfe"; is(Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 4, 4, 7, 7, 8, 9]), ShortDoubleVector->new([ 2, 10, 4, 22, 16, 10]), ], attributes => { names => Statistics::R::REXP::Character->new(['speed', 'dist']), 'row.names' => Statistics::R::REXP::Integer->new([1, 2, 3, 4, 5, 6]), class => Statistics::R::REXP::Character->new(['data.frame']) }), unserialize($cars_xdr)->[0], 'cars'); }; subtest 'Environments' => sub { plan tests => 3; ## .GlobalEnv: my $globalenv_xdr = "\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\xfd"; is(unserialize($globalenv_xdr)->[0], Statistics::R::REXP::GlobalEnvironment->new, 'global'); my $env1 = "\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\4\0\0\0\0\0\0\0" . "\xfd\0\0\0\xfe\0\0\0\x13\0\0\0\3\0\0\4\2\0\0\0\1\0\4\0\x09" . "\0\0\0\1\x78\0\0\0\x10\0\0\0\1\0\4\0\x09\0\0\0\3\x66\x6f\x6f\0" . "\0\0\xfe\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\1\x79\0\0\0\x10\0" . "\0\0\1\0\4\0\x09\0\0\0\3\x62\x61\x72\0\0\0\xfe\0\0\0\xfe\0\0\0" . "\xfe"; is(unserialize($env1)->[0], Statistics::R::REXP::Environment->new( frame => { x => Statistics::R::REXP::Character->new(['foo']), y => Statistics::R::REXP::Character->new(['bar']), }, enclosure => Statistics::R::REXP::GlobalEnvironment->new), 'simple'); my $env2 = "\x58\x0a\0\0\0\2\0\3\0\2\0\2\3\0\0\0\0\4\0\0\0\0\0\0\0" . "\4\0\0\0\0\0\0\0\xfd\0\0\0\xfe\0\0\0\x13\0\0\0\3\0\0\4\2" . "\0\0\0\1\0\4\0\x09\0\0\0\1\x78\0\0\0\x10\0\0\0\1\0\4\0\x09" . "\0\0\0\3\x66\x6f\x6f\0\0\0\xfe\0\0\4\2\0\0\0\1\0\4\0\x09\0\0" . "\0\1\x79\0\0\0\x10\0\0\0\1\0\4\0\x09\0\0\0\3\x62\x61\x72\0\0\0" . "\xfe\0\0\0\xfe\0\0\0\xfe\0\0\0\xfe\0\0\0\x13\0\0\0\x1d\0\0\0\xfe" . "\0\0\0\xfe\0\0\0\xfe\0\0\0\xfe\0\0\4\2\0\0\3\xff\0\0\0\x0d\0" . "\0\0\1\0\0\0\7\0\0\0\xfe\0\0\0\xfe\0\0\0\xfe\0\0\0\xfe\0\0" . "\0\xfe\0\0\0\xfe\0\0\0\xfe\0\0\0\xfe\0\0\0\xfe\0\0\0\xfe\0\0\0" . "\xfe\0\0\0\xfe\0\0\0\xfe\0\0\0\xfe\0\0\0\xfe\0\0\0\xfe\0\0\0\xfe" . "\0\0\0\xfe\0\0\0\xfe\0\0\0\xfe\0\0\0\xfe\0\0\0\xfe\0\0\0\xfe\0" . "\0\0\xfe\0\0\0\xfe\0\0\0\xfe"; is(unserialize($env2)->[0], Statistics::R::REXP::Environment->new( frame => { x => Statistics::R::REXP::Integer->new([7]), }, enclosure => Statistics::R::REXP::Environment->new( frame => { x => Statistics::R::REXP::Character->new(['foo']), y => Statistics::R::REXP::Character->new(['bar']), }, enclosure => Statistics::R::REXP::GlobalEnvironment->new), ), 'nested'); }; rexp-character.t100644000765000024 1066213140202262 17467 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 32; use Test::Fatal; use Statistics::R::REXP::Character; use Statistics::R::REXP::List; my $empty_vec = new_ok('Statistics::R::REXP::Character', [ ], 'new character vector' ); is($empty_vec, $empty_vec, 'self equality'); my $empty_vec_2 = Statistics::R::REXP::Character->new(); is($empty_vec, $empty_vec_2, 'empty character vector equality'); my $vec = Statistics::R::REXP::Character->new(elements => [3.3, '4.7', 'bar']); my $vec2 = Statistics::R::REXP::Character->new([3.3, 4.7, 'bar']); is($vec, $vec2, 'character vector equality'); is(Statistics::R::REXP::Character->new($vec2), $vec, 'copy constructor'); is(Statistics::R::REXP::Character->new(Statistics::R::REXP::List->new([3.3, [4.7, 'bar']])), $vec, 'copy constructor from a vector'); ## error checking in constructor arguments like(exception { Statistics::R::REXP::Character->new(sub {1+1}) }, qr/Attribute 'elements' must be an array reference/, 'error-check in single-arg constructor'); like(exception { Statistics::R::REXP::Character->new(1, 2, 3) }, qr/odd number of arguments/, 'odd constructor arguments'); like(exception { Statistics::R::REXP::Character->new(elements => {foo => 1, bar => 2}) }, qr/Attribute 'elements' must be an array reference/, 'bad elements argument'); my $another_vec = Statistics::R::REXP::Character->new(elements => [3.3, '4.7', 'bar', undef]); isnt($vec, $another_vec, 'character vector inequality'); my $na_heavy_vec = Statistics::R::REXP::Character->new(elements => ['foo', '', undef, 23]); my $na_heavy_vec2 = Statistics::R::REXP::Character->new(elements => ['foo', 0, undef, 23]); is($na_heavy_vec, $na_heavy_vec, 'NA-heavy vector equality'); isnt($na_heavy_vec, $na_heavy_vec2, 'NA-heavy vector inequality'); is($empty_vec .'', 'character()', 'empty character vector text representation'); is($vec .'', 'character(3.3, 4.7, bar)', 'character vector text representation'); is(Statistics::R::REXP::Character->new(elements => [undef]) .'', 'character(undef)', 'text representation of a singleton NA'); is($na_heavy_vec .'', 'character(foo, , undef, 23)', 'empty characters representation'); is_deeply($empty_vec->elements, [], 'empty character vector contents'); is_deeply($vec->elements, [3.3, 4.7, 'bar'], 'character vector contents'); is($vec->elements->[1], 4.7, 'single element access'); is_deeply(Statistics::R::REXP::Character->new(elements => [3.3, 4.0, '3x', 11])->elements, [3.3, 4, '3x', 11], 'constructor with non-numeric values'); is_deeply(Statistics::R::REXP::Character->new(elements => [3.3, 4.0, [7, ['a', 'foo']], 11])->elements, [3.3, 4, 7, 'a', 'foo', 11], 'constructor from nested arrays'); ok(! $empty_vec->is_null, 'is not null'); ok( $empty_vec->is_vector, 'is vector'); ## attributes is_deeply($vec->attributes, undef, 'default attributes'); my $vec_attr = Statistics::R::REXP::Character->new(elements => [3.3, 4.7, 'bar'], attributes => { foo => 'bar', x => [40, 41, 42] }); is_deeply($vec_attr->attributes, { foo => 'bar', x => [40, 41, 42] }, 'constructed attributes'); my $vec_attr2 = Statistics::R::REXP::Character->new(elements => [3.3, 4.7, 'bar'], attributes => { foo => 'bar', x => [40, 41, 42] }); my $another_vec_attr = Statistics::R::REXP::Character->new(elements => [3.3, 4.7, 'bar'], attributes => { foo => 'bar', x => [40, 42, 42] }); is($vec_attr, $vec_attr2, 'equality considers attributes'); isnt($vec_attr, $vec, 'inequality considers attributes'); isnt($vec_attr, $another_vec_attr, 'inequality considers attributes deeply'); ## attributes must be a hash like(exception { Statistics::R::REXP::Character->new(attributes => 1) }, qr/Attribute 'attributes' must be a hash reference/, 'setting non-HASH attributes'); ## Perl representation is_deeply($empty_vec->to_pl, [], 'empty vector Perl representation'); is_deeply($vec->to_pl, [3.3, 4.7, 'bar'], 'Perl representation'); is_deeply($na_heavy_vec->to_pl, ['foo', '', undef, 23], 'NA-heavy vector Perl representation'); ABC-abc-xdr100644000765000024 15513140202262 17065 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  a b c names A B CþABC-abc.qap100644000765000024 5413140202262 17030 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data (¢$"ABCnamesabcbaseenv-xdr100644000765000024 2213140202262 17351 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX ñbaseenv.qap100644000765000024 1413140202262 17337 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data 0char_na-xdr100644000765000024 7313140202262 17327 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  foo ÿÿÿÿ 23char_na.qap100644000765000024 2413140202262 17310 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data " fooÿ23foo-cpx-xdr100644000765000024 12213140202262 17322 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX @@ names fooþfoo-cpx.qap100644000765000024 6013140202262 17270 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data ,¦("foonames@@list_na-xdr100644000765000024 25313140202262 17405 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX ?ð  b d e f g €@F ÌÌÌÌÍð¢list_na.qap100644000765000024 13413140202262 17370 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data XT!ð? <"b,"defg$ÿÿÿ!ÍÌÌÌÌ F@¢ðlists.RData100644000765000024 21213140202262 17304 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹ r‰0âŠàb```b`b&f “… H02°0piî´üü¤Ä¢øœÌâ *a H /”fk…°arHÚÑ’€ˆá ÆÈ ˜¢¹5/17µªŽY„É:HýCÓΕ—ŸXRõ½|Àðþä+]lm_xz.RData100644000765000024 202413140202262 17322 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!ÏXÌà 7Ö])TW"änRÊŸ’Ù¢Ä)'dzø$&}ï[Ä Ìù/á…!Ô ìpí玥«#…x`ðþ6v[w„bu¿M˜¿,ÈfÞ–¤már(¶wT ] ˜èA‘¼Ð4vjÁ”rz·ûÃÅöC"nb?\_kJ3cëoÏ«@x3H›t°u®¸´Œç‹™Ü¸ÐŸòºƒd‹·£Vu«ïúX €ÂÚ2G\Èæ)þ[!ëüx)®iã¸ïofÏN™É05kÏ’®ùç_(Hòö»µP–•›{`´—ÀÈK[=“ì>“Óïõø©›ö.÷?.#Ñ"ÉØ£%J²å÷F Åÿß·Z`½0–8Ï<9""8û+Débªìáép&R*$ÐívÏw¤Žtæ6qæˆVŸ\ˆðB YŸ»·{$œ÷z ‘kžâ¦Ï÷²ÛºÚ¾ÔŒj $ÝÁQ‘(뉵¾}«°<¾P×ÓdNgœƒj³eÐl;AFi¨›ÍkÅAšËA¯S­ZI:ŽOÞéH˜tmûm¡7oã(²š±tNþ­.ÖŽ f‰â/_+Ø<1:¬¶¬ZµÂìû›„¦Ò0ñesÓ2%wü§V !¢{Vc¦Ä©‹Ñ_0Å'‚RJg#êšríðfXG­Í9©ŠFh€C]csêïTÙ?«>Cï¦ïââ … f¸–±ƒ’ø-:<2ÆÅLM(1r8¼?è’4#ß§‹¶²aòb!Ê#æÈ—>0 ‹YZtest-r-eval100755000765000024 1002713140202262 17367 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data#!/usr/bin/Rscript test_eval <- function(expr_name, expr_text) { expr <- parse(text = expr_text, keep.source = TRUE) value <- eval(expr, envir=globalenv()) save_serialize(expr_name, value) save_serialize_noxdr(expr_name, value) save_rds(expr_name, value) save_xz_rds(expr_name, value) save_bzip_rds(expr_name, value) } save_serialize <- function(name, value) { f <- file(paste0(name, '-xdr'), open='wb') serialize(value, f) close(f) } save_serialize_noxdr <- function(name, value) { f <- file(paste0(name, '-noxdr'), open='wb') serialize(value, f, xdr=FALSE) close(f) } save_rds <- function(name, value) { saveRDS(value, paste0(name, '-xdr.rds')) } save_xz_rds <- function(name, value) { saveRDS(value, paste0(name, '-xdr_xz.rds'), compress = 'xz') } save_bzip_rds <- function(name, value) { saveRDS(value, paste0(name, '-xdr_bzip.rds'), compress = 'bzip2') } tests <- list( `empty_char` = 'character()', `empty_int` = 'integer()', `empty_num` = 'numeric()', `empty_cpx` = 'complex()', `empty_lgl` = 'logical()', `empty_list` = 'list()', `empty_raw` = 'raw()', `empty_sym` = 'bquote()', `empty_expr` = 'expression()', `empty_clos` = '{function() {}}', `null` = 'NULL', `char_na` = 'c("foo", "", NA, 23)', `num_na` = 'c(11.3, NaN, -Inf, NA, 0)', `int_na` = 'c(11L, 0L, NA, 0L)', `cpx_na` = 'c(1, NA_complex_, 3i, 0)', `lgl_na` = 'c(TRUE, FALSE, TRUE, NA)', `list_na` = 'list(1, 1L, list("b", list(letters[4:7], NA, c(44.1, NA)), list()))', `list_null` = 'list(NULL)', `pairlist_untagged` = 'as.pairlist(list(1L, 2L, 3L))', `pairlist_tagged` = 'as.pairlist(list(foo=1L, 2L, c=3L))', `noatt-123l`='1:3', `abc-123l`='c(a=1L, b=2L, c=3L)', `noatt-123456`='1234.56', `foo-123456`='c(foo=1234.56)', `f-123456`='c(f=1234.56)', `noatt-cpx`='3+2i', `foo-cpx`='c(foo=3+2i)', `cpx-1i`='1i', `cpx-0i`='5+0i', `cpx-vector`='complex(real=1:3, imaginary=4:6)', `noatt-abc`='letters[1:3]', `ABC-abc`='c(A="a", B="b", C="c")', `noatt-raw`='as.raw(c(1,2,3,255, 0))', `noatt-list`="list(1:3, list('a', 'b', 11), 'foo')", `noatt-true`='TRUE', `noatt-tfftf`='c(T, F, F, T, F)', `ABCDE-tfftf`='c(A=T, B=F, C=F, D=T, E=F)', `foobar-list`="list(foo=1:3, list('a', 'b', 11), bar='foo')", `noatt-mat`='matrix(-1:4, 2, 3)', `ab-mat`="matrix(-1:4, 2, 3, dimnames=list(c('a', 'b')))", `cars`='head(cars)', `mtcars`='head(mtcars)', `iris`='head(iris)', `lang-lm-mpgwt`='lm(mpg ~ wt, data = head(mtcars))$call', `mtcars-lm-mpgwt`='lm(mpg ~ wt, data = head(mtcars))', `expr_null` = 'expression(NULL)', `expr_int` = 'expression(42L)', `expr_call` = 'expression(1+2)', `expression_many` = 'expression(u, v, 1+0:9)', `clos_null` = '{function() NULL}', `clos_int` = '{function() 1L}', `clos_add` = '{function() 1+2}', `clos_args` = '{function(a, b) {a - b}}', `clos_defaults` = '{function(a=3, b) {a + b * pi}}', `clos_dots` = '{function(x=3, y, ...) {x * log(y) }}', `baseenv` = 'baseenv()', `emptyenv` = 'emptyenv()', `globalenv` = 'globalenv()', `env_attr` = 'local({ e <- new.env(parent=globalenv()); attributes(e) <- list(foo = "bar", fred = 1:3); e })', `df_auto_rownames` = 'data.frame(a=1:3, b=c("x", "y", "z"), stringsAsFactors=FALSE)', `df_expl_rownames` = 'data.frame(a=1:3, b=c("x", "y", "z"), stringsAsFactors=FALSE)[1:3,]', `s4` = 'local({ library(methods) track <- setClass("track", slots = c(x="numeric", y="numeric")) t1 <- track(x = 1:4, y = 2:4 + 0) t1 })', `s4_subclass` = 'local({ library(methods) track <- setClass("track", slots = c(x="numeric", y="numeric")) t1 <- track(x = 1:4, y = 2:4 + 0) trackCurve <- setClass("trackCurve", slots = c(smooth = "numeric"), contains = "track") t1s <- trackCurve(t1, smooth = 1:3) t1s })') for (i in seq_along(tests)) { test_eval(names(tests)[i], tests[[i]]) } lib000755000765000024 013140202262 14753 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/tTestCases.pm100644000765000024 11643313140202262 17417 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/libpackage TestCases; use 5.010; use strict; use warnings FATAL => 'all'; use Exporter 'import'; our @EXPORT = qw( TEST_CASES ); use ShortDoubleVector; use ClosureLenientEnv; use RexpOrUnknown; use LenientSrcFile; use Statistics::R::IO::Parser qw( :all ); use Statistics::R::IO::ParserState; use Statistics::R::REXP::Character; use Statistics::R::REXP::Complex; use Statistics::R::REXP::Double; use Statistics::R::REXP::Integer; use Statistics::R::REXP::List; use Statistics::R::REXP::Logical; use Statistics::R::REXP::Raw; use Statistics::R::REXP::Language; use Statistics::R::REXP::Expression; use Statistics::R::REXP::Closure; use Statistics::R::REXP::Symbol; use Statistics::R::REXP::Null; use Statistics::R::REXP::GlobalEnvironment; use Statistics::R::REXP::EmptyEnvironment; use Statistics::R::REXP::BaseEnvironment; use Statistics::R::REXP::Unknown; use Statistics::R::REXP::S4; use Math::Complex qw(cplx); use constant nan => unpack 'd>', pack 'H*', '7ff8000000000000'; die 'Cannot create a known NaN value' unless (1+nan eq nan) && (nan != nan); use constant ninf => unpack 'd>', pack 'H*', 'fff0000000000000'; die 'Cannot create a known -Inf value' unless (1+ninf eq ninf) && (ninf == ninf) && (ninf < 0); use constant TEST_SRC_FILE => { empty_clos => LenientSrcFile->new( frame => { Enc => Statistics::R::REXP::Character->new(['unknown']), filename => Statistics::R::REXP::Character->new(['']), fixedNewlines => Statistics::R::REXP::Logical->new([1]), isFile => Statistics::R::REXP::Logical->new([0]), lines => Statistics::R::REXP::Character->new(['{function() {}}']), parseData => Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 123, 1, 13, 1, 2, 1, 9, 1, 264, 2, 10, 1, 10, 1, 10, 1, 40, 3, 10, 1, 11, 1, 11, 1, 41, 4, 10, 1, 13, 1, 13, 1, 123, 5, 7, 1, 14, 1, 14, 1, 125, 6, 7, 1, 13, 1, 14, 0, 77, 7, 10, 1, 15, 1, 15, 1, 125, 8, 13, 1, 2, 1, 14, 0, 77, 10, 13, 1, 1, 1, 15, 0, 77, 13, 0], attributes => { class => Statistics::R::REXP::Character->new(['parseData']), dim => Statistics::R::REXP::Integer->new([8, 10]), text => Statistics::R::REXP::Character->new([ '{', 'function', '(', ')', '{', '}', '', '}', '', '']), tokens => Statistics::R::REXP::Character->new([ "'{'", 'FUNCTION', "'('", "')'", "'{'", "'}'", 'expr', "'}'", 'expr', 'expr']), }), timestamp => Statistics::R::REXP::Double->new( elements => [12345], attributes => { class => Statistics::R::REXP::Character->new(['POSIXct', 'POSIXt']), }), wd => Statistics::R::REXP::Character->new(['abcd']) }, attributes => { class => Statistics::R::REXP::Character->new(['srcfilecopy', 'srcfile']) }, enclosure => Statistics::R::REXP::EmptyEnvironment->new), clos_args => LenientSrcFile->new( frame => { Enc => Statistics::R::REXP::Character->new(['unknown']), filename => Statistics::R::REXP::Character->new(['']), fixedNewlines => Statistics::R::REXP::Logical->new([1]), isFile => Statistics::R::REXP::Logical->new([0]), lines => Statistics::R::REXP::Character->new(['{function(a, b) {a - b}}']), parseData => Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 123, 1, 26, 1, 2, 1, 9, 1, 264, 2, 23, 1, 10, 1, 10, 1, 40, 3, 23, 1, 11, 1, 11, 1, 292, 4, 23, 1, 12, 1, 12, 1, 44, 5, 23, 1, 14, 1, 14, 1, 292, 7, 23, 1, 15, 1, 15, 1, 41, 8, 23, 1, 17, 1, 17, 1, 123, 10, 20, 1, 18, 1, 18, 1, 263, 11, 13, 1, 20, 1, 20, 1, 45, 12, 17, 1, 18, 1, 18, 0, 77, 13, 17, 1, 22, 1, 22, 1, 263, 14, 16, 1, 23, 1, 23, 1, 125, 15, 20, 1, 22, 1, 22, 0, 77, 16, 17, 1, 18, 1, 22, 0, 77, 17, 20, 1, 17, 1, 23, 0, 77, 20, 23, 1, 24, 1, 24, 1, 125, 21, 26, 1, 2, 1, 23, 0, 77, 23, 26, 1, 1, 1, 24, 0, 77, 26, 0], attributes => { class => Statistics::R::REXP::Character->new(['parseData']), dim => Statistics::R::REXP::Integer->new([8, 19]), text => Statistics::R::REXP::Character->new([ '{', 'function', '(', 'a', ',', 'b', ')', '{', 'a', '-', '', 'b', '}', '', '', '', '}', '', '']), tokens => Statistics::R::REXP::Character->new([ "'{'", 'FUNCTION', "'('", 'SYMBOL_FORMALS', "','", 'SYMBOL_FORMALS', "')'", "'{'", 'SYMBOL', "'-'", 'expr', 'SYMBOL', "'}'", 'expr', 'expr', 'expr', "'}'", 'expr', 'expr']), }), timestamp => Statistics::R::REXP::Double->new( elements => [12345], attributes => { class => Statistics::R::REXP::Character->new(['POSIXct', 'POSIXt']), }), wd => Statistics::R::REXP::Character->new(['abcd']) }, attributes => { class => Statistics::R::REXP::Character->new(['srcfilecopy', 'srcfile']) }, enclosure => Statistics::R::REXP::EmptyEnvironment->new), clos_defaults => LenientSrcFile->new( frame => { Enc => Statistics::R::REXP::Character->new(['unknown']), filename => Statistics::R::REXP::Character->new(['']), fixedNewlines => Statistics::R::REXP::Logical->new([1]), isFile => Statistics::R::REXP::Logical->new([0]), lines => Statistics::R::REXP::Character->new(['{function(a=3, b) {a + b * pi}}']), parseData => Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 123, 1, 33, 1, 2, 1, 9, 1, 264, 2, 30, 1, 10, 1, 10, 1, 40, 3, 30, 1, 11, 1, 11, 1, 292, 4, 30, 1, 12, 1, 12, 1, 293, 5, 30, 1, 13, 1, 13, 1, 261, 6, 7, 1, 13, 1, 13, 0, 77, 7, 30, 1, 14, 1, 14, 1, 44, 8, 30, 1, 16, 1, 16, 1, 292, 10, 30, 1, 17, 1, 17, 1, 41, 11, 30, 1, 19, 1, 19, 1, 123, 13, 27, 1, 20, 1, 20, 1, 263, 14, 16, 1, 22, 1, 22, 1, 43, 15, 24, 1, 20, 1, 20, 0, 77, 16, 24, 1, 24, 1, 24, 1, 263, 17, 19, 1, 26, 1, 26, 1, 42, 18, 23, 1, 24, 1, 24, 0, 77, 19, 23, 1, 28, 1, 29, 1, 263, 20, 22, 1, 30, 1, 30, 1, 125, 21, 27, 1, 28, 1, 29, 0, 77, 22, 23, 1, 24, 1, 29, 0, 77, 23, 24, 1, 20, 1, 29, 0, 77, 24, 27, 1, 19, 1, 30, 0, 77, 27, 30, 1, 31, 1, 31, 1, 125, 28, 33, 1, 2, 1, 30, 0, 77, 30, 33, 1, 1, 1, 31, 0, 77, 33, 0], attributes => { class => Statistics::R::REXP::Character->new(['parseData']), dim => Statistics::R::REXP::Integer->new([8, 26]), text => Statistics::R::REXP::Character->new([ '{', 'function', '(', 'a', '=', '3', '', ',', 'b', ')', '{', 'a', '+', '', 'b', '*', '', 'pi', '}', '', '', '', '', '}', '', '']), tokens => Statistics::R::REXP::Character->new([ "'{'", 'FUNCTION', "'('", 'SYMBOL_FORMALS', 'EQ_FORMALS', 'NUM_CONST', 'expr', "','", 'SYMBOL_FORMALS', "')'", "'{'", 'SYMBOL', "'+'", 'expr', 'SYMBOL', "'*'", 'expr', 'SYMBOL', "'}'", 'expr', 'expr', 'expr', 'expr', "'}'", 'expr', 'expr']), }), timestamp => Statistics::R::REXP::Double->new( elements => [12345], attributes => { class => Statistics::R::REXP::Character->new(['POSIXct', 'POSIXt']), }), wd => Statistics::R::REXP::Character->new(['abcd']) }, attributes => { class => Statistics::R::REXP::Character->new(['srcfilecopy', 'srcfile']) }, enclosure => Statistics::R::REXP::EmptyEnvironment->new), clos_dots => LenientSrcFile->new( frame => { Enc => Statistics::R::REXP::Character->new(['unknown']), filename => Statistics::R::REXP::Character->new(['']), fixedNewlines => Statistics::R::REXP::Logical->new([1]), isFile => Statistics::R::REXP::Logical->new([0]), lines => Statistics::R::REXP::Character->new(['{function(x=3, y, ...) {x * log(y) }}']), parseData => Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 123, 1, 39, 1, 2, 1, 9, 1, 264, 2, 36, 1, 10, 1, 10, 1, 40, 3, 36, 1, 11, 1, 11, 1, 292, 4, 36, 1, 12, 1, 12, 1, 293, 5, 36, 1, 13, 1, 13, 1, 261, 6, 7, 1, 13, 1, 13, 0, 77, 7, 36, 1, 14, 1, 14, 1, 44, 8, 36, 1, 16, 1, 16, 1, 292, 10, 36, 1, 17, 1, 17, 1, 44, 11, 36, 1, 19, 1, 21, 1, 292, 13, 36, 1, 22, 1, 22, 1, 41, 14, 36, 1, 24, 1, 24, 1, 123, 16, 33, 1, 25, 1, 25, 1, 263, 17, 19, 1, 27, 1, 27, 1, 42, 18, 30, 1, 25, 1, 25, 0, 77, 19, 30, 1, 29, 1, 31, 1, 296, 20, 22, 1, 32, 1, 32, 1, 40, 21, 28, 1, 29, 1, 31, 0, 77, 22, 28, 1, 33, 1, 33, 1, 263, 23, 25, 1, 34, 1, 34, 1, 41, 24, 28, 1, 33, 1, 33, 0, 77, 25, 28, 1, 29, 1, 34, 0, 77, 28, 30, 1, 36, 1, 36, 1, 125, 29, 33, 1, 25, 1, 34, 0, 77, 30, 33, 1, 24, 1, 36, 0, 77, 33, 36, 1, 37, 1, 37, 1, 125, 34, 39, 1, 2, 1, 36, 0, 77, 36, 39, 1, 1, 1, 37, 0, 77, 39, 0], attributes => { class => Statistics::R::REXP::Character->new(['parseData']), dim => Statistics::R::REXP::Integer->new([8, 29]), text => Statistics::R::REXP::Character->new([ '{', 'function', '(', 'x', '=', '3', '', ',', 'y', ',', '...', ')', '{', 'x', '*', '', 'log', '(', '', 'y', ')', '', '', '}', '', '', '}', '', '']), tokens => Statistics::R::REXP::Character->new([ "'{'", 'FUNCTION', "'('", 'SYMBOL_FORMALS', 'EQ_FORMALS', 'NUM_CONST', 'expr', "','", 'SYMBOL_FORMALS', "','", 'SYMBOL_FORMALS', "')'", "'{'", 'SYMBOL', "'*'", 'expr', 'SYMBOL_FUNCTION_CALL', "'('", 'expr', 'SYMBOL', "')'", 'expr', 'expr', "'}'", 'expr', 'expr', "'}'", 'expr', 'expr']), }), timestamp => Statistics::R::REXP::Double->new( elements => [12345], attributes => { class => Statistics::R::REXP::Character->new(['POSIXct', 'POSIXt']), }), wd => Statistics::R::REXP::Character->new(['abcd']) }, attributes => { class => Statistics::R::REXP::Character->new(['srcfilecopy', 'srcfile']) }, enclosure => Statistics::R::REXP::EmptyEnvironment->new), }; use constant TEST_CASES => { 'empty_char' => { desc => 'empty char vector', expr => 'character()', value => Statistics::R::REXP::Character->new()}, 'empty_int' => { desc => 'empty int vector', expr => 'integer()', value => Statistics::R::REXP::Integer->new()}, 'empty_num' => { desc => 'empty double vector', expr => 'numeric()', value => ShortDoubleVector->new()}, 'empty_lgl' => { desc => 'empty logical vector', expr => 'logical()', value => Statistics::R::REXP::Logical->new()}, 'empty_list' => { desc => 'empty list', expr => 'list()', value => Statistics::R::REXP::List->new()}, 'empty_raw' => { desc => 'empty raw vector', expr => 'raw()', value => Statistics::R::REXP::Raw->new()}, 'empty_sym' => { desc => 'empty symbol', expr => 'bquote()', value => Statistics::R::REXP::Symbol->new()}, 'empty_expr' => { desc => 'empty expr', expr => 'expression()', value => Statistics::R::REXP::Expression->new()}, 'null' => { desc => 'null', expr => 'NULL', value => Statistics::R::REXP::Null->new()}, 'char_na' => { desc => 'char vector with NAs', expr => 'c("foo", "", NA, 23)', value => Statistics::R::REXP::Character->new([ 'foo', '', undef, '23' ]) }, 'num_na' => { desc => 'double vector with NAs', expr => 'c(11.3, NaN, -Inf, NA, 0)', value => ShortDoubleVector->new([ 11.3, nan, ninf, undef, 0 ]) }, 'int_na' => { desc => 'int vector with NAs', expr => 'c(11L, 0L, NA, 0L)', value => Statistics::R::REXP::Integer->new([ 11, 0, undef, 0 ]) }, 'lgl_na' => { desc => 'logical vector with NAs', expr => 'c(TRUE, FALSE, TRUE, NA)', value => Statistics::R::REXP::Logical->new([ 1, 0, 1, undef ]) }, 'list_na' => { desc => 'list with NAs', expr => 'list(1, 1L, list("b", list(letters[4:7], NA, c(44.1, NA)), list()))', value => Statistics::R::REXP::List->new([ ShortDoubleVector->new([ 1 ]), Statistics::R::REXP::Integer->new([ 1 ]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['b']), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['d', 'e', 'f', 'g']), Statistics::R::REXP::Logical->new([undef]), ShortDoubleVector->new([44.1, undef]) ]), Statistics::R::REXP::List->new([]) ]) ]) }, 'list_null' => { desc => 'list with a single NULL', expr => 'list(NULL)', value => Statistics::R::REXP::List->new( [ Statistics::R::REXP::Null->new() ]) }, 'pairlist_untagged' => { desc => 'a pairlist with no named elements', expr => 'as.pairlist(list(1L, 2L, 3L))', skip => 'rds', value => Statistics::R::REXP::List->new( [ Statistics::R::REXP::Integer->new([ 1 ]), Statistics::R::REXP::Integer->new([ 2 ]), Statistics::R::REXP::Integer->new([ 3 ]), ])}, 'pairlist_tagged' => { desc => 'a pairlist with named elements', expr => 'as.pairlist(list(foo=1L, 2L, c=3L))', skip => 'rds', value => Statistics::R::REXP::List->new( elements => [ Statistics::R::REXP::Integer->new([ 1 ]), Statistics::R::REXP::Integer->new([ 2 ]), Statistics::R::REXP::Integer->new([ 3 ]), ], attributes => { names => Statistics::R::REXP::Character->new(['foo', '', 'c']) })}, 'expr_null' => { desc => 'expression(NULL)', expr => 'expression(NULL)', value => Statistics::R::REXP::Expression->new([ Statistics::R::REXP::Null->new() ])}, 'expr_int' => { desc => 'expression(42L)', expr => 'expression(42L)', value => Statistics::R::REXP::Expression->new([ Statistics::R::REXP::Integer->new([42]) ])}, 'expr_call' => { desc => 'expression(1+2)', expr => 'expression(1+2)', value => Statistics::R::REXP::Expression->new([ Statistics::R::REXP::Language->new([ Statistics::R::REXP::Symbol->new('+'), ShortDoubleVector->new([1]), ShortDoubleVector->new([2]) ]) ])}, 'expr_many' => { desc => 'expression(u, v, 1+0:9)', expr => 'expression(u, v, 1+0:9)', value => Statistics::R::REXP::Expression->new([ Statistics::R::REXP::Symbol->new('u'), Statistics::R::REXP::Symbol->new('v'), Statistics::R::REXP::Language->new([ Statistics::R::REXP::Symbol->new('+'), ShortDoubleVector->new([1]), Statistics::R::REXP::Language->new([ Statistics::R::REXP::Symbol->new(':'), ShortDoubleVector->new([0]), ShortDoubleVector->new([9]) ]) ]) ])}, 'empty_clos' => { desc => 'function() {}', expr => 'function() {}', skip => 'webwork', value => ClosureLenientEnv->new( body => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('{') ], attributes => { srcfile => TEST_SRC_FILE->{empty_clos}, wholeSrcref => Statistics::R::REXP::Integer->new( elements => [1, 0, 1, 14, 0, 14, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => TEST_SRC_FILE->{empty_clos}}), srcref => Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new( elements => [1, 13, 1, 13, 13, 13, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => TEST_SRC_FILE->{empty_clos}}), ]) }), environment => Statistics::R::REXP::GlobalEnvironment->new(), attributes => { srcref => Statistics::R::REXP::Integer->new( elements => [1, 2, 1, 14, 2, 14, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => TEST_SRC_FILE->{empty_clos}}) }) }, 'clos_null' => { desc => 'function() NULL', expr => 'function() NULL', skip => 'webwork', value => ClosureLenientEnv->new( body => Statistics::R::REXP::Null->new, environment => Statistics::R::REXP::GlobalEnvironment->new(), attributes => { srcref => Statistics::R::REXP::Integer->new( elements => [1, 2, 1, 16, 2, 16, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => LenientSrcFile->new( frame => { Enc => Statistics::R::REXP::Character->new(['unknown']), filename => Statistics::R::REXP::Character->new(['']), fixedNewlines => Statistics::R::REXP::Logical->new([1]), isFile => Statistics::R::REXP::Logical->new([0]), lines => Statistics::R::REXP::Character->new(['{function() NULL}']), parseData => Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 123, 1, 12, 1, 2, 1, 9, 1, 264, 2, 9, 1, 10, 1, 10, 1, 40, 3, 9, 1, 11, 1, 11, 1, 41, 4, 9, 1, 13, 1, 16, 1, 262, 5, 6, 1, 13, 1, 16, 0, 77, 6, 9, 1, 17, 1, 17, 1, 125, 7, 12, 1, 2, 1, 16, 0, 77, 9, 12, 1, 1, 1, 17, 0, 77, 12, 0], attributes => { class => Statistics::R::REXP::Character->new(['parseData']), dim => Statistics::R::REXP::Integer->new([8, 9]), text => Statistics::R::REXP::Character->new([ '{', 'function', '(', ')', 'NULL', '', '}', '', '']), tokens => Statistics::R::REXP::Character->new([ "'{'", 'FUNCTION', "'('", "')'", 'NULL_CONST', 'expr', "'}'", 'expr', 'expr']), }), timestamp => Statistics::R::REXP::Double->new( elements => [12345], attributes => { class => Statistics::R::REXP::Character->new(['POSIXct', 'POSIXt']), }), wd => Statistics::R::REXP::Character->new(['abcd']) }, attributes => { class => Statistics::R::REXP::Character->new(['srcfilecopy', 'srcfile']) }, enclosure => Statistics::R::REXP::EmptyEnvironment->new)}) }) }, 'clos_int' => { desc => 'function() 1L', expr => 'function() 1L', skip => 'webwork', value => ClosureLenientEnv->new( body => Statistics::R::REXP::Integer->new([1]), environment => Statistics::R::REXP::GlobalEnvironment->new(), attributes => { srcref => Statistics::R::REXP::Integer->new( elements => [1, 2, 1, 14, 2, 14, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => LenientSrcFile->new( frame => { Enc => Statistics::R::REXP::Character->new(['unknown']), filename => Statistics::R::REXP::Character->new(['']), fixedNewlines => Statistics::R::REXP::Logical->new([1]), isFile => Statistics::R::REXP::Logical->new([0]), lines => Statistics::R::REXP::Character->new(['{function() 1L}']), parseData => Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 123, 1, 12, 1, 2, 1, 9, 1, 264, 2, 9, 1, 10, 1, 10, 1, 40, 3, 9, 1, 11, 1, 11, 1, 41, 4, 9, 1, 13, 1, 14, 1, 261, 5, 6, 1, 13, 1, 14, 0, 77, 6, 9, 1, 15, 1, 15, 1, 125, 7, 12, 1, 2, 1, 14, 0, 77, 9, 12, 1, 1, 1, 15, 0, 77, 12, 0], attributes => { class => Statistics::R::REXP::Character->new(['parseData']), dim => Statistics::R::REXP::Integer->new([8, 9]), text => Statistics::R::REXP::Character->new([ '{', 'function', '(', ')', '1L', '', '}', '', '']), tokens => Statistics::R::REXP::Character->new([ "'{'", 'FUNCTION', "'('", "')'", 'NUM_CONST', 'expr', "'}'", 'expr', 'expr']), }), timestamp => Statistics::R::REXP::Double->new( elements => [12345], attributes => { class => Statistics::R::REXP::Character->new(['POSIXct', 'POSIXt']), }), wd => Statistics::R::REXP::Character->new(['abcd']) }, attributes => { class => Statistics::R::REXP::Character->new(['srcfilecopy', 'srcfile']) }, enclosure => Statistics::R::REXP::EmptyEnvironment->new)}) }) }, 'clos_add' => { desc => 'function() 1+2', expr => 'function() 1+2', skip => 'webwork', value => ClosureLenientEnv->new( body => Statistics::R::REXP::Language->new([ Statistics::R::REXP::Symbol->new('+'), ShortDoubleVector->new([1]), ShortDoubleVector->new([2]) ]), environment => Statistics::R::REXP::GlobalEnvironment->new(), attributes => { srcref => Statistics::R::REXP::Integer->new( elements => [1, 2, 1, 15, 2, 15, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => LenientSrcFile->new( frame => { Enc => Statistics::R::REXP::Character->new(['unknown']), filename => Statistics::R::REXP::Character->new(['']), fixedNewlines => Statistics::R::REXP::Logical->new([1]), isFile => Statistics::R::REXP::Logical->new([0]), lines => Statistics::R::REXP::Character->new(['{function() 1+2}']), parseData => Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 123, 1, 16, 1, 2, 1, 9, 1, 264, 2, 13, 1, 10, 1, 10, 1, 40, 3, 13, 1, 11, 1, 11, 1, 41, 4, 13, 1, 13, 1, 13, 1, 261, 5, 6, 1, 13, 1, 13, 0, 77, 6, 11, 1, 14, 1, 14, 1, 43, 7, 11, 1, 15, 1, 15, 1, 261, 8, 9, 1, 15, 1, 15, 0, 77, 9, 11, 1, 16, 1, 16, 1, 125, 10, 16, 1, 13, 1, 15, 0, 77, 11, 13, 1, 2, 1, 15, 0, 77, 13, 16, 1, 1, 1, 16, 0, 77, 16, 0 ], attributes => { class => Statistics::R::REXP::Character->new(['parseData']), dim => Statistics::R::REXP::Integer->new([8, 13]), text => Statistics::R::REXP::Character->new([ '{', 'function', '(', ')', '1', '', '+', '2', '', '}', '', '', '']), tokens => Statistics::R::REXP::Character->new([ "'{'", 'FUNCTION', "'('", "')'", 'NUM_CONST', 'expr', "'+'", 'NUM_CONST', 'expr', "'}'", 'expr', 'expr', 'expr']), }), timestamp => Statistics::R::REXP::Double->new( elements => [12345], attributes => { class => Statistics::R::REXP::Character->new(['POSIXct', 'POSIXt']), }), wd => Statistics::R::REXP::Character->new(['abcd']) }, attributes => { class => Statistics::R::REXP::Character->new(['srcfilecopy', 'srcfile']) }, enclosure => Statistics::R::REXP::EmptyEnvironment->new)}) }) }, 'clos_args' => { desc => 'function(a, b) {a - b}', expr => 'function(a, b) {a - b}', skip => 'webwork', value => ClosureLenientEnv->new( args => ['a', 'b'], body => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('{'), Statistics::R::REXP::Language->new([ Statistics::R::REXP::Symbol->new('-'), Statistics::R::REXP::Symbol->new('a'), Statistics::R::REXP::Symbol->new('b') ]) ], attributes => { srcfile => TEST_SRC_FILE->{clos_args}, wholeSrcref => Statistics::R::REXP::Integer->new( elements => [1, 0, 1, 23, 0, 23, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => TEST_SRC_FILE->{clos_args}}), srcref => Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new( elements => [1, 17, 1, 17, 17, 17, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => TEST_SRC_FILE->{clos_args}}), Statistics::R::REXP::Integer->new( elements => [1, 18, 1, 22, 18, 22, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => TEST_SRC_FILE->{clos_args}}), ]) }), environment => Statistics::R::REXP::GlobalEnvironment->new(), attributes => { srcref => Statistics::R::REXP::Integer->new( elements => [1, 2, 1, 23, 2, 23, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => TEST_SRC_FILE->{clos_args}}) }) }, 'clos_defaults' => { desc => 'function(a=3, b) {a + b * pi}', expr => 'function(a=3, b) {a + b * pi}', skip => 'webwork', value => ClosureLenientEnv->new( args => ['a', 'b'], defaults => [ShortDoubleVector->new([2]), undef], body => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('{'), Statistics::R::REXP::Language->new([ Statistics::R::REXP::Symbol->new('+'), Statistics::R::REXP::Symbol->new('a'), Statistics::R::REXP::Language->new([ Statistics::R::REXP::Symbol->new('*'), Statistics::R::REXP::Symbol->new('b'), Statistics::R::REXP::Symbol->new('pi')]) ]) ], attributes => { srcfile => TEST_SRC_FILE->{clos_defaults}, wholeSrcref => Statistics::R::REXP::Integer->new( elements => [1, 0, 1, 30, 0, 30, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => TEST_SRC_FILE->{clos_defaults}}), srcref => Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new( elements => [1, 19, 1, 19, 19, 19, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => TEST_SRC_FILE->{clos_defaults}}), Statistics::R::REXP::Integer->new( elements => [1, 20, 1, 29, 20, 29, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => TEST_SRC_FILE->{clos_defaults}}), ]) }), environment => Statistics::R::REXP::GlobalEnvironment->new(), attributes => { srcref => Statistics::R::REXP::Integer->new( elements => [1, 2, 1, 30, 2, 30, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => TEST_SRC_FILE->{clos_defaults}}) }) }, 'clos_dots' => { desc => 'function(x=3, y, ...) {x * log(y) }', expr => 'function(x=3, y, ...) {x * log(y) }', skip => 'webwork', value => ClosureLenientEnv->new( args => ['x', 'y', '...'], defaults => [ShortDoubleVector->new([3]), undef, undef], body => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('{'), Statistics::R::REXP::Language->new([ Statistics::R::REXP::Symbol->new('*'), Statistics::R::REXP::Symbol->new('x'), Statistics::R::REXP::Language->new([ Statistics::R::REXP::Symbol->new('log'), Statistics::R::REXP::Symbol->new('y')] ) ]) ], attributes => { srcfile => TEST_SRC_FILE->{clos_dots}, wholeSrcref => Statistics::R::REXP::Integer->new( elements => [1, 0, 1, 36, 0, 36, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => TEST_SRC_FILE->{clos_dots}}), srcref => Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new( elements => [1, 24, 1, 24, 24, 24, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => TEST_SRC_FILE->{clos_dots}}), Statistics::R::REXP::Integer->new( elements => [1, 25, 1, 34, 25, 34, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => TEST_SRC_FILE->{clos_dots}}), ]) }), environment => Statistics::R::REXP::GlobalEnvironment->new(), attributes => { srcref => Statistics::R::REXP::Integer->new( elements => [1, 2, 1, 36, 2, 36, 1, 1], attributes => { class => Statistics::R::REXP::Character->new(['srcref']), srcfile => TEST_SRC_FILE->{clos_dots}}) }) }, 'baseenv' => { desc => 'baseenv()', expr => 'baseenv()', value => RexpOrUnknown->new(Statistics::R::REXP::BaseEnvironment->new), }, 'emptyenv' => { desc => 'emptyenv()', expr => 'emptyenv()', value => RexpOrUnknown->new(Statistics::R::REXP::EmptyEnvironment->new), }, 'globalenv' => { desc => 'globalenv()', expr => 'globalenv()', value => RexpOrUnknown->new(Statistics::R::REXP::GlobalEnvironment->new), }, 'env_attr' => { desc => 'environment with attributes', expr => 'local({ e <- new.env(parent=globalenv()); attributes(e) <- list(foo = "bar", fred = 1:3); e })', value => RexpOrUnknown->new(Statistics::R::REXP::Environment->new( enclosure => Statistics::R::REXP::GlobalEnvironment->new, attributes => { foo => Statistics::R::REXP::Character->new(['bar']), fred => Statistics::R::REXP::Integer->new([1, 2, 3]), })), }, 'empty_cpx' => { desc => 'empty complex vector', expr => 'complex()', value => Statistics::R::REXP::Complex->new()}, 'cpx_na' => { desc => 'complex vector with NAs', expr => 'c(1, NA_complex_, 3i, 0)', value => Statistics::R::REXP::Complex->new([1, undef, cplx(0, 3), 0])}, 'noatt-cpx' => { desc => 'scalar complex vector', expr => '3+2i', value => Statistics::R::REXP::Complex->new([cplx(3, 2)])}, 'foo-cpx' => { desc => 'complex vector with a name attribute', expr => 'c(foo=3+2i)', value => Statistics::R::REXP::Complex->new( elements => [ cplx(3, 2) ], attributes => { names => Statistics::R::REXP::Character->new(['foo']) }, )}, 'cpx-1i' => { desc => 'imaginary-only complex vector', expr => '1i', value => Statistics::R::REXP::Complex->new([cplx(0, 1)])}, 'cpx-0i' => { desc => 'real-only empty complex vector', expr => '5+0i', value => Statistics::R::REXP::Complex->new([cplx(5)])}, 'cpx-vector' => { desc => 'simple complex vector', expr => 'complex(real=1:3, imaginary=4:6)', value => Statistics::R::REXP::Complex->new([cplx(1,4), cplx(2, 5), cplx(3, 6)])}, 'df_auto_rownames' => { desc => 'automatic compact rownames', expr => 'data.frame(a=1:3, b=c("x", "y", "z"), stringsAsFactors=FALSE)', value => Statistics::R::REXP::List->new( elements => [ Statistics::R::REXP::Integer->new([ 1, 2, 3 ]), Statistics::R::REXP::Character->new([ 'x', 'y', 'z' ]), ], attributes => { names => Statistics::R::REXP::Character->new(['a', 'b']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([1, 2, 3]), } )}, 'df_expl_rownames' => { desc => 'explicit compact rownames', expr => 'data.frame(a=1:3, b=c("x", "y", "z"), stringsAsFactors=FALSE)[1:3,]', value => Statistics::R::REXP::List->new( elements => [ Statistics::R::REXP::Integer->new([ 1, 2, 3 ]), Statistics::R::REXP::Character->new([ 'x', 'y', 'z' ]), ], attributes => { names => Statistics::R::REXP::Character->new(['a', 'b']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([1, 2, 3]), } )}, 's4' => { desc => 'S4 class', expr => 'local({ library(methods) track <- setClass("track", slots = c(x="numeric", y="numeric")) t1 <- track(x = 1:4, y = 2:4 + 0) t1 })', value => Statistics::R::REXP::S4->new( class => 'track', package => '.GlobalEnv', slots => { x => Statistics::R::REXP::Integer->new([1, 2, 3, 4]), y => ShortDoubleVector->new([2, 3, 4]), }), }, 's4_subclass' => { desc => 'S4 subclass', expr => 'local({ library(methods) track <- setClass("track", slots = c(x="numeric", y="numeric")) t1 <- track(x = 1:4, y = 2:4 + 0) trackCurve <- setClass("trackCurve", slots = c(smooth = "numeric"), contains = "track") t1s <- trackCurve(t1, smooth = 1:3) t1s })', value => Statistics::R::REXP::S4->new( class => 'trackCurve', package => '.GlobalEnv', slots => { x => Statistics::R::REXP::Integer->new([1, 2, 3, 4]), y => ShortDoubleVector->new([2, 3, 4]), smooth => Statistics::R::REXP::Integer->new([1, 2, 3]), }), }, }; 1; rexp-expression.t100644000765000024 1564513140202262 17740 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 37; use Test::Fatal; use Statistics::R::REXP::Expression; use Statistics::R::REXP::Language; use Statistics::R::REXP::Character; use Statistics::R::REXP::Double; use Statistics::R::REXP::Integer; use Statistics::R::REXP::List; use Statistics::R::REXP::Symbol; my $empty_expression = new_ok('Statistics::R::REXP::Expression', [ ], 'new expression' ); is($empty_expression, $empty_expression, 'self equality'); my $empty_expression_2 = Statistics::R::REXP::Expression->new(); is($empty_expression, $empty_expression_2, 'empty expression equality'); my $expression = Statistics::R::REXP::Expression->new(elements => [Statistics::R::REXP::Symbol->new('foo'), 4, 11.2]); my $expression2 = Statistics::R::REXP::Expression->new([Statistics::R::REXP::Symbol->new('foo'), 4, 11.2]); is($expression, $expression2, 'expression equality'); is(Statistics::R::REXP::Expression->new($expression2), $expression, 'copy constructor'); is(Statistics::R::REXP::Expression->new(Statistics::R::REXP::List->new([Statistics::R::REXP::Symbol->new('foo'), 4, 11.2])), $expression, 'copy constructor from a vector'); ## error checking in constructor arguments like(exception { Statistics::R::REXP::Expression->new(sub {1+1}) }, qr/Attribute 'elements' must be an array reference/, 'error-check in single-arg constructor'); like(exception { Statistics::R::REXP::Expression->new(1, 2, 3) }, qr/odd number of arguments/, 'odd constructor arguments'); like(exception { Statistics::R::REXP::Expression->new(elements => {foo => 1, bar => 2}) }, qr/Attribute 'elements' must be an array reference/, 'bad elements argument'); my $another_expression = Statistics::R::REXP::Expression->new([Statistics::R::REXP::Symbol->new('bla'), 4, 11.2]); isnt($expression, $another_expression, 'expression inequality'); my $na_heavy_expression = Statistics::R::REXP::Expression->new(elements => [Statistics::R::REXP::Symbol->new('bla'), ['', undef], '0']); my $na_heavy_expression2 = Statistics::R::REXP::Expression->new(elements => [Statistics::R::REXP::Symbol->new('bla'), [undef, undef], 0]); is($na_heavy_expression, $na_heavy_expression, 'NA-heavy expression equality'); isnt($na_heavy_expression, $na_heavy_expression2, 'NA-heavy expression inequality'); is($expression .'', 'expression(symbol `foo`, 4, 11.2)', 'expression text representation'); is(Statistics::R::REXP::Expression->new(elements => [Statistics::R::REXP::Symbol->new('foo'), undef]) .'', 'expression(symbol `foo`, undef)', 'text representation of a singleton NA'); is(Statistics::R::REXP::Expression->new(elements => [Statistics::R::REXP::Symbol->new('bar'), [[undef]]]) .'', 'expression(symbol `bar`, [[undef]])', 'text representation of a nested singleton NA'); is($na_heavy_expression .'', 'expression(symbol `bla`, [, undef], 0)', 'empty string representation'); is_deeply($expression->elements, [Statistics::R::REXP::Symbol->new('foo'), 4, 11.2], 'expression contents'); is($expression->elements->[2], 11.2, 'single element access'); is_deeply(Statistics::R::REXP::Expression->new(elements => [Statistics::R::REXP::Symbol->new('baz'), 4.0, '3x', 11])->elements, [Statistics::R::REXP::Symbol->new('baz'), 4, '3x', 11], 'constructor with non-numeric values'); my $nested_expression = Statistics::R::REXP::Expression->new(elements => [Statistics::R::REXP::Symbol->new('qux'), 4.0, ['b', ['cc', 44.1]], 11]); is_deeply($nested_expression->elements, [Statistics::R::REXP::Symbol->new('qux'), 4, ['b', ['cc', 44.1]], 11], 'nested expression contents'); is_deeply($nested_expression->elements->[2]->[1], ['cc', 44.1], 'nested element'); is_deeply($nested_expression->elements->[3], 11, 'non-nested element'); is($nested_expression .'', 'expression(symbol `qux`, 4, [b, [cc, 44.1]], 11)', 'nested expression text representation'); my $nested_rexps = Statistics::R::REXP::Expression->new([ Statistics::R::REXP::Symbol->new('quux'), Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::Language->new([ Statistics::R::REXP::Symbol->new('a'), Statistics::R::REXP::Character->new(['b']), Statistics::R::REXP::Double->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ]); is($nested_rexps .'', 'expression(symbol `quux`, integer(1, 2, 3), language(symbol `a`, character(b), double(11)), character(foo))', 'nested expression of REXPs text representation'); ok(! $expression->is_null, 'is not null'); ok( $expression->is_vector, 'is vector'); ## attributes is_deeply($expression->attributes, undef, 'default attributes'); my $expression_attr = Statistics::R::REXP::Expression->new(elements => [Statistics::R::REXP::Symbol->new('fred'), 3.3, '4', 11], attributes => { foo => 'bar', x => [40, 41, 42] }); is_deeply($expression_attr->attributes, { foo => 'bar', x => [40, 41, 42] }, 'constructed attributes'); my $expression_attr2 = Statistics::R::REXP::Expression->new(elements => [Statistics::R::REXP::Symbol->new('fred'), 3.3, '4', 11], attributes => { foo => 'bar', x => [40, 41, 42] }); my $another_expression_attr = Statistics::R::REXP::Expression->new(elements => [Statistics::R::REXP::Symbol->new('fred'), 3.3, '4', 11], attributes => { foo => 'bar', x => [40, 42, 42] }); is($expression_attr, $expression_attr2, 'equality considers attributes'); isnt($expression_attr, $expression, 'inequality considers attributes'); isnt($expression_attr, $another_expression_attr, 'inequality considers attributes deeply'); ## attributes must be a hash like(exception { Statistics::R::REXP::Expression->new(elements => [ Statistics::R::REXP::Symbol->new('foo') ], attributes => 1) }, qr/Attribute 'attributes' must be a hash reference/, 'setting non-HASH attributes'); ## Perl representation is_deeply($expression->to_pl, ['foo', 4, 11.2], 'Perl representation'); is_deeply($na_heavy_expression->to_pl, ['bla', ['', undef], '0'], 'expression with NAs Perl representation'); is_deeply($nested_expression->to_pl, ['qux', 4.0, ['b', ['cc', 44.1]], 11], 'nested expressions Perl representation'); is_deeply($nested_rexps->to_pl, [ 'quux', [ 1, 2, 3], [ 'a', ['b'], [11] ], ['foo'] ], 'expression with nested REXPs Perl representation'); my $singleton = Statistics::R::REXP::Expression->new(elements => [Statistics::R::REXP::Integer->new([42])]); is_deeply($singleton->to_pl, [[42]], 'singleton element Perl representation'); ab-mat-noxdr100644000765000024 22313140202262 17447 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  ÿÿÿÿ dim  dimnames a bþþabc-123l-xdr100644000765000024 13613140202262 17160 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX   names a b cþabc-123l.qap100644000765000024 6013140202262 17121 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data , ("abcnamesall_xz.RData100644000765000024 320013140202262 17457 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!ÏXÌà6C])TW"änRÊŸ’Ù¢Ä)'dzø$&}ïT©·xó¾YTðÁcçý;üñ‘Ù©'J žbèÅTÕǯcë%ßUüªIµö¹¸#½IÒ`æ6ʹ-êR]‰c‡÷›-ÈPÉGV$§­1ˆ$RI d sFÖw—ºfú°H£UY¢ï*ÅÄ †¯AŽÁ;¿<åŠÐ¸9U3WËÚy<Æo銻é: Ú!cí24e «9VFÌrš4˜­Üypø(*ZZZ(9m|°-Æû€ú:$º°ÊØõîüŽ)çŒ*ÖÝ¡)Í«¦iwËdÊI Ctã àóP58ǕŠL£¼ßwIÏ·ü«ÏDM1šª"AÊ ô¦f½.0\ѧC÷JºêWsd»½¯œ<&ç@‡öy9ƒ¢‡&¼›u€õ¶n¢Ú½Áúû|ÎwÙ¦ÄÙGsStD ¦Àxµ¾¸Hoi‹¨ñx§üUGìzåEHy`z±‘vl™á"Ðxe@p¡Šôœv…´ô!!eL^çDÆ1‚\ûs¡1²®ñh-§/m¦6„é/­òŠÏh°õ*7ïÁ}ü•Êâí©…-wÔàó[²Føc^a þ9'³<ŽEŽw>´ªMo ’X—UžkÒÈ j¹¡s¯Ðúkǰ¸aqÀxº-b;ÇÊCò4a'ÜðG|>«a7$µKÛ¬Ì8)g"锯ÅÞämOrE•¢ÿ÷ކys;<îý¹«<µºrîì ñpuqš·Cž¾Žï]Û듵ءd–è¦{ë1ÌêKÇ¿P¾‹€Œ;Jjƒˆ äù:ïåoìæCë¨øÍ = æý·20,ˆR¦fH+ƒÖèÒû¦þäÞ^±ŸÌÂQÈð²3øù±šÿ×Ħ—Ç¡5.“…÷©ï%AQži €¹^+Œõ¶“F¹S'íœ?¹~i@µÅD¢=¿yð¦mó÷Oö‡¤jô"œ­*Áfò-ùÊþÍòïûœü¯@2ƒÎFÐöóZá^à VÛ.3¨9ÒB òœ¾ÄïL÷Pºs”bc:!’nabìß,/q›iË0¡ŽBþØþ°§£4³Oú¨fÉ0dš(âñ TŽ:ÞÒÐ j}£z‡îó’OÍ¢Øèœ ¼mUìÔX —A·Ò<™0h/MK<²Õÿ÷“íSûT´GäâKýÉ {š³:n™É„•/ d°nZmÐìj ›QyaKZñ½8övŒXPšv¸Ö“”â<5n‚'³s.g™ "ís)±­:Πà;“‘ÜÅŽ×N„Tr{–‰1ál|8(Þ¬ÒW3é+~¹n™ jX&ý\€ï óúFlïú¨DíÌAÖd²nZ²ù:b—Ä>F¥wý:=K–N~KWò e$)Ÿ$ ¥Öȵb­£š÷J7EÅ!#看z…þû‹P*¨‚MgÂæýbÛ ·0ƒF’Ú>0 ‹YZcars-xdr.rds100644000765000024 22213140202262 17467 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`b&f “YÌg`àb60€Ó2h´”Vb€ˆ>(ÇAM¿”6@•g``ÙÉÈÀÂÀ ¤YósS‹ °c ‚Å©©)PKJfq š.΢ür=˜N^ΈÙlèÆ'ç$ÃŒ‡ r¥$–$ê¥õyÿ@xclos_add-xdr100644000765000024 320013140202262 17537 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  srcref  srcfileòþþþþ wd ,/Users/davor/projects/Statistics-R-IO/t/dataþþ lines {function() 1+2}þ Enc unknownþþ isFile þ timestampAÕ Ý‚¡;Á class POSIXct POSIXtþþþþþ filename þþþþþþþþþþþþþþ fixedNewlines þ parseData h{    (   )     M +  M }  M M M dim   tokens  '{' FUNCTION '(' ')' NUM_CONST expr '+' NUM_CONST expr '}' expr expr expr text  { function ( ) 1  + 2  }    ÿ parseDataþþ ÿ srcfilecopy srcfileþ ÿ srcrefþþýþ +?ð@þclos_add.qap100644000765000024 6013140202262 17465 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data ,( +!ð?!@clos_int-xdr100644000765000024 257113140202262 17613 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  srcref  srcfileòþþþþ wd ,/Users/davor/projects/Statistics-R-IO/t/dataþþ lines {function() 1L}þ Enc unknownþþ isFile þ timestampAÕ Íåoç` class POSIXct POSIXtþþþþþ filename þþþþþþþþþþþþþþ fixedNewlines þ parseData H{     (   )   M } M M  dim   tokens  '{' FUNCTION '(' ')' NUM_CONST expr '}' expr expr text  { function ( ) 1L  }   ÿ parseDataþþ ÿ srcfilecopy srcfileþ ÿ srcrefþþýþ clos_int.qap100644000765000024 2413140202262 17527 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data  cpx-0i-noxdr100644000765000024 4613140202262 17371 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB @cpx-1i-noxdr100644000765000024 4613140202262 17372 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB ð?cpx_na-noxdr100644000765000024 12613140202262 17560 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB ð?¢ð¢ð@emptyenv-xdr100644000765000024 2213140202262 17575 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX òemptyenv.qap100644000765000024 1413140202262 17563 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data 0env_attr-xdr100644000765000024 35413140202262 17600 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX ýþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþ foo bar fred þenv_attr.qap100644000765000024 7413140202262 17544 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data 8°4,"barfoo fredenv_xz.RData100644000765000024 23413140202262 17463 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!ÏXÌàN_])TW"änRÊŸ’Ù¢Ä)'dzø$&}ïUzàä1;°g™†qVŽaJQ`c•LÍS 6^âÌ]É+‚ÉY—!—'õ5R¯gê_ï³j:P„j¨žûȧ}رƒ u¶ÁZwÏ%^>>0 ‹YZexpr_int-xdr100644000765000024 4213140202262 17560 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  *expr_int.qap100644000765000024 2013140202262 17541 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data  *f-123456-xdr100644000765000024 11013140202262 16733 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX @“J=p£×  names fþf-123456.qap100644000765000024 5013140202262 16703 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data $¡ "fnames ×£p=J“@frames.RData100644000765000024 126013140202262 17447 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹T=lÓ@>bç?iK$²S•¦?° Ü  •hE+¡«sI-9±k»©Ú‰…™Äs–ÎlH0#6˜Y BBj9ûÞ;Åóó$û»÷Ýûžßݽójg£UÙ¨BrÄOÎC3'^çˆIÊ‹ƒƒÇ6 BBŒ¹$Œ)ñè ILáe -À«MêÀ¡×4ý `3=¯•“²Å™¤ CŸó.8f× #MU¼ýyTÖcå™» §·]bz$+]±ù^ ôÂ;ÍØ 'ppƒòj¡^btîyl/èìûØ>ÐYà°Ð r^éjÀ—Ë /¾8½˜êÚ'2¯Âï2®ýSæQü/M÷Næÿ'~Â:ºÜ9±™Oj{ .q·Ô@6ä‘2ÜàBÇö\/À9Aß:6“éÌ3íL =fG"\G#òQ[ã>sçïòa?Ú®*¹u§«¨Ú}M„In<¬¸æsÛ‰û'þ˜q–ÝGeþ½uÊ¢uÑØíªª&X†ÃG\C_†æi½I‘¶.¥›ç"Ä#Îh¾•ö•® <â& /t$J]+­Ûq¦}þYâ#šÖAó*œ‚õ•^}¬Üò_Ó2ð…Æá—ÛG ¥3¼}¶uý„¡¾œðEËǾ>½rL«â%F´z”•®¹'u y9ßz˶è¢pWñK7“<¨#šµ¿¥QçQ§Çéñ–ýWE,eãŸtúwéD©;S…†4~‡ö;öGõaœÛñ°Ù}™»!·‘…8bœïs†—Ü¿=v¡âJ x5î±Ã.³V7–€¨+ÂZgXd¥Ã¢pohÝXh3uÇ †<²–¬NàŒ8°ç]ó½ bÛÞ–[|È\‡ £ÿ½¾äô7§­µ’2int_na-noxdr100644000765000024 4613140202262 17541 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB   €iris-xdr.rds100644000765000024 43613140202262 17514 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹…QANÃ04NÓ6!PÔ–oäÂêp@ê¡\-×i-¹Ie[áÊ7àGHðþR%ÀŽ×¤HŒ4Yg2³Û·9B£Ä'v™Ìì#µ<·’yÕÌÉôÙá…LAŸ£äÒ¹ô1Ô òcÈP'WBnñîûÆúæ}‹ß'ê‡^îÉ÷ÿ·¾†ÿLÎ\ÎòäopW(s>É[.µ]]¸# ªæ¦ÑÞò–+-X#JÖ µµ`´×.e’êÐ-Ψ(36‹Ðgß^ÓöÄbÉ÷T–×¼Þ˜-h§^[‰u”ŠnŽl^ûi-÷œ 7ä×äL5we˜î ßû{z#þêm"_SCËJÙˆÛÈ7 —H]lgl_na-noxdr100644000765000024 4613140202262 17525 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  €mtcars-noxdr100644000765000024 173713140202262 17632 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  5@5@ÍÌÌÌÌÌ6@ffffff5@33333³2@š™™™™2@@@@@ @@d@d@[@ p@€v@ l@€[@€[@@W@€[@àe@@Z@333333@333333@ÍÌÌÌÌÌ@¤p= ×£@333333 @®Gáz@ö(\Âõ@@Âõ(\@¸…ëQ¸ @…ëQ¸… @®Gáz® @ö(\Âu0@…ëQ¸1@\Âõ(œ2@q= ×£p3@…ëQ¸1@¸…ëQ84@ð?ð?ð?ð?ð?ð?@@@@@@@@ð?ð?@ð? names mpg cyl disp hp drat wt qsec vs am gear carb  row.names  Mazda RX4  Mazda RX4 Wag  Datsun 710 Hornet 4 Drive Hornet Sportabout Valiant class  data.frameþnull-xdr.rds100644000765000024 4313140202262 17472 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&Ã?ˆ–:‹num_na-noxdr100644000765000024 7613140202262 17551 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB š™™™™™&@øðÿ¢ðrexp-environment.t100644000765000024 604313140202262 20055 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 19; use Test::Fatal; use Statistics::R::REXP::Environment; use Scalar::Util qw(refaddr); my $env = new_ok('Statistics::R::REXP::Environment', [ name => 'sym' ], 'new environment' ); is($env, $env, 'self equality'); my $env_2 = Statistics::R::REXP::Environment->new(name => $env); is($env, $env_2, 'environment equality with copy'); is(Statistics::R::REXP::Environment->new($env_2), $env, 'copy constructor'); ## error checking in constructor arguments like(exception { Statistics::R::REXP::Environment->new([1, 2, 3]) }, qr/HASH data or a Statistics::R::REXP::Environment/, 'error-check in single-arg constructor'); like(exception { Statistics::R::REXP::Environment->new(1, 2, 3) }, qr/odd number of arguments/, 'odd constructor arguments'); ## Frame must be a hash of REXPs like(exception { Statistics::R::REXP::Environment->new(frame => {foo => 1, bar => 3}) }, qr/Attribute 'frame' must be a reference to a hash of REXPs/, 'error-check in single-arg constructor'); ## Enclosure must be another Environment like(exception { Statistics::R::REXP::Environment->new(enclosure => 'foo') }, qr/Attribute 'enclosure' must be an instance of Environment/, 'bad env enclosure'); my $env_foo = Statistics::R::REXP::Environment->new(enclosure => $env); isnt($env, $env_foo, 'environment inequality'); ok(! $env->is_null, 'is not null'); ok(! $env->is_vector, 'is not vector'); is($env .'', 'environment 0x' . sprintf('%x', refaddr $env), 'environment text representation'); ## attributes is_deeply($env->attributes, undef, 'default attributes'); my $env_attr = Statistics::R::REXP::Environment->new(name => 'sym', attributes => { foo => 'bar', x => [40, 41, 42] }); is_deeply($env_attr->attributes, { foo => 'bar', x => [40, 41, 42] }, 'constructed attributes'); my $env_attr2 = Statistics::R::REXP::Environment->new(name => 'sym', attributes => { foo => 'bar', x => [40, 41, 42] }); my $another_sym_attr = Statistics::R::REXP::Environment->new(name => 'sym', attributes => { foo => 'bar', x => [40, 42, 42] }); is($env_attr, $env_attr2, 'equality considers attributes'); isnt($env_attr, $env, 'inequality considers attributes'); isnt($env_attr, $another_sym_attr, 'inequality considers attributes deeply'); ## attributes must be a hash like(exception { Statistics::R::REXP::Environment->new(attributes => 1) }, qr/Attribute 'attributes' must be a hash reference/, 'setting non-HASH attributes'); ## Perl representation like(exception { $env->to_pl }, qr/Environments do not have a native Perl representation/, 'Perl representation'); ABC-abc-noxdr100644000765000024 15513140202262 17422 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  a b c names A B Cþbaseenv-noxdr100644000765000024 2213140202262 17706 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB ñchar_na-noxdr100644000765000024 7313140202262 17664 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  foo  ÿÿÿÿ 23clos_args-xdr100644000765000024 447013140202262 17755 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  srcref  srcfileòþþþþ wd ,/Users/davor/projects/Statistics-R-IO/t/dataþþ lines {function(a, b) {a - b}}þ Enc unknownþþ isFile þ timestampAÕ Þ À = class POSIXct POSIXtþþþþþ filename þþþþþþþþþþþþþþ fixedNewlines þ parseData ˜{   (  $  ,$){  - M }MMM}MM dim  tokens '{' FUNCTION '(' SYMBOL_FORMALS ',' SYMBOL_FORMALS ')' '{' SYMBOL '-' expr SYMBOL '}' expr expr expr '}' expr expr text { function ( a , b ) { a -  b }    }   ÿ parseDataþþ ÿ srcfilecopy srcfileþ ÿ srcrefþþý aû bûþÿ ÿÿ ÿ srcrefþ ÿÿ ÿ srcrefþÿÿ wholeSrcref ÿÿ ÿ srcrefþþ { -ÿÿþþclos_args.qap100644000765000024 12413140202262 17712 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data PL ab${-abclos_dots-xdr100644000765000024 567013140202262 17775 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  srcref $$ srcfileòþþþþ wd ,/Users/davor/projects/Statistics-R-IO/t/dataþþ lines %{function(x=3, y, ...) {x * log(y) }}þ Enc unknownþþ isFile þ timestampAÕ -ÉX* class POSIXct POSIXtþþþþþ filename þþþþþþþþþþþþþþ fixedNewlines þ parseData è{' $  ($  $$  %$    M$,$$ $, $$ $)${!*M(  (M!!"")!!M"M$$}!"M!$M!$%%}"'$M$'%M' dim  tokens '{' FUNCTION '(' SYMBOL_FORMALS EQ_FORMALS NUM_CONST expr ',' SYMBOL_FORMALS ',' SYMBOL_FORMALS ')' '{' SYMBOL '*' expr SYMBOL_FUNCTION_CALL '(' expr SYMBOL ')' expr expr '}' expr expr '}' expr expr text { function ( x = 3  , y , ... ) { x *  log (  y )   }   }   ÿ parseDataþþ ÿ srcfilecopy srcfileþ ÿ srcrefþþý x@ yû ...ûþÿ ÿÿ ÿ srcrefþ ""ÿÿ ÿ srcrefþÿÿ wholeSrcref $$ÿÿ ÿ srcrefþþ { *ÿ logÿþþþclos_dots.qap100644000765000024 16413140202262 17733 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data pl4!@xy...0{$*xlogyclos_null-xdr100644000765000024 256613140202262 17777 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  srcref  srcfileòþþþþ wd ,/Users/davor/projects/Statistics-R-IO/t/dataþþ lines {function() NULL}þ Enc unknownþþ isFile þ timestampAÕ Ì¿ñ#š class POSIXct POSIXtþþþþþ filename þþþþþþþþþþþþþþ fixedNewlines þ parseData H{     (   )   M } M M  dim   tokens  '{' FUNCTION '(' ')' NULL_CONST expr '}' expr expr text  { function ( ) NULL  }   ÿ parseDataþþ ÿ srcfilecopy srcfileþ ÿ srcrefþþýþþclos_null.qap100644000765000024 2013140202262 17703 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data empty_cpx-xdr100644000765000024 2613140202262 17742 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX empty_cpx.qap100644000765000024 1013140202262 17720 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data &empty_int-xdr100644000765000024 2613140202262 17742 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  empty_int.qap100644000765000024 1013140202262 17720 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data  empty_lgl-xdr100644000765000024 2613140202262 17726 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  empty_lgl.qap100644000765000024 1413140202262 17710 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data $empty_num-xdr100644000765000024 2613140202262 17747 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX empty_num.qap100644000765000024 1013140202262 17725 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data !empty_raw-xdr100644000765000024 2613140202262 17741 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX empty_raw.qap100644000765000024 1413140202262 17723 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data %empty_sym-xdr100644000765000024 2213140202262 17754 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX ûempty_sym.qap100644000765000024 1413140202262 17742 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data expr_call-xdr100644000765000024 12313140202262 17721 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  +?ð@þexpr_call.qap100644000765000024 5413140202262 17671 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data ($ +!ð?!@expr_many-xdr100644000765000024 23213140202262 17753 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  u v +?ð :@"þþexpr_many.qap100644000765000024 12413140202262 17740 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data PLuv8+!ð? :!!"@expr_null-xdr100644000765000024 3213140202262 17737 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX þexpr_null.qap100644000765000024 1413140202262 17724 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data foo-cpx-noxdr100644000765000024 12213140202262 17657 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB @@ names fooþglobalenv-xdr100644000765000024 2213140202262 17677 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX ýglobalenv.qap100644000765000024 1413140202262 17665 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data 0list_na-noxdr100644000765000024 25313140202262 17742 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB ð?  b d e f g €ÍÌÌÌÌ F@¢ðlist_null-xdr100644000765000024 3213140202262 17734 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX þlist_null.qap100644000765000024 1413140202262 17721 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data lm_bzip.RData100644000765000024 236713140202262 17637 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYšk ´fÿÿÿÿÿû}ÿÿŸÏî}Í¿ïÿùßA°q¯­þþöNŸ¡ÿÐÑÙ áÀwp†‘)Š{J4Í5j=CÒ£Ô4õ=Cz£A¡§©ê 2PÐzC5¦¦ÔzPzƒzPz€y É£G¨õ=O(ÓÔÓz7ª H„ÈÓF¦FL ¨h hh44i AéJHSO(M 4h€d4Äh 2`™42 Œ!É‘‚4bh €ŠSI‚›Si @@€@z’ÒŒ»™¡ Q©(aBt\ ¨Â¢#*KJ¼’!œ©ÍĥЃ˜çꘊìÔ‰³ZsD$NŒ)qa Çùj¨,â(MIEAS˜u%VzD›ŒZ•½¼©˜„øoÁ­8V* ærŽQà£=§5±-IqeE¤fW%.±MOSȈ„P#›5âŠÖ¶½äa¶ÿÐH-MQ/XY¹òÇØ·6q:Èï2ðŽŠ@ B€Ñ114Ø Ba¦& J‚ƒHCbD™!^²Z¢ „ Ù!øÊk2©±°3â4 Ì)YAé<‚“`=¥)M‹ Zp²…„*a LI ­¤ Æ4„R¿P6&Á4 !ŒL@ÒKB3Mæ–µ¯Ó¼ÅFš”v’S$nã |&ŒK Ť„°-Th Å `Ì´¥VAEü‚’0*Ĩ†ØÁ„LAPÖ5¢±Å. “áÆ¼¥`Tt(HuÑâ幉…­Àր؀p1HY&vq´6Ñ»« °`WÝ}yR׈T¹MÇìU+À~ø crâ$s #Óôr„`êŸ {Å»Y¯€ìG= Ø€gsyeݹõüì*–ß\Ö{QYú;dŽ›obøZ š–èâ?vçM #ß‹  ŒÔ?ª g k%"¶Ê‰qìîzV9u`.¹a’°´ V¡¾]~÷NŠ!C¥hòIò V 7TÅœg…žn:•Ó‹l´0“!¯evv†¤)O¨væôªNA‡‚ ‚š´z|4žQˆ±õW-w¦S ôÞ 8#àPB|Ž£ù[!ÆÜqÈÕ0"Ô$h¶²¹XÛeC0ò^Jf_Š F®Vá +NHà@§ Ð‰¢©!Ø#AØêA—VìØ““ L…TðnÓÞƒ¢B«ÙÁA_q¸ `%?.t)ú A´Bš0ª£KPäp´[g9‡>¢1YA2 ùù’DTlM“,Á(êR– r‚çHšb)![·¥¨á8.µË²^ˆ WŸ%OX@™VÌ‘3*s%Úr¤vð\bK¶joÏâTÚ³;‘ztb¸òRygB–ÇêçáJ z¶Y©¸¿Õ`Ëqu¼ž[QÇÊK|AL6}-ÓL÷>rY5††hª‰ú¹ÓáL&¿{;‡©_Ðà1!&¶Çâ¹t<Š™+08ŽrGÉEbX"8ØWjª—¡¦sØ‚"šÓx­ µ"!b0J ]Ú¿í‡W(Ïß}Ž Gû*.ÜúOø»’)„„ÓXM mats_xz.RData100644000765000024 25413140202262 17641 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!ÏXÌàn])TW"änRÊŸ’Ù¢Ä)'dzø$&}ïT©·xó¾YTðÁcçý;üñ‘Ù©'J žbèÅTÕǯcë%ßUüªIµö¹¸#½IÒ`æ6ʹ-êR]‰c‡÷›.ò;¨2û‡Ù'‚æ=¦rÍl‰”2Y†‡DPÖE>0 ‹YZnoatt-abc-xdr100644000765000024 6113140202262 17601 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  a b cnoatt-abc.qap100644000765000024 2013140202262 17561 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data "abcnoatt-cpx-xdr100644000765000024 4613140202262 17651 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX @@noatt-cpx.qap100644000765000024 3013140202262 17627 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data &@@noatt-mat-xdr100644000765000024 12513140202262 17656 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  ÿÿÿÿ dim þnoatt-mat.qap100644000765000024 7013140202262 17622 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data 4 0 dimÿÿÿÿnoatt-raw-xdr100644000765000024 3313140202262 17644 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX ÿnoatt-raw.qap100644000765000024 2413140202262 17631 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data % ÿBs4-xdr_xz.rds100644000765000024 25013140202262 17607 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£àÎk],|ùŸø— ?ܪ.¸Om‹¤P˜(•‰dÃâ/B·ÓX_hÆôbrq“rÞ°EÞ\˜8Ø?kò»Ìà#d¶úý?":]wÆI,eÓ^j|ù%œ`¸ Fd£‹ˆíˆz¤–XP¬™“Ô£ƒÏ|ýI>0 ‹YZvecs_xz.RData100644000765000024 35013140202262 17632 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!ÏXÌàìª])TW"änRÊŸ’Ù¢Ä)'dzø$&}ïT©·ÝMi^܃;Vš>Èž˜˜!žº´ú¦÷D*f×a}“æczSx®oZRå6–Ȫû n.Á’ó.óŒ¢ãOÃD‡Aj¬±Àùdü)$sxzÛvFydd\š’)É´€½Ýfm0bŽ9˜Ó£ì3|_|9Á|ÍØ!>pÜ‚€9šiâà²ÿ"<’ĉí“Ä92÷]ÓÂíneF„>0 ‹YZab-mat-xdr.rds100644000765000024 14113140202262 17700 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`b&f“H°ý`Ë30€$Y€ˆ ,ÆÂÀ KÉÌR¼P%Pe(J8€JòsS‹la¨0 ‘gL„1’€Ä?ú걓abc-123l-noxdr100644000765000024 13613140202262 17515 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB   names a b cþall_bzip.RData100644000765000024 366013140202262 17774 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYXæšÝÿÿÿÿÿÿÿÿÿßÿþ}Ý¿ïÿùßA¸u¯­þþön¿áÿ_à߀‘t "Šz™4$y4ÑQ´4d4 &=BmFÓSL!è2L™M¢f“Ô2a ?ThyCÒ™OSõ5` ¦5=MSO!“Õhd£#@ЈÐ0†@ ‘£@4ddɉ 4aI@€ 4FŒC@™2È@ h€A hAhŒL@ @Â4 4FÑ‘“&&€dш4 È2 @щ‘ hÄhCF €ÈÑ 22dÄÐ š0H„Ði44&MQSÔõ”ò4Ð=M=M´†›j™ h2P4P 4§T-׿}s74`¿—ú‡‚ó dÏd-‡ÅÖ”°=É9r¹œÂ¦vG?Aiy›^…Ù´ÃnLÎ9=w†5ChZë” .(ȇ ƒ b†$0h¨8 ¤ÌhEh™êûlù…¡Aöï½®‹¹‰ ŒLI6±­Eòø4Ú¨TAD\îv Å0 + ÌéŠiß~§ªûLOh«H,I–d´ŒBw”^žâqOëìžšdËG* (×0™+AòÏöA—œF&™w7÷àW“J”Œ®6¡«ÈˆT¼c7õ4éU±«ÕŸ&ð‘㫃Òeàuû®ÒS}#WfÖd¡zÊRºMÁŒ@ ¦¯xœúÍZë·“zÔ€,„¬¯YÃÏx($Tš.©^}®KåNÚæY–d•y#ŠøÕÂ׬Ãô`ºËM­›pUûvÙ+±™¥ÄP”‰äœòëå C`€ òp1 $$®bPÒ›*찕ÍA„/¨X¾Ö¾ö‡(:úD;¢MÞq©j™yX¶fWJäÙ½e²¤Q«ý+"m1—Éh¡F^¹ŒêÊ­'SQ›»ÏGŽŽ"5.!¤€_(i3†6&4Æ’óKlbJh?2]d’¬lÐ&%A¥ 1 LÀ14 ÝŒmM¡ŒP4†4€ë†ƒ5¤.“Aà´M©´ ±$6„C ÌÄ‚õ‡s$ŽpÒ:Œ™`áLBôì bC™8$råðYÇ~[t‘`_ð!Sþ@¯!œT1C„b®Ûf›mfÆŒ…9ΑPXÐ@”Æ%1ƒh[ÜøBÿU´š!¨.«åü胇BLãƒþxsÞÕu¦¶<7Q†+›ÞÕº(Èðž,c5œD”U#4":?¤FÕ[¼x_ÐÝ9”ÚËùæÖ`¸e>¸¶º]MÙÁˆ ¬°“[¿ûè¯ü¤?˜Ä¯I„Uõi; sÉ–tÌMhÝ!âã²P"ŸCÒžöm‡#iï¥íûûê»|¶ÁއMNÆ›ßR ™Ôø±ÝwqNò^0¯N_tí(Y]†6Æ¢¸$ÆÒÆõ+~¼Ë(|oqÍܧ}iY„ˆåµhÜŸË\Ë=á\òé•F7g<º’‘^]\òg:t¸Á’™Ï"’â R¨Ä_E¤(¸tIcŸñ„bâÎXU%¥|¦g~$®,´M.Áò£ÇgÙHªÄl¡E]¢Gë ‹75§Ûø¼ðöI˜”Àì¬aˆÆt 2 ]‘ØÐP×3˜RI\\ˇ¾eï™ö/„ŠWÙñ¥|žÂR;ܽ1¸ÖfÝûº–¿¹¤¨×>?ȦßÍ;§»™³­„ß.ÇìͯP+Ü’ÇfíËtGŸ)Y±œ–l€ÏiyÅÜôz)ã6QfÓ\ ÿép‘·—DÐ5{zÅ*ÑC ñéxQ•ŒóZfæñãxïÓw䌘M.O Ìý¦kK7èp÷>]hÔÎ#R”Ï+«‹dó¯´Uqø VY§%´F©j,ËĬF32Ó­j':2û…,F ü£î<Ñ<:œvÆÊSÑÎ’ïNˆ{{³½ÝäuÁÊr)˜•Ñ$rh³fꯅLŽÉ¥(”œhFôö)`W£¹·nºÂ9¨„X…*¨I©Â–~¼›$=±ËVšÕNPJ–læ[Ã¥âEý a ¨¦K}PäÈM§Q))°G „V¬B¾‰˜”íFÐâº^ußH̨ÎÀ¨,ˆÈŠû®†¦•²þþþþþþþþþþþþþþ  fixedNewlines þ  parseData h{    (   )     M +  M }  M M M dim   tokens '{' FUNCTION '(' ')'  NUM_CONST expr '+'  NUM_CONST expr '}' expr expr expr text { function ( ) 1  + 2  }   ÿ   parseDataþþÿ   srcfilecopy srcfileþÿ  srcrefþþýþ +ð?@þclos_int-noxdr100644000765000024 257113140202262 20150 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  srcref  srcfileòþþþþ wd ,/Users/davor/projects/Statistics-R-IO/t/dataþþ lines {function() 1L}þ Enc unknownþþ isFile þ  timestamp`çoåÍ ÕA class POSIXct POSIXtþþþþþ filename þþþþþþþþþþþþþþ  fixedNewlines þ  parseData H{     (   )   M } M M  dim   tokens '{' FUNCTION '(' ')'  NUM_CONST expr '}' expr expr text { function ( ) 1L  }  ÿ   parseDataþþÿ   srcfilecopy srcfileþÿ  srcrefþþýþ cpx-0i-xdr.rds100644000765000024 5413140202262 17622 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`fdb`b2ø˜ÑA„* {§&cpx-1i-xdr.rds100644000765000024 5513140202262 17624 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`fdb`b2ø˜‘ ì?@hô}ˆ&cpx-vector-xdr100644000765000024 10613140202262 20043 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX ?ð@@@@@cpx-vector.qap100644000765000024 7013140202262 20010 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data 4&0ð?@@@@@cpx_na-xdr.rds100644000765000024 7113140202262 17771 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`fdb`b2ø˜Åþ ¨óÙÁh˜¸V·=˜]Vempty_char-xdr100644000765000024 2613140202262 20065 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX empty_char.qap100644000765000024 1013140202262 20043 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data "empty_clos-xdr100644000765000024 322613140202262 20155 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  srcref  srcfileòþþþþ wd ,/Users/davor/projects/Statistics-R-IO/t/dataþþ lines {function() {}}þ Enc unknownþþ isFile þ timestampAÕ ¶"õ€c class POSIXct POSIXtþþþþþ filename þþþþþþþþþþþþþþ fixedNewlines þ parseData P{     (   )   {} M } M M  dim   tokens  '{' FUNCTION '(' ')' '{' '}' expr '}' expr expr text  { function ( ) { }  }   ÿ parseDataþþ ÿ srcfilecopy srcfileþ ÿ srcrefþþýþÿ   ÿÿ ÿ srcrefþÿÿ wholeSrcref ÿÿ ÿ srcrefþþ {þempty_clos.qap100644000765000024 3013140202262 20070 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data {empty_expr-xdr100644000765000024 2613140202262 20126 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX empty_expr.qap100644000765000024 1013140202262 20104 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data empty_list-xdr100644000765000024 2613140202262 20123 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX empty_list.qap100644000765000024 1013140202262 20101 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data emptyenv-noxdr100644000765000024 2213140202262 20132 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB òenv_attr-noxdr100644000765000024 35413140202262 20135 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB ýþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþ foo bar fred þenv_bzip.RData100644000765000024 17513140202262 17772 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY%†‰Ï‹ï€ü²H0@3` jI4 ¨$SP@"a‘+ MˆR˜âÿ|äÞÝ¢$nÎÈvY 5dâLhB“!¦Å11n&M P1 Í *–{.½®SŽú¢5ß‹¹"œ(HÃDç€expr_int-noxdr100644000765000024 4213140202262 20115 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  *f-123456-noxdr100644000765000024 11013140202262 17270 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  ×£p=J“@ names fþfoo-123456-xdr100644000765000024 11213140202262 17273 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX @“J=p£×  names fooþfoo-123456.qap100644000765000024 5013140202262 17241 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data $¡ "foonames ×£p=J“@int_na-xdr.rds100644000765000024 5513140202262 17773 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&/³17ˆÓÀ0 ‹YZlm_ascii.RData100644000765000024 673213140202262 17763 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataRDA2 A 2 196610 131840 1026 1 262153 9 mtcars_lm 787 12 526 2 30.30020347302043 -3.279488055667738 1026 1 262153 5 names 16 2 262153 11 (Intercept) 262153 2 wt 254 526 6 -0.7079447671709411 0.1283246870243219 0.1082088161287272 1.64335062595135 -0.3187645615234077 -0.8531748004100507 1026 767 16 6 262153 9 Mazda\040RX4 262153 13 Mazda\040RX4\040Wag 262153 10 Datsun\040710 262153 14 Hornet\0404\040Drive 262153 17 Hornet\040Sportabout 262153 7 Valiant 254 526 6 -50.21453972705515 -3.397133860755973 0.1337541634872204 1.955278483908743 0.06515889965717214 -0.4628517300540764 1026 767 16 6 262153 11 (Intercept) 262153 2 wt 262153 0 262153 0 262153 0 262153 0 254 13 1 2 526 6 21.70794476717094 20.87167531297568 22.69179118387127 19.75664937404865 19.01876456152341 18.95317480041005 1026 767 16 6 262153 9 Mazda\040RX4 262153 13 Mazda\040RX4\040Wag 262153 10 Datsun\040710 262153 14 Hornet\0404\040Drive 262153 17 Hornet\040Sportabout 262153 7 Valiant 254 13 2 0 1 787 5 526 12 -2.449489742783178 0.4082482904638631 0.4082482904638631 0.4082482904638631 0.4082482904638631 0.4082482904638631 -7.319891848017064 1.03587322261623 0.5421071260020566 -0.3218982179526443 -0.5391062653155581 -0.5584136473033726 1026 1 262153 3 dim 13 2 6 2 1026 1 262153 8 dimnames 19 2 16 6 262153 9 Mazda\040RX4 262153 13 Mazda\040RX4\040Wag 262153 10 Datsun\040710 262153 14 Hornet\0404\040Drive 262153 17 Hornet\040Sportabout 262153 7 Valiant 16 2 262153 11 (Intercept) 262153 2 wt 1026 1 262153 6 assign 13 2 0 1 254 14 2 1.408248290463863 1.006327275840203 13 2 1 2 14 1 1e-07 13 1 2 1026 767 16 5 262153 2 qr 262153 5 qraux 262153 5 pivot 262153 3 tol 262153 4 rank 1026 1 262153 5 class 16 1 262153 2 qr 254 13 1 4 531 0 1026 767 16 0 254 6 1 262153 2 lm 1026 1 262153 7 formula 6 1 262153 1 ~ 2 1 262153 3 mpg 2 1 262153 2 wt 254 1026 1 262153 4 data 6 1 262153 4 head 2 1 262153 6 mtcars 254 254 774 1026 1 262153 9 variables 6 1 262153 4 list 2 2815 2 3071 254 1026 1 262153 7 factors 525 2 0 1 1026 1023 13 2 2 1 1026 1279 19 2 16 2 262153 3 mpg 262153 2 wt 16 1 262153 2 wt 254 1026 1 262153 11 term.labels 16 1 262153 2 wt 1026 1 262153 5 order 13 1 1 1026 1 262153 9 intercept 13 1 1 1026 1 262153 8 response 13 1 1 1026 1791 16 2 262153 5 terms 262153 7 formula 1026 1 262153 12 .Environment 253 1026 1 262153 8 predvars 6 4351 2 2815 2 3071 254 1026 1 262153 11 dataClasses 528 2 262153 7 numeric 262153 7 numeric 1026 767 16 2 262153 3 mpg 262153 2 wt 254 254 2559 2 2815 2 3071 254 787 2 14 6 21 21 22.8 21.4 18.7 18.1 14 6 2.62 2.875 2.32 3.215 3.44 3.46 1026 767 16 2 262153 3 mpg 262153 2 wt 1026 1 262153 5 terms 774 1026 4095 6 4351 2 2815 2 3071 254 1026 4607 525 2 0 1 1026 1023 13 2 2 1 1026 1279 19 2 16 2 262153 3 mpg 262153 2 wt 16 1 262153 2 wt 254 1026 4863 16 1 262153 2 wt 1026 5119 13 1 1 1026 5375 13 1 1 1026 5631 13 1 1 1026 1791 16 2 262153 5 terms 262153 7 formula 1026 5887 253 1026 6143 6 4351 2 2815 2 3071 254 1026 6399 528 2 262153 7 numeric 262153 7 numeric 1026 767 16 2 262153 3 mpg 262153 2 wt 254 254 2559 2 2815 2 3071 254 1026 1 262153 9 row.names 16 6 262153 9 Mazda\040RX4 262153 13 Mazda\040RX4\040Wag 262153 10 Datsun\040710 262153 14 Hornet\0404\040Drive 262153 17 Hornet\040Sportabout 262153 7 Valiant 1026 1791 16 1 262153 10 data.frame 254 1026 767 16 12 262153 12 coefficients 262153 9 residuals 262153 7 effects 262153 4 rank 262153 13 fitted.values 262153 6 assign 262153 2 qr 262153 11 df.residual 262153 7 xlevels 262153 4 call 262153 5 terms 262153 5 model 1026 1791 16 1 262153 2 lm 254 254 mtcars-xdr.rds100644000765000024 65013140202262 20035 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹uP=LÂ@=ÛòÓ6"F]LG'¯ºo ÑÅAM„ËÑ$á§´"“‹³³ÆMgfg]uvqÑÑx¥÷5öÄ/¹{ï{ß½Þ»V„€Dº‘Rq…n*] º¢¸ˆfàæ“WϸؘÎ=ä½Â¹µkZ7o•Lr½îŸÁtÀ*CË7àá…m-ì«2°ŒÃ½ùêã)û–ò~~À{_üîEÙ±î±Ìôhjü¶7I>éóñª¶ñ…c,Ÿ@;*ayzø~¹>Å*Ý(Ãêdf |™ïËFüyîÖ³ÕpÞò.ìza{öð!®v?ÂÈëàãÏñç生3ÉÞÅc|>þçãïÅrJÝ„dŠ‘.é˜%ž]e¢Ø±š@õó6£’Ñr,Æ…3+Pmâ‚:&õSuè#˜7Mb׉]çbÉvo”þ- ƒ26ˆvT)0a1´2ÔJ‰¸Î «me3LIì÷ì®éj­d·†&S—™zlõl—Ô{È;!íéºüßÒÛÄH *qIºaÓ´´ûþÏjø"ßnoatt-123l-xdr100644000765000024 4213140202262 17534 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  noatt-123l.qap100644000765000024 2413140202262 17521 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data  noatt-list-xdr100644000765000024 16713140202262 20056 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX   a b@& foonoatt-list.qap100644000765000024 10013140202262 20026 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data <8 "a"b!&@"foonoatt-true-xdr100644000765000024 3213140202262 20031 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  noatt-true.qap100644000765000024 2013140202262 20013 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data $ÿÿÿnum_na-xdr.rds100644000765000024 7313140202262 20000 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&³:¨ÍYõ?Ààÿ]¦Ù1@Ê)•>xt000755000765000024 013140202262 14375 5ustar00davorstaff000000000000Statistics-R-IO-1.0002wwk-rserveclient.t100644000765000024 6307313140202262 20266 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/xt#!perl use 5.010; use strict; use warnings FATAL => 'all'; use Test::More; my $rserve_host = $ENV{RSERVE_HOST} || 'localhost'; my $rserve_port = $ENV{RSERVE_PORT} || 6311; if (IO::Socket::INET->new(PeerAddr => $rserve_host, PeerPort => $rserve_port)) { plan tests => 61; } else { plan skip_all => "Cannot connect to Rserve server at localhost:6311"; } use Test::Fatal; use Test::MockObject::Extends; use Statistics::R::IO::Rserve; use Statistics::R::REXP::Integer; use lib 't/lib'; use ShortDoubleVector; use TestCases; ## load the RserveClient macro my $problemSeed = 1234; # var provided by WWk env my $Rserve = {host => $rserve_host}; # fake configuration use File::Spec; use File::Path; use Path::Class; use File::Slurp qw(read_file); my $PG = Test::MockObject::Extends->new(); ## return the last segment of the path $PG->mock('fileFromPath', sub { my ($self, $path) = (shift, shift); (File::Spec->splitpath($path))[-1]; }); ## creates all of the intermediate directories between the tempDirectory $PG->mock('surePathToTmpFile', sub { my ($self, $file) = (shift, shift); my $file_path = Path::Class::file($file); my $file_dir = $file_path->dir; my $tmp_dir = Path::Class::dir(File::Spec->tmpdir); $file_dir = File::Spec->catdir($tmp_dir, $file_dir) unless $tmp_dir->subsumes($file_dir); File::Path::make_path($file_dir); File::Spec->catdir($file_dir, $file_path->basename) }); $PG->mock('warning_message', sub { state @WARNING_messages; my ($self, @messages) = @_; push @WARNING_messages, @messages; }); open(my $macrofile, 'extras/WebWork/RserveClient.pl') || die "Cannot open file: $!"; eval join('', <$macrofile>) || die "Evaluating the macro file failed: $@"; sub check_rserve_eval { my ($rexp, $expected, $message) = @_; my @expected_value = (ref($expected) eq ref([]) ? @{$expected} : $expected); subtest 'rserve eval ' . $message => sub { plan tests => 2; ## NOTE: I'm switching the order of comparisons to ensure ## ShortDoubleVector's 'eq' overload is used ## test the one-time query my @result = rserve_query($rexp); is_deeply(\@expected_value, \@result, $message); ## test the persistent connection @result = rserve_eval($rexp); is_deeply(\@expected_value, \@result, $message) } } ## integer vectors ## serialize 1:3, XDR: true check_rserve_eval( '1:3', Statistics::R::REXP::Integer->new([ 1, 2, 3 ])->to_pl, 'int vector no atts'); ## serialize a=1L, b=2L, c=3L, XDR: true check_rserve_eval( 'c(a=1L, b=2L, c=3L)', Statistics::R::REXP::Integer->new( elements => [ 1, 2, 3 ], attributes => { names => Statistics::R::REXP::Character->new(['a', 'b', 'c']) })->to_pl, 'int vector names att'); ## double vectors ## serialize 1234.56, XDR: true check_rserve_eval( '1234.56', ShortDoubleVector->new([ 1234.56 ])->to_pl, 'double vector no atts'); ## serialize foo=1234.56, XDR: true check_rserve_eval( 'c(foo=1234.56)', ShortDoubleVector->new( elements => [ 1234.56 ], attributes => { names => Statistics::R::REXP::Character->new(['foo']) })->to_pl, 'double vector names att'); ## character vectors ## serialize letters[1:3], XDR: true check_rserve_eval( 'letters[1:3]', Statistics::R::REXP::Character->new([ 'a', 'b', 'c' ])->to_pl, 'character vector no atts'); ## serialize A='a', B='b', C='c', XDR: true check_rserve_eval( 'c(A="a", B="b", C="c")', Statistics::R::REXP::Character->new( elements => [ 'a', 'b', 'c' ], attributes => { names => Statistics::R::REXP::Character->new(['A', 'B', 'C']) })->to_pl, 'character vector names att - xdr'); ## raw vectors ## serialize as.raw(c(1:3, 255, 0), XDR: true check_rserve_eval( 'as.raw(c(1,2,3,255, 0))', Statistics::R::REXP::Raw->new([ 1, 2, 3, 255, 0 ])->to_pl, 'raw vector'); ## list (i.e., generic vector) ## serialize list(1:3, list('a', 'b', 11), 'foo'), XDR: true check_rserve_eval( "list(1:3, list('a', 'b', 11), 'foo')", Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ])->to_pl, 'generic vector no atts'); ## serialize list(foo=1:3, list('a', 'b', 11), bar='foo'), XDR: true check_rserve_eval( "list(foo=1:3, list('a', 'b', 11), bar='foo')", Statistics::R::REXP::List->new( elements => [ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ], attributes => { names => Statistics::R::REXP::Character->new(['foo', '', 'bar']) })->to_pl, 'generic vector names att - xdr'); ## matrix ## serialize matrix(-1:4, 2, 3), XDR: true check_rserve_eval( 'matrix(-1:4, 2, 3)', Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), })->to_pl, 'int matrix no atts'); ## serialize matrix(-1:4, 2, 3, dimnames=list(c('a', 'b'))), XDR: true check_rserve_eval( "matrix(-1:4, 2, 3, dimnames=list(c('a', 'b')))", Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a', 'b']), Statistics::R::REXP::Null->new ]), })->to_pl, 'int matrix rownames'); ## data frames ## serialize head(cars) check_rserve_eval( 'head(cars)', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 4, 4, 7, 7, 8, 9]), ShortDoubleVector->new([ 2, 10, 4, 22, 16, 10]), ], attributes => { names => Statistics::R::REXP::Character->new(['speed', 'dist']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), })->to_pl, 'the cars data frame'); ## serialize head(mtcars) check_rserve_eval( 'head(mtcars)', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 6, 6, 4, 6, 8, 6 ]), ShortDoubleVector->new([ 160, 160, 108, 258, 360, 225 ]), ShortDoubleVector->new([ 110, 110, 93, 110, 175, 105 ]), ShortDoubleVector->new([ 3.90, 3.90, 3.85, 3.08, 3.15, 2.76 ]), ShortDoubleVector->new([ 2.620, 2.875, 2.320, 3.215, 3.440, 3.460 ]), ShortDoubleVector->new([ 16.46, 17.02, 18.61, 19.44, 17.02, 20.22 ]), ShortDoubleVector->new([ 0, 0, 1, 1, 0, 1 ]), ShortDoubleVector->new([ 1, 1, 1, 0, 0, 0 ]), ShortDoubleVector->new([ 4, 4, 4, 3, 3, 3 ]), ShortDoubleVector->new([ 4, 4, 1, 1, 2, 1 ]), ], attributes => { names => Statistics::R::REXP::Character->new([ 'mpg' , 'cyl', 'disp', 'hp', 'drat', 'wt', 'qsec', 'vs', 'am', 'gear', 'carb']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant' ]), })->to_pl, 'the mtcars data frame'); ## serialize head(iris) check_rserve_eval( 'head(iris)', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 5.1, 4.9, 4.7, 4.6, 5.0, 5.4 ]), ShortDoubleVector->new([ 3.5, 3.0, 3.2, 3.1, 3.6, 3.9 ]), ShortDoubleVector->new([ 1.4, 1.4, 1.3, 1.5, 1.4, 1.7 ]), ShortDoubleVector->new([ 0.2, 0.2, 0.2, 0.2, 0.2, 0.4 ]), Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 1 ], attributes => { levels => Statistics::R::REXP::Character->new([ 'setosa', 'versicolor', 'virginica']), class => Statistics::R::REXP::Character->new(['factor']) } ), ], attributes => { names => Statistics::R::REXP::Character->new([ 'Sepal.Length', 'Sepal.Width', 'Petal.Length', 'Petal.Width', 'Species']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), })->to_pl, 'the iris data frame'); ## Call lm(mpg ~ wt, data = head(mtcars)) check_rserve_eval( 'lm(mpg ~ wt, data = head(mtcars))$call', Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) })->to_pl, 'language lm(mpg~wt, head(mtcars))'); ## serialize lm(mpg ~ wt, data = head(mtcars)) check_rserve_eval( 'lm(mpg ~ wt, data = head(mtcars))', Statistics::R::REXP::List->new( elements => [ # coefficients ShortDoubleVector->new( elements => [ 30.3002034730204, -3.27948805566774 ], attributes => { names => Statistics::R::REXP::Character->new(['(Intercept)', 'wt']) }), # residuals ShortDoubleVector->new( elements => [ -0.707944767170941, 0.128324687024322, 0.108208816128727, 1.64335062595135, -0.318764561523408, -0.853174800410051 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # effects ShortDoubleVector->new( elements => [ -50.2145397270552, -3.39713386075597, 0.13375416348722, 1.95527848390874, 0.0651588996571721, -0.462851730054076 ], attributes => { names => Statistics::R::REXP::Character->new([ '(Intercept)', 'wt', '', '', '', '' ]) }), # rank Statistics::R::REXP::Integer->new([2]), # fitted.values ShortDoubleVector->new( elements => [ 21.7079447671709, 20.8716753129757, 22.6917911838713, 19.7566493740486, 19.0187645615234, 18.9531748004101 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # assign Statistics::R::REXP::Integer->new([0, 1]), # qr Statistics::R::REXP::List->new( elements => [ # qr ShortDoubleVector->new( elements => [ -2.44948974278318, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, -7.31989184801706, 1.03587322261623, 0.542107126002057, -0.321898217952644, -0.539106265315558, -0.558413647303373 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 6, 2 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]), Statistics::R::REXP::Character->new([ '(Intercept)', 'wt' ]) ]), assign => Statistics::R::REXP::Integer->new([ 0, 1 ]), }), # qraux ShortDoubleVector->new( [ 1.40824829046386, 1.0063272758402 ]), # pivot Statistics::R::REXP::Integer->new([1, 2]), # tol ShortDoubleVector->new([1E-7]), # rank Statistics::R::REXP::Integer->new([2]), ], attributes => { names => Statistics::R::REXP::Character->new([ "qr", "qraux", "pivot", "tol", "rank" ]), class => Statistics::R::REXP::Character->new(['qr']) }), # df.residual Statistics::R::REXP::Integer->new([4]), # xlevels Statistics::R::REXP::List->new( elements => [], attributes => { names => Statistics::R::REXP::Character->new([]) }), # call Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), # terms Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::Unknown->new(sexptype => 4), predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), # model Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 2.62, 2.875, 2.32, 3.215, 3.44, 3.46 ]), ], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant']), class => Statistics::R::REXP::Character->new(['data.frame']), terms => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::Unknown->new(sexptype => 4), predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), }), ], attributes => { names => Statistics::R::REXP::Character->new([ 'coefficients', 'residuals', 'effects', 'rank', 'fitted.values', 'assign', 'qr', 'df.residual', 'xlevels', 'call', 'terms', 'model', ]), class => Statistics::R::REXP::Character->new(['lm']) })->to_pl, 'lm mpg~wt, head(mtcars)'); while ( my ($name, $value) = each %{TEST_CASES()} ) { SKIP: { skip "not applicable in WebWork macros", 1 if ($value->{skip} || '' =~ 'webwork'); ## If the expected value is wrapped in 'RexpOrUnknown', it will ## be XT_UNKNOWN over Rserve my $expected = $value->{value}->isa('RexpOrUnknown') ? undef : $value->{value}->to_pl; check_rserve_eval($value->{expr}, $expected, $value->{desc}); } } subtest 'R runtime errors' => sub { plan tests => 2; like(exception { rserve_eval('1+"a"') }, qr/Error in 1 \+ "a" : non-numeric argument to binary operator/, 'rserve_eval'); like(exception { rserve_query('1+"a"') }, qr/Error in 1 \+ "a" : non-numeric argument to binary operator/, 'rserve_query'); }; subtest 'Rserve plot' => sub { plan tests => 4; my $remote = rserve_start_plot(); rserve_eval('plot(1)'); my $local = rserve_finish_plot($remote); my $png_contents = read_file($local); ok(-e $local, 'plot file'); ok($png_contents =~ qr/^.PNG\r\n.*IHDR\0\0\x01\xE0\0\0\x01\xE0/s, 'default figure dimensions (480x480)') or diag('True file type: ' . `file $local`); Path::Class::file($local)->remove; $remote = rserve_start_plot('png', 800, 732); rserve_eval('plot(1)'); $local = rserve_finish_plot($remote); $png_contents = read_file($local); ok(-e $local, 'plot file'); ok($png_contents =~ qr/^.PNG\r\n.*IHDR\0\0\x03\x20\0\0\x02\xDC/s, 'custom figure dimensions') or diag('True file type: ' . `file $local`); Path::Class::file($local)->remove; }; my $remote = (rserve_eval("file.path(system.file(package='base'), 'DESCRIPTION')"))[0]; my $local = rserve_get_file($remote); ok(-e $local, 'rserve remote file'); Path::Class::file($local)->remove; subtest 'missing configuration' => sub { plan tests => 2; undef $Rserve; $PG->clear; rserve_query('pi'); my ($request, $args) = $PG->next_call(); is($request, 'warning_message', 'call warning message'); like($args->[1], qr/Calling testing::function is disabled unless Rserve host is configured/, 'missing configuration message') }; ## mock for the Value::traceback function package Value; sub traceback { return " in testing::function at line 123 of some_file" } author-pod-syntax.t100644000765000024 45413140202262 20123 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl BEGIN { unless ($ENV{AUTHOR_TESTING}) { print qq{1..0 # SKIP these tests are for testing by the author\n}; exit } } # This file was automatically generated by Dist::Zilla::Plugin::PodSyntaxTests. use strict; use warnings; use Test::More; use Test::Pod 1.41; all_pod_files_ok(); R000755000765000024 013140202262 17043 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/StatisticsIO.pm100644000765000024 2112413140202262 20070 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/Rpackage Statistics::R::IO; # ABSTRACT: Perl interface to serialized R data $Statistics::R::IO::VERSION = '1.0002'; use 5.010; use strict; use warnings FATAL => 'all'; use Exporter 'import'; our @EXPORT = qw( ); our @EXPORT_OK = qw( readRDS readRData evalRserve ); our %EXPORT_TAGS = ( all => [ @EXPORT_OK ], ); use Statistics::R::IO::REXPFactory; use Statistics::R::IO::Rserve; use IO::Uncompress::Gunzip (); use IO::Uncompress::Bunzip2 (); use IO::Socket::INET (); use Carp; sub readRDS { open (my $f, shift) or croak $!; binmode $f; my ($data, $rc) = ''; while ($rc = read($f, $data, 8192, length $data)) {} croak $! unless defined $rc; if (substr($data, 0, 2) eq "\x1f\x8b") { ## gzip-compressed file seek($f, 0, 0); IO::Uncompress::Gunzip::gunzip $f, \$data; } elsif (substr($data, 0, 3) eq 'BZh') { ## bzip2-compressed file seek($f, 0, 0); IO::Uncompress::Bunzip2::bunzip2 $f, \$data; } elsif (substr($data, 0, 6) eq "\xfd7zXZ\0") { croak "xz-compressed RDS files are not supported"; } my ($value, $state) = @{Statistics::R::IO::REXPFactory::unserialize($data)}; croak 'Could not parse RDS file' unless $state; croak 'Unread data remaining in the RDS file' unless $state->eof; $value } sub readRData { open (my $f, shift) or croak $!; binmode $f; my ($data, $rc) = ''; while ($rc = read($f, $data, 8192, length $data)) {} croak $! unless defined $rc; if (substr($data, 0, 2) eq "\x1f\x8b") { ## gzip-compressed file seek($f, 0, 0); IO::Uncompress::Gunzip::gunzip $f, \$data; } elsif (substr($data, 0, 3) eq 'BZh') { ## bzip2-compressed file seek($f, 0, 0); IO::Uncompress::Bunzip2::bunzip2 $f, \$data; } elsif (substr($data, 0, 6) eq "\xfd7zXZ\0") { croak "xz-compressed RData files are not supported"; } if (substr($data, 0, 5) ne "RDX2\n") { croak 'File does not start with the RData magic number: ' . unpack('H*', substr($data, 0, 5)); } my ($value, $state) = @{Statistics::R::IO::REXPFactory::unserialize(substr($data, 5))}; croak 'Could not parse RData file' unless $state; croak 'Unread data remaining in the RData file' unless $state->eof; Statistics::R::IO::REXPFactory::tagged_pairlist_to_rexp_hash $value; } sub evalRserve { my ($rexp, $server) = (shift, shift); my $rserve = Statistics::R::IO::Rserve->new($server // {}); $rserve->eval($rexp) } 1; # End of Statistics::R::IO __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::IO - Perl interface to serialized R data =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::IO; my $var = Statistics::R::IO::readRDS('file.rds'); print $var->to_pl; my %r_workspace = Statistics::R::IO::readRData('.RData'); while (my ($var_name, $value) = each %r_workspace) { print $var_name, $value; } my $pi = Statistics::R::IO::evalRserve('pi'); print $pi->to_pl; =head1 DESCRIPTION This module is a pure-Perl implementation for reading native data files produced by the L) It provides routines for reading files in the two primary file formats used in R for serializing native objects: =over =item RDS RDS files store a serialization of a single R object (and, if the object contains references to other objects, such as environments, all the referenced objects as well). These files are created in R using the C function and are typically named with the C<.rds> file extension. =item RData RData files store a serialization of a collection of I objects, typically a workspace. These files are created in R using the C function and are typically named with the C<.RData> file extension. (Contents of the R workspace can also be saved automatically on exit to the file named F<.RData>, which is by default automatically read in on startup.) =back As of version 0.04, the module can also evaluate R code on a remote host that runs the L binary R server. This allows Perl programs to access all facilities of R without the need to have a local install of R or link to an R library. See L for invocation and usage information on individual subroutines, and the L for the specification of the file formats. =head1 EXPORT Nothing by default. Optionally, subroutines C, C, and C, or C<:all> for all three. =head1 SUBROUTINES =over 4 =item readRDS EXPR Reads a file in RDS format whose filename is given by EXPR and returns a L object. =item readRData EXPR Reads a file in RData format whose filename is given by EXPR and returns a hash whose keys are the names of objects stored in the file with corresponding values as L instances. =item evalRserve REXPR [ HOSTNAME [, PORT] | HANDLE] Evaluates an R expression, given as text string in REXPR, on an L server and returns its result as a L object. The server location can be specified either by its host name and (optionally) port or by a connected instance of L. The caller passing the HANDLE is responsible for reading (and checking) the server ID that is returned in the first 32-byte response when the connection was established. This allows opening the connection once and reusing it in multiple calls to 'evalRserve'. If only REXPR is given, the function assumes that the server runs on the localhost. If PORT is not specified, it defaults to the standard Rserve port, 6311. The function will close the connection to the Rserve host if it has opened it itself, but not if the connection was passed as a HANDLE. =back =head1 DEPENDENCIES Requires perl 5.010 or newer. =head2 Core modules =over =item * strict =item * warnings =item * overload =item * Carp =item * Exporter =item * Module::Build =item * Scalar::Util =item * Test::More =back =head2 Additional CPAN modules =over =item * Class::Tiny =item * Class::Tiny::Antlers =item * Class::Method::Modifiers =item * namespace::clean =item * Test::Fatal =back =head1 BUGS AND LIMITATIONS The module currently handles the 'version 2' serialization format, used since R 1.4.0 (released in December 2001). Only XDR and native-order binary is implemented, and since the R documentation describes the ASCII save format as "now mainly of historical interest", this is unlikely to change soon. No check is performed that a file stored in native-order binary was created on a platform that used the same order, and it is up to the caller to ensure compatibility. (Given that the default save format is XDR, and the prevalence of Intel platforms, this is unlikely to be a problem for either publicly-distributed or internal data files.) Data files compressed with 'gzip' and 'bzip2' are supported, but not 'xz' ones. Again, given the R defaults ('gzip') and the fact that C is not production-ready, this is unlikely to change soon. There are some R types that are not (yet) implemented, although all typical "user-facing" types -- such as vectors, lists, and environments -- are. The remaining R types will be implemented as-needed; in other words, if you come across one that you need to read a particular file, please send me the type (the id will included in the "unimplemented SEXPTYPE" error message) and, if possible, how it was generated. There are no known bugs in this module. Please report any bugs or feature requests to C, or through the web interface at L. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes. =head1 SUPPORT You can find documentation for this module with the perldoc command. perldoc Statistics::R::IO You can also look for information at: =over =item * RT: CPAN's request tracker (report bugs here) L =item * AnnoCPAN: Annotated CPAN documentation L =item * CPAN Ratings L =item * Search CPAN L =back =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut ABC-abc-xdr.rds100644000765000024 11413140202262 17647 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`b&fSH03°0piÆD# ÆHf``a1 ¬y‰¹©Å@Š>Gà Æpÿ9ŒÇmABCDE-tfftf-xdr100644000765000024 17013140202262 17657 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX   names A B C D EþABCDE-tfftf.qap100644000765000024 6413140202262 17626 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data 0¤," ABCDEnamesÿÿÿall_ascii.RData100644000765000024 1370413140202262 20140 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataRDA2 A 2 196610 131840 1026 1 262153 6 ab_mat 525 6 -1 0 1 2 3 4 1026 1 262153 3 dim 13 2 2 3 1026 1 262153 8 dimnames 19 2 16 2 262153 1 a 262153 1 b 254 254 1026 1 262153 7 abc_chr 528 3 262153 1 a 262153 1 b 262153 1 c 1026 1 262153 5 names 16 3 262153 1 A 262153 1 B 262153 1 C 254 1026 1 262153 7 abc_int 525 3 1 2 3 1026 1535 16 3 262153 1 a 262153 1 b 262153 1 c 254 1026 1 262153 2 e1 4 0 253 254 19 3 1026 1 262153 1 x 16 1 262153 3 foo 254 1026 1 262153 1 y 16 1 262153 3 bar 254 254 254 1026 1 262153 2 e2 4 0 2303 254 19 29 254 254 254 254 1026 2559 13 1 7 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 1026 1 262153 7 foo_num 526 1 1234.56 1026 1535 16 1 262153 3 foo 254 1026 1 262153 11 foobar_list 531 3 13 3 1 2 3 19 3 16 1 262153 1 a 16 1 262153 1 b 14 1 11 16 1 262153 3 foo 1026 1535 16 3 262153 3 foo 262153 0 262153 3 bar 254 1026 1 262153 9 mtcars_lm 787 12 526 2 30.30020347302043 -3.279488055667738 1026 1535 16 2 262153 11 (Intercept) 262153 2 wt 254 526 6 -0.7079447671709411 0.1283246870243219 0.1082088161287272 1.64335062595135 -0.3187645615234077 -0.8531748004100507 1026 1535 16 6 262153 9 Mazda\040RX4 262153 13 Mazda\040RX4\040Wag 262153 10 Datsun\040710 262153 14 Hornet\0404\040Drive 262153 17 Hornet\040Sportabout 262153 7 Valiant 254 526 6 -50.21453972705515 -3.397133860755973 0.1337541634872204 1.955278483908743 0.06515889965717214 -0.4628517300540764 1026 1535 16 6 262153 11 (Intercept) 262153 2 wt 262153 0 262153 0 262153 0 262153 0 254 13 1 2 526 6 21.70794476717094 20.87167531297568 22.69179118387127 19.75664937404865 19.01876456152341 18.95317480041005 1026 1535 16 6 262153 9 Mazda\040RX4 262153 13 Mazda\040RX4\040Wag 262153 10 Datsun\040710 262153 14 Hornet\0404\040Drive 262153 17 Hornet\040Sportabout 262153 7 Valiant 254 13 2 0 1 787 5 526 12 -2.449489742783178 0.4082482904638631 0.4082482904638631 0.4082482904638631 0.4082482904638631 0.4082482904638631 -7.319891848017064 1.03587322261623 0.5421071260020566 -0.3218982179526443 -0.5391062653155581 -0.5584136473033726 1026 767 13 2 6 2 1026 1023 19 2 16 6 262153 9 Mazda\040RX4 262153 13 Mazda\040RX4\040Wag 262153 10 Datsun\040710 262153 14 Hornet\0404\040Drive 262153 17 Hornet\040Sportabout 262153 7 Valiant 16 2 262153 11 (Intercept) 262153 2 wt 1026 1 262153 6 assign 13 2 0 1 254 14 2 1.408248290463863 1.006327275840203 13 2 1 2 14 1 1e-07 13 1 2 1026 1535 16 5 262153 2 qr 262153 5 qraux 262153 5 pivot 262153 3 tol 262153 4 rank 1026 1 262153 5 class 16 1 262153 2 qr 254 13 1 4 531 0 1026 1535 16 0 254 6 1 262153 2 lm 1026 1 262153 7 formula 6 1 262153 1 ~ 2 1 262153 3 mpg 2 1 262153 2 wt 254 1026 1 262153 4 data 6 1 262153 4 head 2 1 262153 6 mtcars 254 254 774 1026 1 262153 9 variables 6 1 262153 4 list 2 5631 2 5887 254 1026 1 262153 7 factors 525 2 0 1 1026 767 13 2 2 1 1026 1023 19 2 16 2 262153 3 mpg 262153 2 wt 16 1 262153 2 wt 254 1026 1 262153 11 term.labels 16 1 262153 2 wt 1026 1 262153 5 order 13 1 1 1026 1 262153 9 intercept 13 1 1 1026 1 262153 8 response 13 1 1 1026 4607 16 2 262153 5 terms 262153 7 formula 1026 1 262153 12 .Environment 253 1026 1 262153 8 predvars 6 7167 2 5631 2 5887 254 1026 1 262153 11 dataClasses 528 2 262153 7 numeric 262153 7 numeric 1026 1535 16 2 262153 3 mpg 262153 2 wt 254 254 5375 2 5631 2 5887 254 787 2 14 6 21 21 22.8 21.4 18.7 18.1 14 6 2.62 2.875 2.32 3.215 3.44 3.46 1026 1535 16 2 262153 3 mpg 262153 2 wt 1026 1 262153 5 terms 774 1026 6911 6 7167 2 5631 2 5887 254 1026 7423 525 2 0 1 1026 767 13 2 2 1 1026 1023 19 2 16 2 262153 3 mpg 262153 2 wt 16 1 262153 2 wt 254 1026 7679 16 1 262153 2 wt 1026 7935 13 1 1 1026 8191 13 1 1 1026 8447 13 1 1 1026 4607 16 2 262153 5 terms 262153 7 formula 1026 8703 253 1026 8959 6 7167 2 5631 2 5887 254 1026 9215 528 2 262153 7 numeric 262153 7 numeric 1026 1535 16 2 262153 3 mpg 262153 2 wt 254 254 5375 2 5631 2 5887 254 1026 1 262153 9 row.names 16 6 262153 9 Mazda\040RX4 262153 13 Mazda\040RX4\040Wag 262153 10 Datsun\040710 262153 14 Hornet\0404\040Drive 262153 17 Hornet\040Sportabout 262153 7 Valiant 1026 4607 16 1 262153 10 data.frame 254 1026 1535 16 12 262153 12 coefficients 262153 9 residuals 262153 7 effects 262153 4 rank 262153 13 fitted.values 262153 6 assign 262153 2 qr 262153 11 df.residual 262153 7 xlevels 262153 4 call 262153 5 terms 262153 5 model 1026 4607 16 1 262153 2 lm 254 1026 1 262153 7 my_cars 787 2 14 6 4 4 7 7 8 9 14 6 2 10 4 22 16 10 1026 1535 16 2 262153 5 speed 262153 4 dist 1026 9727 13 2 NA 6 1026 4607 16 1 262153 10 data.frame 254 1026 1 262153 7 my_iris 787 5 14 6 5.1 4.9 4.7 4.6 5 5.4 14 6 3.5 3 3.2 3.1 3.6 3.9 14 6 1.4 1.4 1.3 1.5 1.4 1.7 14 6 0.2 0.2 0.2 0.2 0.2 0.4 781 6 1 1 1 1 1 1 1026 1 262153 6 levels 16 3 262153 6 setosa 262153 10 versicolor 262153 9 virginica 1026 4607 16 1 262153 6 factor 254 1026 1535 16 5 262153 12 Sepal.Length 262153 11 Sepal.Width 262153 12 Petal.Length 262153 11 Petal.Width 262153 7 Species 1026 9727 13 2 NA 6 1026 4607 16 1 262153 10 data.frame 254 1026 1 262153 9 my_mtcars 787 11 14 6 21 21 22.8 21.4 18.7 18.1 14 6 6 6 4 6 8 6 14 6 160 160 108 258 360 225 14 6 110 110 93 110 175 105 14 6 3.9 3.9 3.85 3.08 3.15 2.76 14 6 2.62 2.875 2.32 3.215 3.44 3.46 14 6 16.46 17.02 18.61 19.44 17.02 20.22 14 6 0 0 1 1 0 1 14 6 1 1 1 0 0 0 14 6 4 4 4 3 3 3 14 6 4 4 1 1 2 1 1026 1535 16 11 262153 3 mpg 262153 3 cyl 262153 4 disp 262153 2 hp 262153 4 drat 262153 2 wt 262153 4 qsec 262153 2 vs 262153 2 am 262153 4 gear 262153 4 carb 1026 9727 16 6 262153 9 Mazda\040RX4 262153 13 Mazda\040RX4\040Wag 262153 10 Datsun\040710 262153 14 Hornet\0404\040Drive 262153 17 Hornet\040Sportabout 262153 7 Valiant 1026 4607 16 1 262153 10 data.frame 254 1026 1 262153 9 noatt_chr 16 3 262153 1 a 262153 1 b 262153 1 c 1026 1 262153 9 noatt_int 13 5 -1 0 1 2 3 1026 1 262153 10 noatt_list 19 3 13 3 1 2 3 19 3 16 1 262153 1 a 16 1 262153 1 b 14 1 11 16 1 262153 3 foo 1026 1 262153 9 noatt_mat 525 6 -1 0 1 2 3 4 1026 767 13 2 2 3 254 1026 1 262153 9 noatt_num 14 1 1234.56 1026 1 262153 9 noatt_raw 24 5 01 02 03 ff 00 254 baseenv-xdr.rds100644000765000024 4313140202262 20143 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&ÃG‹…cars-xdr_xz.rds100644000765000024 26413140202262 20216 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£àw],|ùŸøwPÀoü7+-õ¨ºÞ=Ã;w÷’":µÎeÃ4³ÀÍ@íŽ'ÆÇgl'ÑlfŒ¼ 8Ëa®Zªå¯ð}©h/AN^a}‡œ ¾ÇÝ%û-u›þÊ=¡Ò¸q™U©ëØî»Ž9aÞð‹wx@x˜EF£j>0 ‹YZchar_na-xdr.rds100644000765000024 7113140202262 20114 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&ƒ³!'fNËχ2A€ó?@ùLFÆ!ÖÆ¯;clos_args-noxdr100644000765000024 447013140202262 20312 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  srcref  srcfileòþþþþ wd ,/Users/davor/projects/Statistics-R-IO/t/dataþþ lines {function(a, b) {a - b}}þ Enc unknownþþ isFile þ  timestamp= À Þ ÕA class POSIXct POSIXtþþþþþ filename þþþþþþþþþþþþþþ  fixedNewlines þ  parseData ˜{   (  $  ,$){  - M }MMM}MM dim  tokens '{' FUNCTION '(' SYMBOL_FORMALS ',' SYMBOL_FORMALS ')' '{' SYMBOL '-' expr SYMBOL '}' expr expr expr '}' expr expr text { function ( a , b ) { a -  b }    }  ÿ   parseDataþþÿ   srcfilecopy srcfileþÿ  srcrefþþý aû bûþÿ ÿÿÿ  srcrefþ ÿÿÿ  srcrefþÿÿ  wholeSrcref ÿÿÿ  srcrefþþ { -ÿÿþþclos_dots-noxdr100644000765000024 567013140202262 20332 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  srcref $$ srcfileòþþþþ wd ,/Users/davor/projects/Statistics-R-IO/t/dataþþ lines %{function(x=3, y, ...) {x * log(y) }}þ Enc unknownþþ isFile þ  timestamp*XÉ- ÕA class POSIXct POSIXtþþþþþ filename þþþþþþþþþþþþþþ  fixedNewlines þ  parseData è{' $  ($  $$  %$    M$,$$ $, $$ $)${!*M(  (M!!"")!!M"M$$}!"M!$M!$%%}"'$M$'%M' dim  tokens '{' FUNCTION '(' SYMBOL_FORMALS  EQ_FORMALS  NUM_CONST expr ',' SYMBOL_FORMALS ',' SYMBOL_FORMALS ')' '{' SYMBOL '*' expr SYMBOL_FUNCTION_CALL '(' expr SYMBOL ')' expr expr '}' expr expr '}' expr expr text { function ( x = 3  , y , ... ) { x *  log (  y )   }   }  ÿ   parseDataþþÿ   srcfilecopy srcfileþÿ  srcrefþþý x@ yû ...ûþÿ ÿÿÿ  srcrefþ ""ÿÿÿ  srcrefþÿÿ  wholeSrcref $$ÿÿÿ  srcrefþþ { *ÿ logÿþþþclos_null-noxdr100644000765000024 256613140202262 20334 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  srcref  srcfileòþþþþ wd ,/Users/davor/projects/Statistics-R-IO/t/dataþþ lines {function() NULL}þ Enc unknownþþ isFile þ  timestampš#ñ¿Ì ÕA class POSIXct POSIXtþþþþþ filename þþþþþþþþþþþþþþ  fixedNewlines þ  parseData H{     (   )   M } M M  dim   tokens '{' FUNCTION '(' ')'  NULL_CONST expr '}' expr expr text { function ( ) NULL  }  ÿ   parseDataþþÿ   srcfilecopy srcfileþÿ  srcrefþþýþþempty_cpx-noxdr100644000765000024 2613140202262 20277 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB empty_int-noxdr100644000765000024 2613140202262 20277 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  empty_lgl-noxdr100644000765000024 2613140202262 20263 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  empty_num-noxdr100644000765000024 2613140202262 20304 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB empty_raw-noxdr100644000765000024 2613140202262 20276 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB empty_sym-noxdr100644000765000024 2213140202262 20311 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB ûenv_ascii.RData100644000765000024 50513140202262 20113 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataRDA2 A 2 196610 131840 1026 1 262153 2 e1 4 0 253 254 19 3 1026 1 262153 1 x 16 1 262153 3 foo 254 1026 1 262153 1 y 16 1 262153 3 bar 254 254 254 1026 1 262153 2 e2 4 0 767 254 19 29 254 254 254 254 1026 1023 13 1 7 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 expr_call-noxdr100644000765000024 12313140202262 20256 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  +ð?@þexpr_many-noxdr100644000765000024 23213140202262 20310 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  u v +ð? :"@þþexpr_null-noxdr100644000765000024 3213140202262 20274 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB þfoo-cpx-xdr.rds100644000765000024 11113140202262 20107 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`fdb`b1ù£80À Hœ…H³æ%æ¦H‚Ìiùù@êÏx×!Rfoobar-list-xdr100644000765000024 26613140202262 20201 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX   a b@& foo names foo  barþfoobar-list.qap100644000765000024 14013140202262 20155 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data \X" foobarnames "a"b!&@"fooframes_xz.RData100644000765000024 124013140202262 20166 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!ÏXÌà1c])TW"änRÊŸ’Ù¢Ä)'dzø$&}ïT©·âÝÊŸµ 1R/]ŽÓ“´ÜSÙb¨INè'lü’Çæ gÕ¨«Ûî´$YÝäï;¨«:ä— ŸªxØõ•(còXÈf½KÁY”œsçRÙdó°*è[ ÄGGKÿ§¼–‘¢1µ‰©*çrì‹…cî>´ƒÁx;×4“'sL£-,…Ž*Ûy y-ÙÔÜòÙ+ ÐyüB@ƒÝóá 2äÕ’hi}Ip”¬1â¥w{#É_ƒß%e!†1Þ™}‰à1©4¿\”mé„ÄŠ;MH“èÅ¡®~rÙË u /ù(Ú0»æ‡ðHq À¥ø·.¾Î£Ð,^5¼¤Úó•WOy…˜ X?·.,΀ÎÇ7ÒÓ…¸äƒõAƒá7°±?ÐMvó”xë„Ö"ïv3¯4›ƒFöÈ<ÝšçÛÆ¯soÈê!Z @Wø°Ÿ4ܳˆiׯóˆJÃ8¡æ›€óžpü!8öò‚‘ú3„JCB}C`±ås8ó0—! ðÌ ‘û‰vÜ(ïF'7Ƚ¡¦S\¡ÔéŠÄÛµÛ§¾éW8úµ£Œ?ÝÓudÁuUoþZóôÓçY¼DØôË“íRI&é ³òSÏô.£P# dóR¯ìY=ַ޽÷ŒÖèhÒ/ƒ[º‚ãhFQ„~®‘F í‡SEªb•[Ò°>„µ˜CàU–VojeM„”x]l†”j Á›êg³w‚ï5óôx)¾f^|il›7#wì)¨™ÂšeÌž)öK¸§­µ’û²Ü0eô>0 ‹YZglobalenv-noxdr100644000765000024 2213140202262 20234 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB ýiris-xdr_xz.rds100644000765000024 46413140202262 20236 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à\ö],|ùŸøwPÀoü7R}“ OŒ‘縛šEÄ ¾õ]vKÞxa|_sU½†ïãÇ|ƒ”Ît¢iŽìES¢yrzB`“;Bl$7ç·ôÆËó-ŒÖÕIápõŠ=E–4!vϽ0Ø)3±´›Fè.ŒKHÏNr—ÔZHü¯AÕâqÓù(­„¯¿®x‡°±_·vÀ^{]q9Øj>ýÞA-ØzwAòÏøWÖOZŠóÍuOXIšmÑæ2mŠÇ·ð'pÞ… NHóè£Aˆà™mÞq«FñÀòú”ùž–èì —HŽÝ;N>0 ‹YZlist_na-xdr.rds100644000765000024 14513140202262 20174 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&ƒ0ƒ|@ÌhÿxA|(†©óY8Atš L"ÆH…1Ò`Œt rcÄ¥Lnr 41L &Ð"¢"côlSæ-jïÝÇÊ÷â=Ù(eÆ˰vpÃ#ñw$S… ¨Ï¸`noatt-abc-noxdr100644000765000024 6113140202262 20136 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  a b cnoatt-cpx-noxdr100644000765000024 4613140202262 20206 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB @@noatt-mat-noxdr100644000765000024 12513140202262 20213 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  ÿÿÿÿ dim þnoatt-raw-noxdr100644000765000024 3313140202262 20201 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB ÿnoatt-tfftf-xdr100644000765000024 5213140202262 20165 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  noatt-tfftf.qap100644000765000024 2413140202262 20151 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data $ ÿÿÿnull-xdr_xz.rds100644000765000024 11013140202262 20226 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£X þˆ–:‹&GGáB™ YZs4-xdr_bzip.rds100644000765000024 21413140202262 20112 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY$>w¤Vw€þó@ B€@:Ý` j6¤Ç¨C17’‚EF„À™0&™ YØÚêdkQ@xÚ'"%0 Áe4 †V0´M(ÄÀ53Ppa ˜½µ^ŒQÖÍÝJ?»«Ïuñ=ƃø»’)„!ó½ s4_subclass-xdr100644000765000024 37613140202262 20207 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  smooth  x  y@@@ class trackCurve package .GlobalEnvþþs4_subclass.qap100644000765000024 24413140202262 20166 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data  ‡œ˜ smooth x!@@@y¢," .GlobalEnvpackagetrackCurveclassvecs_bzip.RData100644000765000024 33713140202262 20142 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYâ_æÆï²þ³@@|@»cÞ€€°Ø¨iª=@ hÂ4À0ÐÈi“@1 4Ñ¡£ŠSÄ)âjhÓ2€òCÉ ( is => 'ro', ); use overload '""' => sub { my $self = shift; 'maybe ' . $self->obj }, eq => sub { my ($self, $obj) = @_; return $self->obj eq $obj || blessed $obj && $obj->isa('Statistics::R::REXP::Unknown') }; sub BUILDARGS { my $class = shift; if ( scalar @_ == 1 ) { if ( ref $_[0] eq 'HASH' ) { return $_[0]; } else { return { obj => $_[0] } } } else { return @_ } } sub BUILD { my ($self, $args) = (shift, shift); die 'Attribute (obj) is required' unless exists $args->{obj}; } 1; # end of RexpOrUnknown abc-123l-xdr.rds100644000765000024 11113140202262 17740 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`b&f“H€Œ`q0›… ÌgaàÒ¬y‰¹©Å@†X"Șc$ÁÉ@â%¿Ý^clos_add-xdr.rds100644000765000024 107013140202262 20331 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹UQkÛ0–7Üö<Ø[¼bÚ×u£[!uÆÒ@߆qæ5±¥.!/û'û)û{ì({o;ɹseÅ… Î÷é¾;I'éäË6!Ä$ C|6ÅÇ20ˆEli`y”Ó! GôZ##¶º ¸ }C‹ÞѳxN´È¶ýr/ä…—€A*¡ær*¾®byíOÍ™? ¤¹ŸåéwqæyÈcÆãˆ~9Ž|.xøÄ¨{ó8¡LØ]Ï®“ˆÇiÒ¼:òŽ75OI¤…í_'WIºLž˜ª³³mêmØRãeóxA™˜ã@þvn~ý~óG_y4®ÜÄ%|‡—Ç)‹.¯îjíâZòT’pAµœšo9]ñwõ#x–£4û¹ûRëQ;¿‚²Þï@7/Ãó/®ûÉ-ÁVÚÞ—&rÿÆ—Óç€clos_int-xdr.rds100644000765000024 100413140202262 20370 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹TÍkÛ0—7‰›¦-ì\Ø- ¬˜ÞÇ`´+ 4ÎXèm3ŽZÙXê’ò'öØ?¡ìÞ{?$û=OV\˜áéýô>¤ç§Ÿt½K©‘º£Æº‚ 5¸5âOD¥tFH½£f­Ì£3r½x掕ÝTÙ36§ º$ÿž”¼(ù ä0H)µ¶œªñа|ò'‚¦ÂŸ†âÔOÒø7¤ðÇ2”LH‰ãǃ‘/U€ ßYugÎ8ÖÂëÙ-$‹y¯ÿñärS‘WÿÆ#+«yËox¼äïìÔ`â<ÿó]h©ˆò$[P!ÃE¢öȺøõ¡}ÿÿýeÍC…×°„ï£ñà:’¸e6•å¦V×Ò‡Âõþ©ñYÒ•üR½ÂÿHi—ÎŒ­è4 Kl:v©êD¦‚žeG—qíÂ6e zÏ⢗k§6˜›¢îéã4ümK÷¬èï\×ëïèÓнªðëo>Ì?°´¦W³¢~3ß3üŽ‘þ½–):e (G›[ù2eNÊø†rd‘‡‰Ýuyq> N¯£ põºì#ô‚Éðçé(_Á¥«$-â6Ý sŽË帚lV1κ (ÜItôôñ…8¹Dе± Ð#ï•”yn’ͤnˆ7¬ X'wÛošµõhWã4’Åy8çiycpx-vector-noxdr100644000765000024 10613140202262 20400 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB ð?@@@@@empty_char-noxdr100644000765000024 2613140202262 20422 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB empty_clos-noxdr100644000765000024 322613140202262 20512 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  srcref  srcfileòþþþþ wd ,/Users/davor/projects/Statistics-R-IO/t/dataþþ lines {function() {}}þ Enc unknownþþ isFile þ  timestampc€õ"¶ ÕA class POSIXct POSIXtþþþþþ filename þþþþþþþþþþþþþþ  fixedNewlines þ  parseData P{     (   )   {} M } M M  dim   tokens '{' FUNCTION '(' ')' '{' '}' expr '}' expr expr text { function ( ) { }  }  ÿ   parseDataþþÿ   srcfilecopy srcfileþÿ  srcrefþþýþÿ   ÿÿÿ  srcrefþÿÿ  wholeSrcref ÿÿÿ  srcrefþþ {þempty_expr-noxdr100644000765000024 2613140202262 20463 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB empty_list-noxdr100644000765000024 2613140202262 20460 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB emptyenv-xdr.rds100644000765000024 4313140202262 20367 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&Ã'£ÚŒ‚env_attr-xdr.rds100644000765000024 13213140202262 20361 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@& üâ@, IJP61 fºˆH3§åç)d¡¤Ä"4U,iE©)@š$ ùÂþ›µãøìexpr_int-xdr.rds100644000765000024 5313140202262 20351 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&ƒ9 ¼PZ xOä"f-123456-xdr.rds100644000765000024 10713140202262 17530 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`b&f“H0:Lö²-X|(ÇÂâ3°0piÖ¼ÄÜÔb CI1 Hüí‡ç–Hfoo-123456-noxdr100644000765000024 11213140202262 17630 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  ×£p=J“@ names fooþlists_bzip.RData100644000765000024 23413140202262 20334 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYþ«—^“€þ;HD@³'œ ‰ JhÉ‘  = ‘Aõ14dÍC&ޏiˆà¬²%ÁX÷ 1H ‘òÒ*½“B‡0thD±šˆ¼b¦Ú,_P É³Rv¦•Ã|™DÊbw3Ó}oz[BƒE™Ñ•[Ÿ‹¹"œ(HU˯mats_ascii.RData100644000765000024 34613140202262 20272 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataRDA2 A 2 196610 131840 1026 1 262153 6 ab_mat 525 6 -1 0 1 2 3 4 1026 1 262153 3 dim 13 2 2 3 1026 1 262153 8 dimnames 19 2 16 2 262153 1 a 262153 1 b 254 254 1026 1 262153 9 noatt_mat 525 6 -1 0 1 2 3 4 1026 767 13 2 2 3 254 254 noatt-123456-xdr100644000765000024 3613140202262 17622 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX @“J=p£× noatt-123456.qap100644000765000024 2013140202262 17600 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data ! ×£p=J“@noatt-123l-noxdr100644000765000024 4213140202262 20071 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  noatt-list-noxdr100644000765000024 16713140202262 20413 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB   a b&@ foonoatt-true-noxdr100644000765000024 3213140202262 20366 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  test-rserve-eval100755000765000024 1024713140202262 20440 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data#!/usr/bin/Rscript test_eval <- function(c, expr_name, expr_text) { expr <- c(charToRaw(expr_text), as.raw(0)) request <- if (length(expr) <= 251) { c(as.raw(c(3, 0, 0, 0, length(expr)+4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, length(expr), 0, 0)), expr) } else if (length(expr <= 65531)) { len <- length(expr) hi_len <- as.integer(len %/% 256) lo_len <- as.integer(len %% 256) c(as.raw(c(3L, 0, 0, 0, lo_len + 4L, hi_len, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4L, lo_len, hi_len, 0)), expr) } else stop('expression is too long') writeBin(request, c) r <- readBin(c, 'int', 4, 'little') stopifnot(r[1] == 65537L) d <- readBin(c, 'raw', r[2]) f <- file(paste0(expr_name, '.qap'), open='wb') writeBin(d, con=f) close(f) } # option(warn=2) # exit on warnings c <- socketConnection('localhost', 6311, open = "a+b", blocking = TRUE) r <- readBin(c, "raw", 32) stopifnot(grepl('^Rsrv0103QAP1', rawToChar(r))) tests <- list( `empty_char` = 'character()', `empty_int` = 'integer()', `empty_num` = 'numeric()', `empty_cpx` = 'complex()', `empty_lgl` = 'logical()', `empty_list` = 'list()', `empty_raw` = 'raw()', `empty_sym` = 'bquote()', `empty_expr` = 'expression()', `empty_clos` = 'function() {}', `null` = 'NULL', `char_na` = 'c("foo", "", NA, 23)', `num_na` = 'c(11.3, NaN, -Inf, NA, 0)', `int_na` = 'c(11L, 0L, NA, 0L)', `cpx_na` = 'c(1, NA_complex_, 3i, 0)', `lgl_na` = 'c(TRUE, FALSE, TRUE, NA)', `list_na` = 'list(1, 1L, list("b", list(letters[4:7], NA, c(44.1, NA)), list()))', `list_null` = 'list(NULL)', `pairlist_untagged` = 'as.pairlist(list(1L, 2L, 3L))', `pairlist_tagged` = 'as.pairlist(list(foo=1L, 2L, c=3L))', `noatt-123l`='1:3', `abc-123l`='c(a=1L, b=2L, c=3L)', `noatt-123456`='1234.56', `foo-123456`='c(foo=1234.56)', `f-123456`='c(f=1234.56)', `noatt-cpx`='3+2i', `foo-cpx`='c(foo=3+2i)', `cpx-1i`='1i', `cpx-0i`='5+0i', `cpx-vector`='complex(real=1:3, imaginary=4:6)', `noatt-abc`='letters[1:3]', `ABC-abc`='c(A="a", B="b", C="c")', `noatt-raw`='as.raw(c(1,2,3,255, 0))', `noatt-list`="list(1:3, list('a', 'b', 11), 'foo')", `noatt-true`='TRUE', `noatt-tfftf`='c(T, F, F, T, F)', `ABCDE-tfftf`='c(A=T, B=F, C=F, D=T, E=F)', `foobar-list`="list(foo=1:3, list('a', 'b', 11), bar='foo')", `noatt-mat`='matrix(-1:4, 2, 3)', `ab-mat`="matrix(-1:4, 2, 3, dimnames=list(c('a', 'b')))", `cars`='head(cars)', `mtcars`='head(mtcars)', `iris`='head(iris)', `lang-lm-mpgwt`='lm(mpg ~ wt, data = head(mtcars))$call', `mtcars-lm-mpgwt`='lm(mpg ~ wt, data = head(mtcars))', `expr_null` = 'expression(NULL)', `expr_int` = 'expression(42L)', `expr_call` = 'expression(1+2)', `expr_many` = 'expression(u, v, 1+0:9)', `clos_null` = 'function() NULL', `clos_int` = 'function() 1L', `clos_add` = 'function() 1+2', `clos_args` = 'function(a, b) {a - b}', `clos_defaults` = 'function(a=3, b) {a + b * pi}', `clos_dots` = 'function(x=3, y, ...) {x * log(y) }', `baseenv` = 'baseenv()', `emptyenv` = 'emptyenv()', `globalenv` = 'globalenv()', `env_attr` = 'local({ e <- new.env(parent=globalenv()); attributes(e) <- list(foo = "bar", fred = 1:3); e })', `df_auto_rownames` = 'data.frame(a=1:3, b=c("x", "y", "z"), stringsAsFactors=FALSE)', `df_expl_rownames` = 'data.frame(a=1:3, b=c("x", "y", "z"), stringsAsFactors=FALSE)[1:3,]', `s4` = 'local({ library(methods) track <- setClass("track", slots = c(x="numeric", y="numeric")) t1 <- track(x = 1:4, y = 2:4 + 0) t1 })', `s4_subclass` = 'local({ library(methods) track <- setClass("track", slots = c(x="numeric", y="numeric")) t1 <- track(x = 1:4, y = 2:4 + 0) trackCurve <- setClass("trackCurve", slots = c(smooth = "numeric"), contains = "track") t1s <- trackCurve(t1, smooth = 1:3) t1s })') for (i in seq_along(tests)) { test_eval(c, names(tests)[i], tests[[i]]) } close(c) vecs_ascii.RData100644000765000024 76513140202262 20273 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataRDA2 A 2 196610 131840 1026 1 262153 7 abc_chr 528 3 262153 1 a 262153 1 b 262153 1 c 1026 1 262153 5 names 16 3 262153 1 A 262153 1 B 262153 1 C 254 1026 1 262153 7 abc_int 525 3 1 2 3 1026 767 16 3 262153 1 a 262153 1 b 262153 1 c 254 1026 1 262153 7 foo_num 526 1 1234.56 1026 767 16 1 262153 3 foo 254 1026 1 262153 9 noatt_chr 16 3 262153 1 a 262153 1 b 262153 1 c 1026 1 262153 9 noatt_int 13 5 -1 0 1 2 3 1026 1 262153 9 noatt_num 14 1 1234.56 1026 1 262153 9 noatt_raw 24 5 01 02 03 ff 00 254 LenientSrcFile.pm100644000765000024 306113140202262 20317 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/libpackage LenientSrcFile; # ABSTRACT: 'srcfile' that is equal to another 'srcfile' if it only differs by 'wd' and 'timestamp' use 5.010; use Scalar::Util qw(looks_like_number); use Class::Tiny::Antlers qw(-default around); use namespace::clean; extends 'Statistics::R::REXP::Environment'; ## Loosen the equality check to accept another srcfile environment if ## it only differs by the value of 'wd' and 'timestamp' elements around _eq => sub { my $orig = shift; return unless Statistics::R::REXP::_eq @_; my ($self, $obj) = (shift, shift); # Duplicate from REXP::Environment, except for looser check on the # contents of 'wd' and 'timestamp' return unless _compare_deeply($self->enclosure, $obj->enclosure); my ($a, $b) = ($self->frame, $obj->frame); return unless scalar(keys %$a) == scalar(keys %$b); foreach my $name (keys %$a) { return undef unless exists $b->{$name}; if ($name eq 'wd' || $name eq 'timestamp') { # don't check the exact directory and timestamp, just the # class and attributes return unless Statistics::R::REXP::_eq $a->{$name}, $b->{$name}; } else { # other attributes have to match exactly return unless _compare_deeply($a->{$name}, $b->{$name}); } } return 1 }; ## we have to REXPs `_compare_deeply` this way because private methods ## aren't available in the subclass sub _compare_deeply { Statistics::R::REXP::_compare_deeply(@_) } sub _type { 'lenient_srcfile'; } 1; # End of LenientSrcFile author-pod-coverage.t100644000765000024 53613140202262 20371 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl BEGIN { unless ($ENV{AUTHOR_TESTING}) { print qq{1..0 # SKIP these tests are for testing by the author\n}; exit } } # This file was automatically generated by Dist::Zilla::Plugin::PodCoverageTests. use Test::Pod::Coverage 1.08; use Pod::Coverage::TrustPod; all_pod_coverage_ok({ coverage_class => 'Pod::Coverage::TrustPod' }); REXP.pm100644000765000024 1215313140202262 20341 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/Rpackage Statistics::R::REXP; # ABSTRACT: base class for R objects (Cs) $Statistics::R::REXP::VERSION = '1.0002'; use 5.010; use Scalar::Util qw( blessed ); use Class::Tiny::Antlers; has attributes => ( is => 'ro', ); use overload eq => sub { shift->_eq(@_) }, ne => sub { ! shift->_eq(@_) }; sub BUILD { my ($self, $args) = @_; die "This is an abstract class and must be subclassed" if ref($self) eq __PACKAGE__; # Required methods for my $req ( qw/sexptype to_pl/ ) { die "$req method required" unless $self->can($req); } # Required attribute type die "Attribute 'attributes' must be a hash reference" if defined $self->attributes && ref($self->attributes) ne 'HASH' } sub _eq { my ($self, $obj) = (shift, shift); return undef unless _mutual_isa($self, $obj); my $a = $self->attributes; my $b = $obj->attributes; _compare_deeply($a, $b) } ## Returns true if either argument is a subclass of the other sub _mutual_isa { my ($a, $b) = (shift, shift); ref $a eq ref $b || (blessed($a) && blessed($b) && ($a->isa(ref $b) || $b->isa(ref $a))) } sub _compare_deeply { my ($a, $b) = @_ or die 'Need two arguments'; if (defined($a) and defined($b)) { return 0 unless _mutual_isa($a, $b); if (ref $a eq ref []) { return undef unless scalar(@$a) == scalar(@$b); for (my $i = 0; $i < scalar(@{$a}); $i++) { return undef unless _compare_deeply($a->[$i], $b->[$i]); } } elsif (ref $a eq ref {}) { return undef unless scalar(keys %$a) == scalar(keys %$b); foreach my $name (keys %$a) { return undef unless exists $b->{$name} && _compare_deeply($a->{$name}, $b->{$name}); } } else { return undef unless $a eq $b; } } else { return undef if defined($a) or defined($b); } return 1; } sub is_null { return 0; } sub is_vector { return 0; } sub inherits { my ($self, $class) = @_; my $attributes = $self->attributes; return unless $attributes && $attributes->{'class'}; grep {/^$class$/} @{$attributes->{'class'}->to_pl} } 1; # End of Statistics::R::REXP __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP - base class for R objects (Cs) =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP; # we usually get REXPs from an RDS file: my $rexp = Statistics::R::IO::readRDS('file.rds'); # REXPs are stringifiable say $rexp; # REXPs can be converted to the closest native Perl data type print $rexp->to_pl; =head1 DESCRIPTION An object of this class represents a native R object. This class cannot be directly instantiated (it will die if you call C on it), because it is intended as a base abstract class with concrete subclasses to represent specific object types. An R object has a value and an optional set of named attributes, which themselves are R objects. Because the meaning of 'value' depends on the actual object type (for example, a vector vs. a C, in R terminology), C does not provide a generic value accessor method, although individual subclasses will typically have one. =head1 METHODS =over =item attributes Returns a hash reference to the object's attributes. =item sexptype Returns the I of the corresponding R SEXP type, as listed in L. =item to_pl Returns I representation of the object's value. This is an abstract method; see concrete subclasses for the value returned by specific object types, as well as the way to access the I (-ish) value of the object, if such makes sense. =item is_null Returns TRUE if the object is an R C object. In C's class hierarchy, this is the case only for C. =item is_vector Returns TRUE if the object is an R vector object. In C's class hierarchy, this is the case only for C and its descendants. =item inherits CLASS_NAME Returns TRUE if the object is an instance of R S3-style class C, in the same fashion as the R function C>. =back =head1 OVERLOADS C overloads the stringification, C and C methods; subclasses further specialize for their types if necesssary. =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. More C accessors should be added. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILD =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut rexp-baseenvironment.t100644000765000024 253413140202262 20711 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 12; use Test::Fatal; use Statistics::R::REXP::BaseEnvironment; my $env = new_ok('Statistics::R::REXP::BaseEnvironment', [], 'new BaseEnv'); is($env, $env, 'self equality'); my $env_2 = Statistics::R::REXP::BaseEnvironment->new; is($env, $env_2, 'null equality'); isnt($env, 'null', 'null inequality'); ## cannot set enclosure or attributes on the base environment like(exception { Statistics::R::REXP::BaseEnvironment->new(frame => { }) }, qr/Nothing can be assigned to the base environment/, 'setting base env contents'); like(exception { Statistics::R::REXP::BaseEnvironment->new(enclosure => $env_2) }, qr/Base environment has an implicit enclosure/, 'setting base env enclosure'); like(exception { Statistics::R::REXP::BaseEnvironment->new(attributes => { foo => 'bar', x => 42 }) }, qr/Base environment has implicit attributes/, 'setting base env attributes'); ok(!$env->is_null, 'is not null'); ok(!$env->is_vector, 'is not vector'); is($env .'', 'environment R_BaseEnv', 'text representation'); ## attributes is_deeply($env->attributes, undef, 'default attributes'); ## Perl representation like(exception { $env->to_pl }, qr/Environments do not have a native Perl representation/, 'Perl representation'); ab-mat-xdr_xz.rds100644000765000024 21013140202262 20416 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à’K],|ùŸøw3q…øà^ô†&Som2|àЋøU{ þ’¼i/”È/·ÿÖ¸? å.™6ŠqÈ¡¹× üŸ%ùÿr†Jê@úê±c“Œ“/c>0 ‹YZABCDE-tfftf-noxdr100644000765000024 17013140202262 20214 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB   names A B C D Eþcars-xdr_bzip.rds100644000765000024 24413140202262 20517 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYOÈ™oÀÿ3HTA@@/'Ü€@ Š Si3SÚ£4@<($TÔÓF&M4a …_ÌionK‰5z£Áæ‚&d Äð1À!Þˆ:3›Hlûa@E¢i 014¢h˜‘©½qT‚q•²µôÊÂŒ²×N$Ì­%‹ ×U©e—ñw$S… ü™clos_args-xdr.rds100644000765000024 131213140202262 20534 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹VÝŽ1nþd”Í&&\˜,$Lx5YHH0‹›¬WfJfÈLW0ÞÃÇñ%¼õ!¼5Ši;´eÐU’Î9íw¾sÚÓö”ë"@H¾¢êä“ÕˆA¢À·}4 S&½|ŒD *Lo°>TØ9ž9sDÔ, ¿ï¤ý"­FÚ#¦³&QµÕ”|«ÂH§{ ?èN­žß]úÞdã ;ÆvìØyiöG]L °uÀë½¹ã¢@q|În];žÛ²:ÍI»ZM³9ÙlRd^¹¶BÏݺ7®·r„Ô GSPdY)Vì,P€­Å’ĨDÀù×Ò·ò—£§ê ì¹ðh| ¯Gãþµyȸ‹åì¦N.íŽk-²&ý Fkü,ÝÃ]š¥÷_M‰/â†À7ÿ¯ ñNÅö÷_ä7 |ŽŸRU¾âSgÁR£±-ª©w{7È巰Ɖgá¿W½«á‹7ýÑ0ZªŒßž.ÞõF—ƒó‹qbÐù›Aûl?ŽNmÀä@­—þ£MšÑ!ýærV²QÍPräҰËW,®t¸2áJ[õ²36™öHQeŠA¼ŽÂÈEP¬Db]K yù-±gÎö–Ÿö_>•µ÷´&uó§’Pþ¡Nè`ÄÐt Â-=¤Ñ•j±¦BŸ=Ôáe¶w™ŸäU¼ÉÇ`wóÿÙ«jX•Vï½9§ý÷@¾æÿ 7¸;aôºëâ I«[*-gþÄJ 8 clos_defaults-xdr100644000765000024 536313140202262 20632 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  srcref  srcfileòþþþþ wd ,/Users/davor/projects/Statistics-R-IO/t/dataþþ lines {function(a=3, b) {a + b * pi}}þ Enc unknownþþ isFile þ timestampAÕ -W¥¿j class POSIXct POSIXtþþþþþ filename þþþþþþþþþþþþþþ fixedNewlines þ parseData Ð{!   (  $  %    M,$ ) { +M*M}MMMM}!M!M! dim  tokens '{' FUNCTION '(' SYMBOL_FORMALS EQ_FORMALS NUM_CONST expr ',' SYMBOL_FORMALS ')' '{' SYMBOL '+' expr SYMBOL '*' expr SYMBOL '}' expr expr expr expr '}' expr expr text { function ( a = 3  , b ) { a +  b *  pi }     }   ÿ parseDataþþ ÿ srcfilecopy srcfileþ ÿ srcrefþþý a@ bûþÿ ÿÿ ÿ srcrefþ ÿÿ ÿ srcrefþÿÿ wholeSrcref ÿÿ ÿ srcrefþþ { +ÿ *ÿ piþþþclos_defaults.qap100644000765000024 15413140202262 20570 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data hd$!@ab8{,+a*bpiclos_dots-xdr.rds100644000765000024 155413140202262 20561 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹¥V_OAßã(ŠÑb­¦jÑ`àʃ¯µ©µš˜ð§Mì“!ÇÑ^…;ÂBH?_?@¿CŸûÚTº{·sîgCÛKöfn~ówwog¯’„QúV)£¯h„2 ‰’8=½g´QSô+î!̧YÎgù·‚¬ç¨uËl”ÿùAÇi:69χdé7é{IK—ŽÑsJÍÆg»WêöìO†î:¥ºÛpMÇ5ugï|ï¬Vr©‚ÛxÀ룶ir¼;jÝZºkÚV~pxPÌ ‹™ýý}-3d ™¶ý!?Ô2ãqˆ7õÄÒ‘¯¹[ëÆ²ûÖñc¦sêÏG’O ÑJ¸fÇpÜF§Kc,2àèÛÂÞ×/W\ŽÞn8PNRx[«Ÿ]é.„ô>]yªC“‹³¥²Õ{á÷e¸‡Y†%Õ2F³jôa)`&”°™è6zŽñÆ[Po~”Å1â4‡vh§JíÔ$¢y¶œ>/S%Ë·0à 2UvÙjxJ¦ ÃblqBpöT8ö‹ˆ‰ÿ÷¾$S/¿¤€/#Z䵞æô‰`ŸðUD5ž àkˆŽx.Ûü{]¦ÊÏâ>C”îlò˜Ž­{˜Ÿ´€orúœûgë·"ä›A4Ïkݱÿ«¾-S/ÿ§B^;ˆj|.ÂìÁÿzHüßêË":æ6x~Eû-_ìßüí":æ¾ðÿ#Úg\ìÏù¬|D6Íñ·Çý2ä3ѵo N±M0Ìrp.^V/ÎjÕÊ´X_y]+_ŸÖÎ+Gå:—&OÞ!I¢zY¹>®Uë\5Ý^à¯øg3(h¹é¼c¾nr!ÁWÀ!¯ñúø¨\ž.T4Á~µ0%¹Àñ©ÈëeÝ­–2 zo¥äsÌgŠÀ ±D¥ dŽyﺀ<ª´{ãDÈT !ÆxvÀ›¢Ä„ÈSl_b3 ¡gÏó‹’nw!-áî„­¦.gA³ý…ÖŠN ï!¯âüOE Cúú‰Z6Ûž˜9Ä|XaáÓþ,ÝÅ^°&|óÛ`„Ú©“YJ¼Š'Ü:¹?iÿÚ+Ö´æûí¶Q»à"Ù î å~ÇúÇ`L|áÒ$ô6°'^žï~üéh~¸ clos_null-xdr.rds100644000765000024 100113140202262 20545 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹TÝNÂ0î`1¯ML¼É^À˜"‰#pg–Q’ tËZCx_ÆðÖÑ{ZÖ3·2—tçë9ýNÏN¿®_FåPÞï¼€ñ2sÈD–t°Ð ñ¡|UÌJ«ˆdDvWá]574vQ°‡dŒ4Qô|Šñ-ƾ «‘¢æfƒ8qä9¶{ ‡Ì¸O~h¡ÿˆ=Îìw9aœx¬yßlµm.pwCÖ­1¡˜i‰÷Ã)õ8ñi½qèônn–Ìü%õ4^qJGÔŸÑ {»Š¾½¬Úƒ2VYœL0ãî${ìÈÀÙ{åíõãèE/Ý» JÏA wíN«ïqØr5åé¶fW’ÇBÝ Ö¾©pÂñœŸfgøÏHíR’98xm‡NYÜá‹Õá­ÔvXœ e·55Z‘5Jʧæñ¦`ëò8ñŠfJ®¯¢?µËüy²Wqùܪð÷4+åŲ?É·q#Á‡øvÓ‰*GºKQš´&¹?ÂTd±¶¨.®zÎy·ÕvâP½ÃÀ²¼%çm§ÓUσ0^¸¬e¸#œ®Ç”jÓª1±FÕµ„@@è²…—šCµÉúAi©'õ–To¼.YEýÅV—ZKãB™ YZempty_cpx-xdr.rds100644000765000024 4613140202262 20533 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`fdb`b2øAýÍüºempty_int-xdr.rds100644000765000024 4513140202262 20532 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&/ˆÖ+` empty_lgl-xdr.rds100644000765000024 4513140202262 20516 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&ˆÏÆ÷@empty_num-xdr.rds100644000765000024 4513140202262 20537 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&ˆQÀçempty_raw-xdr.rds100644000765000024 4513140202262 20531 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&ƒˆ$3`empty_sym-xdr.rds100644000765000024 4313140202262 20546 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&ÃobPûexpr_call-xdr.rds100644000765000024 10213140202262 20505 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&ƒ9 l`š…Dkƒ10ð8ö`.æbø@Þ ôSexpr_many-xdr.rds100644000765000024 12513140202262 20543 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&ƒƒŒ , œ º™S$Ø´ÁÚø@û 0À„®Ð Y!ŠB°˜ƒ\ìó èšexpr_null-xdr.rds100644000765000024 5013140202262 20526 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&ƒ9 ÿ–ZNÂfoobar-list-noxdr100644000765000024 26613140202262 20536 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB   a b&@ foo names foo  barþframes_bzip.RData100644000765000024 137213140202262 20477 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYFü·uÿÿÿþgTAÂÄÆyÜ¿çÿ°B€4 @& `GIÀ›Ž»¥pi ž¡âj§µ'¦‘é6¨4hž ¡¡ 4ÔõÔÐh€“SÊz5”õ †šÐ4PhŠ~’¦G©¦š`4L†L‚0Œƒ#0ša4ˆ‘š=A™M=&G© ÔêhMÉ dÕ-e eøEœn¡sF’ƒ…D#lp !ì(JÅBž¼–.4Ï…µÊœÖóxÊhjòXs¦Dƒ83É’L*é!+Bº@¤Q¢ªA,ôYù&óåcé£jÙq±¨ÈÆ´ì”#ȶ $ËËšÍG^–•-V"ÚiW˜A‚"dA¼Ûíᆠi7‘³ƒÆ•IuäÖtï⯗4H„j±#´Ò„Q*„šF˜Û%¡ŒP4†ÁqÙ¹i©‰´”´†ŠZ@Ø11 léØ$î°(šl¼ÕÖÙr1J&b¤&!•&h·~m•k+F Üëù¤ÅKS]–‚µ«VcXó!nÄ{;܆U_UÀ£mÑ/òóñ3:¨ =—ðsñˆv0ªæÄþz›ëvªnÛ‹P  %¸ÓÇiS£V„Á*  ÌŒ`Þcœ¨W¶N)¶é¸Ð Ë…®ƒP:ÂglСŒ¶a„@#çÞ³á*ƒÞ´¢Ð[Å€NS\ÐôYËf AuD„é4l•]©#˜jóÁ F=B©aÐP¨UívS&RÔö€<Â&áŠ8 à­D“lvÙã pO-Œ3>RüÀ¨ÂZZ[Œ8‹ ΰԠýÃç݈=9“S'Q|2V,”I¾vœ4Ðe: dŽ¢*Ê*ÜžøIL@Š 穎͖µyMb;tydºãxnDƒDÅøƒDQE$„µ½dÀ¿8ì»M’ãV_ñ <ÛLx¶.ŠÂ怱"ΛP‹ÈîQhCÿ‹¹"œ(H£~[€globalenv-xdr.rds100644000765000024 4313140202262 20471 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&Ã_2Ç3int_na-xdr_xz.rds100644000765000024 12413140202262 20531 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à%],|ùŸø”Yé„FKÑRR.|t“îÊe r¡Y¢%ˆ ú©c\Ö,‚JTeÊÿÕ8Öž[r|•aÌj(&fGw§ÐÑ¡æk)¾ ØJDAH£¡ß½@ ࿆}_¨ 2øz=…3â¦n:~=¡‘9”åŸÈQ @DvG)ÛnÉø[Ö(n>ЪwýF2ZLp—‘±ßÏ Ÿª9cŒöïQ}"@“dìÒgä´*EGŒ·œŠ·Òe%Á•ØÊà’J_0Â+HjµlQÇåÂIÍí0£ät-—ÞÜ7•âÞ6÷1‚…Ðl#˜BgsÏøK$tÛ3/¦Ž39¢w¡«›e­ãŠÚ4– O·zŒzY£¿òTÙÑmÂFÿc=ÐÓÎâã·šgh7·5ÐXƧ¡×: ‡Ž†0 ‹YZnoatt-abc-xdr.rds100644000765000024 6313140202262 20372 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`b&f “Aˆ™X84c"Œ‘c$2ŠŸš1noatt-cpx-xdr.rds100644000765000024 5713140202262 20442 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`fdb`b2ø˜Ñƒ  lþq&noatt-mat-xdr.rds100644000765000024 10513140202262 20443 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`b&f“H°ý`Ë30€$Y€ˆ ,ÆÂÀ KÉÌR¼P%0eÿ´#®Unoatt-raw-xdr.rds100644000765000024 5313140202262 20435 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`b&f “AˆY™˜ÿ3ưnoatt-tfftf-noxdr100644000765000024 5213140202262 20522 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  null-xdr_bzip.rds100644000765000024 6213140202262 20517 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY—˜J~Âø@ !§¡QC)DÍçâîH§ ó OÀnum_na-xdr_xz.rds100644000765000024 14413140202262 20540 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à=)],|ùŸø”Yé„F]\žp±¢½´H€Èã×Cl†}±W¤©áI³ÀÊ)•A>ÄÖ…B™ YZs4_subclass-noxdr100644000765000024 37613140202262 20544 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  smooth  x  y@@@ class  trackCurve package  .GlobalEnvþþrexp-emptyenvironment.t100644000765000024 253413140202262 21135 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 12; use Test::Fatal; use Statistics::R::REXP::EmptyEnvironment; my $env = new_ok('Statistics::R::REXP::EmptyEnvironment', [], 'new EmptyEnv'); is($env, $env, 'self equality'); my $env_2 = Statistics::R::REXP::EmptyEnvironment->new; is($env, $env_2, 'null equality'); isnt($env, 'null', 'null inequality'); ## cannot set enclosure or attributes on the empty environment like(exception { Statistics::R::REXP::EmptyEnvironment->new(frame => { }) }, qr/Nothing can be assigned to the empty environment/, 'setting empty env contents'); like(exception { Statistics::R::REXP::EmptyEnvironment->new(enclosure => $env_2) }, qr/Empty environment has no enclosure/, 'setting empty env enclosure'); like(exception { Statistics::R::REXP::EmptyEnvironment->new(attributes => { foo => 'bar', x => 42 }) }, qr/Empty environment has no attributes/, 'setting empty env attributes'); ok(!$env->is_null, 'is not null'); ok(!$env->is_vector, 'is not vector'); is($env .'', 'environment R_EmptyEnv', 'text representation'); ## attributes is_deeply($env->attributes, undef, 'default attributes'); ## Perl representation like(exception { $env->to_pl }, qr/Environments do not have a native Perl representation/, 'Perl representation'); ABC-abc-xdr_xz.rds100644000765000024 16013140202262 20371 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£àl7],|ùŸøw3q…ún-ê!ÖžOöÆ]SA~ºRZv‡Íòåô9Õ Uìçsf‚•$9ŒÇOmûddB™ YZbaseenv-xdr_xz.rds100644000765000024 11013140202262 20677 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£X ñ‹…&GGáB™ YZchar_na-xdr_xz.rds100644000765000024 14013140202262 20652 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à:(],|ùŸø”Yé„FèÃÕ‰%®½šÆ:m†jXûs‡ikrð!ÖÆ¯@; ôaB™ YZcpx-vector-xdr.rds100644000765000024 7213140202262 20614 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`fdb`b2ø˜Ùþ8@i(-¥9 ´„žJâÅFempty_char-xdr.rds100644000765000024 4513140202262 20655 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&ƒˆåx8empty_clos-xdr.rds100644000765000024 105313140202262 20740 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹UQkÛ0–l×Mœ9-ôy0öâVüÆ`¬+äaIYVè«Q¦5‘¥.&°_µÒ?2ØãÖI–äÊŠ3Ê §;éîÓI§OòMð€Eë 3Mà ‚ôå+Q‰—ø±èõjD(=ÔöP÷¡ƒ>è%Yaa@}?…ür&ä¹¶µ´ Þf!ÚSkäUzÍpÉÒEö5/Ӣ̿`ÄY:ç'ŒÄÎ?žOf)<;0ëÑŠPÌœ‰OªåEœät4~Qív8ÿ=EêøŽÞÒ|Cd »T;tq@GTŸ“5f<["G]Å·÷Ï~¼üõ¹ G«Œ™…{f W³ùäq“²îòvQ;ד‡B³5vö¾æxËßtÏðie‰—d‹S¼1E7•€]•(²’á‹úèj®]YÁ¶TZÇûJÞ3É\=’ÇiõŽk²FNžØÊ$‹%}BË[~ù}Ð>3ÿ‰£%¾×±?Y~há?Vf›Â ²Ö.O§ˆ\ÎòüSòȓ*1¼¹¼ž¾û4™M×(iÌq²ð“1¼-Ê+»½¦@2ÒY¬ë‹k#cŒÝP¸Ó84  ÖíKa3Óæyh®ã@¿v(/¾í?€.jï…mîÑo¥½P! Dœ©Sn½Â63cÐb„Äyç?<%«ÝD 6Ÿóžwý€CËáÿ&¯>—ø ¹€Øp–empty_expr-xdr.rds100644000765000024 4513140202262 20716 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&ƒˆ%ÞÍempty_list-xdr.rds100644000765000024 4513140202262 20713 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&ƒ0ˆ5°foo-123456-xdr.rds100644000765000024 11113140202262 20061 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`b&f“H0:Lö²-X|(ÇÂâ3°0piÖ¼ÄÜÔb CI9-?Hý•ÄoœJfoo-cpx-xdr_xz.rds100644000765000024 16013140202262 20634 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£àQ6],|ùŸø”D’ÿx(iŽòö¯›·˜:yëϱêm| P.ù&ˆ1Áo«Bã²ðPå~xÏx×!NRxçËB™ YZframes_ascii.RData100644000765000024 255113140202262 20623 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataRDA2 A 2 196610 131840 1026 1 262153 7 my_cars 787 2 14 6 4 4 7 7 8 9 14 6 2 10 4 22 16 10 1026 1 262153 5 names 16 2 262153 5 speed 262153 4 dist 1026 1 262153 9 row.names 13 2 NA 6 1026 1 262153 5 class 16 1 262153 10 data.frame 254 1026 1 262153 7 my_iris 787 5 14 6 5.1 4.9 4.7 4.6 5 5.4 14 6 3.5 3 3.2 3.1 3.6 3.9 14 6 1.4 1.4 1.3 1.5 1.4 1.7 14 6 0.2 0.2 0.2 0.2 0.2 0.4 781 6 1 1 1 1 1 1 1026 1 262153 6 levels 16 3 262153 6 setosa 262153 10 versicolor 262153 9 virginica 1026 1279 16 1 262153 6 factor 254 1026 767 16 5 262153 12 Sepal.Length 262153 11 Sepal.Width 262153 12 Petal.Length 262153 11 Petal.Width 262153 7 Species 1026 1023 13 2 NA 6 1026 1279 16 1 262153 10 data.frame 254 1026 1 262153 9 my_mtcars 787 11 14 6 21 21 22.8 21.4 18.7 18.1 14 6 6 6 4 6 8 6 14 6 160 160 108 258 360 225 14 6 110 110 93 110 175 105 14 6 3.9 3.9 3.85 3.08 3.15 2.76 14 6 2.62 2.875 2.32 3.215 3.44 3.46 14 6 16.46 17.02 18.61 19.44 17.02 20.22 14 6 0 0 1 1 0 1 14 6 1 1 1 0 0 0 14 6 4 4 4 3 3 3 14 6 4 4 1 1 2 1 1026 767 16 11 262153 3 mpg 262153 3 cyl 262153 4 disp 262153 2 hp 262153 4 drat 262153 2 wt 262153 4 qsec 262153 2 vs 262153 2 am 262153 4 gear 262153 4 carb 1026 1023 16 6 262153 9 Mazda\040RX4 262153 13 Mazda\040RX4\040Wag 262153 10 Datsun\040710 262153 14 Hornet\0404\040Drive 262153 17 Hornet\040Sportabout 262153 7 Valiant 1026 1279 16 1 262153 10 data.frame 254 254 list_na-xdr_xz.rds100644000765000024 21413140202262 20712 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£àªM],|ùŸø”Yé„F±~U–’.W‰ÈÊð Lyª¬ºoPô/ù!Btû'¾Nu›E긔‡”·@(V T¨Í<9|•£;ÙÚ qe«Öƒ'$>0 ‹YZnoatt-123456-noxdr100644000765000024 3613140202262 20157 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  ×£p=J“@noatt-123l-xdr.rds100644000765000024 5313140202262 20325 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`b&f “ˆA F°8 ñ"©f"noatt-list-xdr.rds100644000765000024 11213140202262 20633 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`b&f “AˆA ^(Í–‡°ar`qNˆ.$ø@ 5@VÀœ–ŸÌwnoatt-true-xdr.rds100644000765000024 4613140202262 20625 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&ˆÏÂø,N‹IO000755000765000024 013140202262 17352 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/RRDS.pm100644000765000024 410713140202262 20502 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/IOpackage Statistics::R::IO::RDS; # ABSTRACT: Supply object methods for RDS files $Statistics::R::IO::RDS::VERSION = '1.0002'; use 5.010; use Class::Tiny::Antlers; extends 'Statistics::R::IO::Base'; use Statistics::R::IO::REXPFactory; use Carp; use namespace::clean; sub read { my $self = shift; my $data = $self->_read_and_uncompress; my ($value, $state) = @{Statistics::R::IO::REXPFactory::unserialize($data)}; croak 'Could not parse RDS file' unless $state; croak 'Unread data remaining in the RDS file' unless $state->eof; $value } 1; __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::IO::RDS - Supply object methods for RDS files =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::IO::RDS; my $rds = Statistics::R::IO::RDS->new('file.rds'); my $var = $rds->read; print $var->to_pl; $rds->close; =head1 DESCRIPTION C provides an object-oriented interface to parsing RDS files. RDS files store a serialization of a single R object (and, if the object contains references to other objects, such as environments, all the referenced objects as well). These files are created in R using the C function and are typically named with the C<.rds> file extension. =head1 METHODS C inherits from L and provides an implementation for the L method that parses RDS files. =over =item read Reads the contents of the filehandle and returns a L. =back =head1 BUGS AND LIMITATIONS Instances of this class are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut io-oo-rserve-eval-live.t100644000765000024 5103313140202262 20764 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl use 5.010; use strict; use warnings FATAL => 'all'; use IO::Socket::INET (); use Socket; use Test::More; ## Low level connections to the server used in tests my $s; my $rserve_host = $ENV{RSERVE_HOST} || 'localhost'; my $rserve_port = $ENV{RSERVE_PORT} || 6311; my $rserve = IO::Socket::INET->new(PeerAddr => $rserve_host, PeerPort => $rserve_port); if ($rserve) { plan tests => 58; $rserve->read(my $response, 32); die "Unrecognized server ID" unless substr($response, 0, 12) eq 'Rsrv0103QAP1'; socket($s, PF_INET, SOCK_STREAM, getprotobyname('tcp')) || die "socket: $!"; connect($s, sockaddr_in($rserve_port, inet_aton($rserve_host))) || die "connect: $!"; $s->read($response, 32); die "Unrecognized server ID" unless substr($response, 0, 12) eq 'Rsrv0103QAP1'; } else { plan skip_all => "Cannot connect to Rserve server at localhost:6311"; } use Test::Fatal; use Statistics::R::IO::Rserve; use Statistics::R::IO::REXPFactory; use lib 't/lib'; use ShortDoubleVector; use TestCases; sub check_rserve_eval_variants { my ($rexp, $expected, $message) = @_; subtest 'rserve eval ' . $message => sub { ## some tests can only be executed when Rserve's host and/or ## port are at a default location, localhost:6311 plan tests => 5 - ( 2*exists($ENV{RSERVE_HOST}) || 3*exists($ENV{RSERVE_PORT})); ## NOTE: I'm switching the order of comparisons to ensure ## ShortDoubleVector's 'eq' overload is used unless (exists($ENV{RSERVE_HOST}) || exists($ENV{RSERVE_PORT})) { is($expected, Statistics::R::IO::Rserve->new->eval($rexp), $message . ' no arg constructor'); } unless (exists $ENV{RSERVE_PORT}) { is($expected, Statistics::R::IO::Rserve->new($rserve_host)->eval($rexp), $message . ' localhost arg'); } is($expected, Statistics::R::IO::Rserve->new($rserve)->eval($rexp), $message . ' handle arg'); is($expected, Statistics::R::IO::Rserve->new($s)->eval($rexp), $message . ' socket arg'); unless (exists($ENV{RSERVE_HOST}) || exists($ENV{RSERVE_PORT})) { is($expected, Statistics::R::IO::Rserve->new(_usesocket => 1)->eval($rexp), $message . ' usesocket arg'); } } } ## integer vectors ## serialize 1:3, XDR: true check_rserve_eval_variants('1:3', Statistics::R::REXP::Integer->new([ 1, 2, 3 ]), 'int vector no atts'); ## serialize a=1L, b=2L, c=3L, XDR: true check_rserve_eval_variants('c(a=1L, b=2L, c=3L)', Statistics::R::REXP::Integer->new( elements => [ 1, 2, 3 ], attributes => { names => Statistics::R::REXP::Character->new(['a', 'b', 'c']) }), 'int vector names att'); ## double vectors ## serialize 1234.56, XDR: true check_rserve_eval_variants('1234.56', ShortDoubleVector->new([ 1234.56 ]), 'double vector no atts'); ## serialize foo=1234.56, XDR: true check_rserve_eval_variants('c(foo=1234.56)', ShortDoubleVector->new( elements => [ 1234.56 ], attributes => { names => Statistics::R::REXP::Character->new(['foo']) }), 'double vector names att'); ## character vectors ## serialize letters[1:3], XDR: true check_rserve_eval_variants('letters[1:3]', Statistics::R::REXP::Character->new([ 'a', 'b', 'c' ]), 'character vector no atts'); ## serialize A='a', B='b', C='c', XDR: true check_rserve_eval_variants('c(A="a", B="b", C="c")', Statistics::R::REXP::Character->new( elements => [ 'a', 'b', 'c' ], attributes => { names => Statistics::R::REXP::Character->new(['A', 'B', 'C']) }), 'character vector names att - xdr'); ## raw vectors ## serialize as.raw(c(1:3, 255, 0), XDR: true check_rserve_eval_variants('as.raw(c(1,2,3,255, 0))', Statistics::R::REXP::Raw->new([ 1, 2, 3, 255, 0 ]), 'raw vector'); ## list (i.e., generic vector) ## serialize list(1:3, list('a', 'b', 11), 'foo'), XDR: true check_rserve_eval_variants("list(1:3, list('a', 'b', 11), 'foo')", Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ]), 'generic vector no atts'); ## serialize list(foo=1:3, list('a', 'b', 11), bar='foo'), XDR: true check_rserve_eval_variants("list(foo=1:3, list('a', 'b', 11), bar='foo')", Statistics::R::REXP::List->new( elements => [ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ], attributes => { names => Statistics::R::REXP::Character->new(['foo', '', 'bar']) }), 'generic vector names att - xdr'); ## matrix ## serialize matrix(-1:4, 2, 3), XDR: true check_rserve_eval_variants('matrix(-1:4, 2, 3)', Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), }), 'int matrix no atts'); ## serialize matrix(-1:4, 2, 3, dimnames=list(c('a', 'b'))), XDR: true check_rserve_eval_variants("matrix(-1:4, 2, 3, dimnames=list(c('a', 'b')))", Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a', 'b']), Statistics::R::REXP::Null->new ]), }), 'int matrix rownames'); ## data frames ## serialize head(cars) check_rserve_eval_variants('head(cars)', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 4, 4, 7, 7, 8, 9]), ShortDoubleVector->new([ 2, 10, 4, 22, 16, 10]), ], attributes => { names => Statistics::R::REXP::Character->new(['speed', 'dist']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), 'the cars data frame'); ## serialize head(mtcars) check_rserve_eval_variants('head(mtcars)', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 6, 6, 4, 6, 8, 6 ]), ShortDoubleVector->new([ 160, 160, 108, 258, 360, 225 ]), ShortDoubleVector->new([ 110, 110, 93, 110, 175, 105 ]), ShortDoubleVector->new([ 3.90, 3.90, 3.85, 3.08, 3.15, 2.76 ]), ShortDoubleVector->new([ 2.620, 2.875, 2.320, 3.215, 3.440, 3.460 ]), ShortDoubleVector->new([ 16.46, 17.02, 18.61, 19.44, 17.02, 20.22 ]), ShortDoubleVector->new([ 0, 0, 1, 1, 0, 1 ]), ShortDoubleVector->new([ 1, 1, 1, 0, 0, 0 ]), ShortDoubleVector->new([ 4, 4, 4, 3, 3, 3 ]), ShortDoubleVector->new([ 4, 4, 1, 1, 2, 1 ]), ], attributes => { names => Statistics::R::REXP::Character->new([ 'mpg' , 'cyl', 'disp', 'hp', 'drat', 'wt', 'qsec', 'vs', 'am', 'gear', 'carb']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant' ]), }), 'the mtcars data frame'); ## serialize head(iris) check_rserve_eval_variants('head(iris)', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 5.1, 4.9, 4.7, 4.6, 5.0, 5.4 ]), ShortDoubleVector->new([ 3.5, 3.0, 3.2, 3.1, 3.6, 3.9 ]), ShortDoubleVector->new([ 1.4, 1.4, 1.3, 1.5, 1.4, 1.7 ]), ShortDoubleVector->new([ 0.2, 0.2, 0.2, 0.2, 0.2, 0.4 ]), Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 1 ], attributes => { levels => Statistics::R::REXP::Character->new([ 'setosa', 'versicolor', 'virginica']), class => Statistics::R::REXP::Character->new(['factor']) } ), ], attributes => { names => Statistics::R::REXP::Character->new([ 'Sepal.Length', 'Sepal.Width', 'Petal.Length', 'Petal.Width', 'Species']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), 'the iris data frame'); ## serialize lm(mpg ~ wt, data = head(mtcars)) check_rserve_eval_variants('lm(mpg ~ wt, data = head(mtcars))', Statistics::R::REXP::List->new( elements => [ # coefficients ShortDoubleVector->new( elements => [ 30.3002034730204, -3.27948805566774 ], attributes => { names => Statistics::R::REXP::Character->new(['(Intercept)', 'wt']) }), # residuals ShortDoubleVector->new( elements => [ -0.707944767170941, 0.128324687024322, 0.108208816128727, 1.64335062595135, -0.318764561523408, -0.853174800410051 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # effects ShortDoubleVector->new( elements => [ -50.2145397270552, -3.39713386075597, 0.13375416348722, 1.95527848390874, 0.0651588996571721, -0.462851730054076 ], attributes => { names => Statistics::R::REXP::Character->new([ '(Intercept)', 'wt', '', '', '', '' ]) }), # rank Statistics::R::REXP::Integer->new([2]), # fitted.values ShortDoubleVector->new( elements => [ 21.7079447671709, 20.8716753129757, 22.6917911838713, 19.7566493740486, 19.0187645615234, 18.9531748004101 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # assign Statistics::R::REXP::Integer->new([0, 1]), # qr Statistics::R::REXP::List->new( elements => [ # qr ShortDoubleVector->new( elements => [ -2.44948974278318, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, -7.31989184801706, 1.03587322261623, 0.542107126002057, -0.321898217952644, -0.539106265315558, -0.558413647303373 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 6, 2 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]), Statistics::R::REXP::Character->new([ '(Intercept)', 'wt' ]) ]), assign => Statistics::R::REXP::Integer->new([ 0, 1 ]), }), # qraux ShortDoubleVector->new( [ 1.40824829046386, 1.0063272758402 ]), # pivot Statistics::R::REXP::Integer->new([1, 2]), # tol ShortDoubleVector->new([1E-7]), # rank Statistics::R::REXP::Integer->new([2]), ], attributes => { names => Statistics::R::REXP::Character->new([ "qr", "qraux", "pivot", "tol", "rank" ]), class => Statistics::R::REXP::Character->new(['qr']) }), # df.residual Statistics::R::REXP::Integer->new([4]), # xlevels Statistics::R::REXP::List->new( elements => [], attributes => { names => Statistics::R::REXP::Character->new([]) }), # call Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), # terms Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::Unknown->new(sexptype => 4), predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), # model Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 2.62, 2.875, 2.32, 3.215, 3.44, 3.46 ]), ], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant']), class => Statistics::R::REXP::Character->new(['data.frame']), terms => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::Unknown->new(sexptype => 4), predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), }), ], attributes => { names => Statistics::R::REXP::Character->new([ 'coefficients', 'residuals', 'effects', 'rank', 'fitted.values', 'assign', 'qr', 'df.residual', 'xlevels', 'call', 'terms', 'model', ]), class => Statistics::R::REXP::Character->new(['lm']) }), 'lm mpg~wt, head(mtcars)'); while ( my ($name, $value) = each %{TEST_CASES()} ) { SKIP: { skip "not yet supported", 1 if ($value->{skip} || '' =~ 'rserve'); check_rserve_eval_variants($value->{expr}, $value->{value}, $value->{desc}); } } io-oo-rserve-eval-mock.t100644000765000024 5602613140202262 20765 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 61; use Test::Fatal; use Test::MockObject::Extends; use Statistics::R::IO::Rserve; use Statistics::R::IO::REXPFactory; use lib 't/lib'; use ShortDoubleVector; use TestCases; sub mock_rserve_response { my $filename = shift; open (my $f, $filename) or die $! . " $filename"; binmode $f; my ($data, $rc) = ''; while ($rc = read($f, $data, 8192, length $data)) {} die $! unless defined $rc; my $response = pack("VVA*", 0x10001, length($data), "\0"x8) . $data; my $mock = Test::MockObject::Extends->new('IO::Socket::INET'); $mock->mock('print', sub { my ($self, $data) = (shift, shift); length($data); }); $mock->mock('read', sub { state $pos = 0; my ($length, $offset) = @_[2..3]; # args: self, $data, length, position $_[1] .= substr($response, $pos, $length); $pos += $length; # advance the cursor $length # return the amount read }); $mock->set_always('peerhost', 'localhost'); $mock->set_always('peerport', 6311) } sub parse_rserve_eval { my ($file, $expected, $message) = @_; my $filename = $file . '.qap'; subtest 'mock ' . $message => sub { plan tests => 11; my $mock = mock_rserve_response($filename); my $rserve = Statistics::R::IO::Rserve->new(fh => $mock); ## NOTE: I'm switching the order of comparisons to ensure ## ShortDoubleVector's 'eq' overload is used is($expected, $rserve->eval('testing, please ignore'), $message); is($mock->next_call(), 'peerhost', 'get server name'); is($mock->next_call(), 'peerport', 'get server port'); my ($request, $args) = $mock->next_call(); is($request, 'print', 'send request'); my ($command, $length, $offset, $length_hi) = unpack('V4', $args->[1]); is($command, 0x03, 'request CMD_eval'); is($length+16, length($args->[1]), 'request length'); is($offset, 0, 'request offset'); is($length_hi, 0, 'request hi-length'); is($mock->next_call(), 'read', 'read response status'); is($mock->next_call(), 'read', 'read response data'); is($mock->next_call(), undef, 'last call'); } } ## integer vectors ## serialize 1:3, XDR: true parse_rserve_eval('t/data/noatt-123l', Statistics::R::REXP::Integer->new([ 1, 2, 3 ]), 'int vector no atts'); ## serialize a=1L, b=2L, c=3L, XDR: true parse_rserve_eval('t/data/abc-123l', Statistics::R::REXP::Integer->new( elements => [ 1, 2, 3 ], attributes => { names => Statistics::R::REXP::Character->new(['a', 'b', 'c']) }), 'int vector names att'); ## double vectors ## serialize 1234.56, XDR: true parse_rserve_eval('t/data/noatt-123456', ShortDoubleVector->new([ 1234.56 ]), 'double vector no atts'); ## serialize foo=1234.56, XDR: true parse_rserve_eval('t/data/foo-123456', ShortDoubleVector->new( elements => [ 1234.56 ], attributes => { names => Statistics::R::REXP::Character->new(['foo']) }), 'double vector names att'); ## character vectors ## serialize letters[1:3], XDR: true parse_rserve_eval('t/data/noatt-abc', Statistics::R::REXP::Character->new([ 'a', 'b', 'c' ]), 'character vector no atts'); ## serialize A='a', B='b', C='c', XDR: true parse_rserve_eval('t/data/ABC-abc', Statistics::R::REXP::Character->new( elements => [ 'a', 'b', 'c' ], attributes => { names => Statistics::R::REXP::Character->new(['A', 'B', 'C']) }), 'character vector names att - xdr'); ## raw vectors ## serialize as.raw(c(1:3, 255, 0), XDR: true parse_rserve_eval('t/data/noatt-raw', Statistics::R::REXP::Raw->new([ 1, 2, 3, 255, 0 ]), 'raw vector'); ## list (i.e., generic vector) ## serialize list(1:3, list('a', 'b', 11), 'foo'), XDR: true parse_rserve_eval('t/data/noatt-list', Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ]), 'generic vector no atts'); ## serialize list(foo=1:3, list('a', 'b', 11), bar='foo'), XDR: true parse_rserve_eval('t/data/foobar-list', Statistics::R::REXP::List->new( elements => [ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ], attributes => { names => Statistics::R::REXP::Character->new(['foo', '', 'bar']) }), 'generic vector names att - xdr'); ## matrix ## serialize matrix(-1:4, 2, 3), XDR: true parse_rserve_eval('t/data/noatt-mat', Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), }), 'int matrix no atts'); ## serialize matrix(-1:4, 2, 3, dimnames=list(c('a', 'b'))), XDR: true parse_rserve_eval('t/data/ab-mat', Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a', 'b']), Statistics::R::REXP::Null->new ]), }), 'int matrix rownames'); ## data frames ## serialize head(cars) parse_rserve_eval('t/data/cars', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 4, 4, 7, 7, 8, 9]), ShortDoubleVector->new([ 2, 10, 4, 22, 16, 10]), ], attributes => { names => Statistics::R::REXP::Character->new(['speed', 'dist']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), 'the cars data frame'); ## serialize head(mtcars) parse_rserve_eval('t/data/mtcars', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 6, 6, 4, 6, 8, 6 ]), ShortDoubleVector->new([ 160, 160, 108, 258, 360, 225 ]), ShortDoubleVector->new([ 110, 110, 93, 110, 175, 105 ]), ShortDoubleVector->new([ 3.90, 3.90, 3.85, 3.08, 3.15, 2.76 ]), ShortDoubleVector->new([ 2.620, 2.875, 2.320, 3.215, 3.440, 3.460 ]), ShortDoubleVector->new([ 16.46, 17.02, 18.61, 19.44, 17.02, 20.22 ]), ShortDoubleVector->new([ 0, 0, 1, 1, 0, 1 ]), ShortDoubleVector->new([ 1, 1, 1, 0, 0, 0 ]), ShortDoubleVector->new([ 4, 4, 4, 3, 3, 3 ]), ShortDoubleVector->new([ 4, 4, 1, 1, 2, 1 ]), ], attributes => { names => Statistics::R::REXP::Character->new([ 'mpg' , 'cyl', 'disp', 'hp', 'drat', 'wt', 'qsec', 'vs', 'am', 'gear', 'carb']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant' ]), }), 'the mtcars data frame'); ## serialize head(iris) parse_rserve_eval('t/data/iris', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 5.1, 4.9, 4.7, 4.6, 5.0, 5.4 ]), ShortDoubleVector->new([ 3.5, 3.0, 3.2, 3.1, 3.6, 3.9 ]), ShortDoubleVector->new([ 1.4, 1.4, 1.3, 1.5, 1.4, 1.7 ]), ShortDoubleVector->new([ 0.2, 0.2, 0.2, 0.2, 0.2, 0.4 ]), Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 1 ], attributes => { levels => Statistics::R::REXP::Character->new([ 'setosa', 'versicolor', 'virginica']), class => Statistics::R::REXP::Character->new(['factor']) } ), ], attributes => { names => Statistics::R::REXP::Character->new([ 'Sepal.Length', 'Sepal.Width', 'Petal.Length', 'Petal.Width', 'Species']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), 'the iris data frame'); ## Call lm(mpg ~ wt, data = head(mtcars)) parse_rserve_eval('t/data/lang-lm-mpgwt', Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), 'language lm(mpg~wt, head(mtcars))'); ## serialize lm(mpg ~ wt, data = head(mtcars)) parse_rserve_eval('t/data/mtcars-lm-mpgwt', Statistics::R::REXP::List->new( elements => [ # coefficients ShortDoubleVector->new( elements => [ 30.3002034730204, -3.27948805566774 ], attributes => { names => Statistics::R::REXP::Character->new(['(Intercept)', 'wt']) }), # residuals ShortDoubleVector->new( elements => [ -0.707944767170941, 0.128324687024322, 0.108208816128727, 1.64335062595135, -0.318764561523408, -0.853174800410051 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # effects ShortDoubleVector->new( elements => [ -50.2145397270552, -3.39713386075597, 0.13375416348722, 1.95527848390874, 0.0651588996571721, -0.462851730054076 ], attributes => { names => Statistics::R::REXP::Character->new([ '(Intercept)', 'wt', '', '', '', '' ]) }), # rank Statistics::R::REXP::Integer->new([2]), # fitted.values ShortDoubleVector->new( elements => [ 21.7079447671709, 20.8716753129757, 22.6917911838713, 19.7566493740486, 19.0187645615234, 18.9531748004101 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # assign Statistics::R::REXP::Integer->new([0, 1]), # qr Statistics::R::REXP::List->new( elements => [ # qr ShortDoubleVector->new( elements => [ -2.44948974278318, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, -7.31989184801706, 1.03587322261623, 0.542107126002057, -0.321898217952644, -0.539106265315558, -0.558413647303373 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 6, 2 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]), Statistics::R::REXP::Character->new([ '(Intercept)', 'wt' ]) ]), assign => Statistics::R::REXP::Integer->new([ 0, 1 ]), }), # qraux ShortDoubleVector->new( [ 1.40824829046386, 1.0063272758402 ]), # pivot Statistics::R::REXP::Integer->new([1, 2]), # tol ShortDoubleVector->new([1E-7]), # rank Statistics::R::REXP::Integer->new([2]), ], attributes => { names => Statistics::R::REXP::Character->new([ "qr", "qraux", "pivot", "tol", "rank" ]), class => Statistics::R::REXP::Character->new(['qr']) }), # df.residual Statistics::R::REXP::Integer->new([4]), # xlevels Statistics::R::REXP::List->new( elements => [], attributes => { names => Statistics::R::REXP::Character->new([]) }), # call Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), # terms Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::Unknown->new(sexptype=>4), predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), # model Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 2.62, 2.875, 2.32, 3.215, 3.44, 3.46 ]), ], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant']), class => Statistics::R::REXP::Character->new(['data.frame']), terms => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::Unknown->new(sexptype=>4), predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), }), ], attributes => { names => Statistics::R::REXP::Character->new([ 'coefficients', 'residuals', 'effects', 'rank', 'fitted.values', 'assign', 'qr', 'df.residual', 'xlevels', 'call', 'terms', 'model', ]), class => Statistics::R::REXP::Character->new(['lm']) }), 'lm mpg~wt, head(mtcars)'); ## Server error my $error_mock = Test::MockObject::Extends->new('IO::Socket::INET'); $error_mock->mock('print', sub { my ($self, $data) = (shift, shift); length($data); }); $error_mock->mock('read', sub { # args: self, $data, length $_[1] = pack('VVA*', 0x10002, 0, "\0"x8); 0 }); $error_mock->set_always('peerhost', 'localhost'); $error_mock->set_always('peerport', 6311); my $rserve = Statistics::R::IO::Rserve->new(fh => $error_mock); like(exception { $rserve->eval('testing, please ignore') }, qr/R server returned an error: 0x10002/, 'server error'); while ( my ($name, $value) = each %{TEST_CASES()} ) { SKIP: { skip "not yet supported", 1 if ($value->{skip} || '' =~ 'rserve'); parse_rserve_eval('t/data/' . $name, $value->{value}, $value->{desc}); } } subtest 'undef server' => sub { plan tests => 3; like(exception { Statistics::R::IO::Rserve->new(server => undef) }, qr/Attribute 'server' must be scalar value/, 'explicit server argument'); like(exception { Statistics::R::IO::Rserve->new(server => undef, _usesocket=>1) }, qr/Attribute 'server' must be scalar value/, 'explicit with low-level sockets'); like(exception { Statistics::R::IO::Rserve->new(undef) }, qr/Attribute 'server' must be scalar value/, 'implicit server argument') } rexp-globalenvironment.t100644000765000024 231713140202262 21236 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl -T use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 11; use Test::Fatal; use Statistics::R::REXP::GlobalEnvironment; my $env = new_ok('Statistics::R::REXP::GlobalEnvironment', [], 'new GlobalEnv'); is($env, $env, 'self equality'); my $env_2 = Statistics::R::REXP::GlobalEnvironment->new; is($env, $env_2, 'null equality'); isnt($env, 'null', 'null inequality'); ## cannot set enclosure or attributes on the global environment like(exception { Statistics::R::REXP::GlobalEnvironment->new(enclosure => $env_2) }, qr/Global environment has an implicit enclosure/, 'setting global env enclosure'); like(exception { Statistics::R::REXP::GlobalEnvironment->new(attributes => { foo => 'bar', x => 42 }) }, qr/Global environment has implicit attributes/, 'setting global env attributes'); ok(!$env->is_null, 'is not null'); ok(!$env->is_vector, 'is not vector'); is($env .'', 'environment R_GlobalEnvironment', 'text representation'); ## attributes is_deeply($env->attributes, undef, 'default attributes'); ## Perl representation like(exception { $env->to_pl }, qr/Environments do not have a native Perl representation/, 'Perl representation'); ab-mat-xdr_bzip.rds100644000765000024 15413140202262 20730 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYôö*?c€ýrH@6# Hbšš?PMÐJjG©È2mL¨ Vq{^šáËÉýÖXb’$¤5E"»À€pL: ÐÁu$OhSÅ~"«HàËGâîH§ žÅRabc-123l-xdr_xz.rds100644000765000024 16013140202262 20465 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à]6],|ùŸøw3q…øàa4¢•" BkQÎß V?Û ã7{Í“úÕ@bóna÷ »AÁ%¿ÝN^S«¯ÂB™ YZABCDE-tfftf-xdr.rds100644000765000024 11713140202262 20447 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì &ˆÏ Ä@8€²Y˜ÀlNš¼ÄÜÔb C¬"Èèc8ÁÎ0† Œá $þTôú:xclos_add-xdr_xz.rds100644000765000024 107413140202262 21056 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à],|ùŸø”Yéœ×ÜdéSc0 Œ,—ïIáäguŽl›ey6:É?«Ú¨ß[ƒ?ˆŸêØ·;£¬AÛDÖ/4öƒ7 ìå¦Zã€Ôë—û(þBý.VsφZ‡%!¿>ª‘\|P¤a༢|ƒ¯›Ý /r¤Ý”ª ™@œ8XLœVÂ3ò'”|5™ª´Üß:rjdÌ-4UTª•FÏUè±6ƒé1]±ÐµîúŒ¦‡‹Qç—ó)fÅ bŽÎç\„v÷ÍÊ” ßgÅp ±ÜÞð½³î¥uîþ%Àce—Ùzm¾¾‹ )2ñ —)e”¾î+6xô!\ ÄÿÚ´3:ºv1··/<^nÕZq†(EsÔ2¯° õ’. Ã¿“5ƒqDDê$™<&•¾§·Á,½!fE‡2\ù“8ó¥®Cç@È*,õô+–š™U^@éÅŒœh/ù‰>¦ïýÙ×”Ë%³éÙ'ð‚—þU!(—â™ üò’ÓhiG@á4·£QÄ“Â@Ö˜a¬u#|ÇB…͇ôðlyZ`>×eïΈ®bj/«ç'o´âG‹šž6ˆ ÄïŽýn_¥‚r;ÓoŸ:f)ó;ÁŽ1°b>d•«ïh6Êæ‘†N”ò¢æÐ¤­ƒü”G-Æ—Ó瘀 [Ãa">0 ‹YZclos_defaults-noxdr100644000765000024 536313140202262 21167 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  srcref  srcfileòþþþþ wd ,/Users/davor/projects/Statistics-R-IO/t/dataþþ lines {function(a=3, b) {a + b * pi}}þ Enc unknownþþ isFile þ  timestampj¿¥W- ÕA class POSIXct POSIXtþþþþþ filename þþþþþþþþþþþþþþ  fixedNewlines þ  parseData Ð{!   (  $  %    M,$ ) { +M*M}MMMM}!M!M! dim  tokens '{' FUNCTION '(' SYMBOL_FORMALS  EQ_FORMALS  NUM_CONST expr ',' SYMBOL_FORMALS ')' '{' SYMBOL '+' expr SYMBOL '*' expr SYMBOL '}' expr expr expr expr '}' expr expr text { function ( a = 3  , b ) { a +  b *  pi }     }  ÿ   parseDataþþÿ   srcfilecopy srcfileþÿ  srcrefþþý a@ bûþÿ ÿÿÿ  srcrefþ ÿÿÿ  srcrefþÿÿ  wholeSrcref ÿÿÿ  srcrefþþ { +ÿ *ÿ piþþþclos_int-xdr_xz.rds100644000765000024 102013140202262 21107 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£àxÓ],|ùŸø”Yéœ×ÜdéSc0 Œ,—ïIáäguŽl›ey6:É?«ÕÊ3[ƒ?ˆŸêØ·;£¬AÛDÖ/4öƒ7 ìå¦Zã€Ôë—û(þBý.VsφZ‡%!¿>ª‘\|P¤a༢|ƒ¯›Ý /r¤Ý”ª ™@œ8KâIZDVš Èîäÿt⇔`” ÎÊ}{ ´®›eŸf°d7ŽJ[¹Ü‘¾V—è‹ñ$ ²FU•˜lr¬œP套–Á·“B¾#0½ÍÙÎmCô4y³ÙŽ˜]Ö®¬|KÁPú‰rKžÑV.þ66Ç/7mò8@bpjo+r:¯’¡W£º½)á®›n‘«<c˜À·è‡D-ˆ--ÐÉôy>m×ËçXÈÐIº!„1V{‰•îeeÿãçZ‘í$2Ä Ïµ¦õEÕ|¿ùï·Õ9ÖJà'¾r9OnÉ:3èr‹¤¼ªK{Ÿä”|ãJÄÅìk_ñ4‹‰Ï,3„]ÒÝ·ðEH¨èZí ÕfåÒîY°º¬ìZ^”Ö`Q¬“—¤’Cèœx‰„­@ëÀBœwÒ)öCÐó†~gI ¦Ÿ0ÍÀ7ˆ8çiëù ·™>0 ‹YZcpx-0i-xdr_bzip.rds100644000765000024 7313140202262 20647 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY’„æx„@@ 1L@•=z¦–ÒÐ Œ.l7¯ÅÜ‘N$$¡G@cpx-1i-xdr_bzip.rds100644000765000024 7213140202262 20647 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYûádÊü€€@@ 10šLj8Þí1$sÔZsŸrE8Pûádcpx_na-xdr_bzip.rds100644000765000024 11613140202262 21035 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYt‡|ÊnüÐÀ@@ 1LA‘¨4iBÔ‚hÖÑ&˜p˜‰óž îäP¯‹¹"œ(H:C¾eemptyenv-xdr_xz.rds100644000765000024 11013140202262 21123 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£X ò£ÚŒ‚&GGáB™ YZenv_attr-xdr_xz.rds100644000765000024 20413140202262 21102 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£àëE],|ùŸø”Yé„E ZÕ'Þ_Ýú¹cVŠžkŸe~ \8¶&—ùЈ%ä©bs†j–ùñ‡UªHKfu¿Èéø·›µãø]ìO‚Ý&>0 ‹YZexpr_int-xdr_xz.rds100644000765000024 12413140202262 21111 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à!],|ùŸø”Yé„FÂÀÈyjïg?$xOä1"}ó»3B™ YZf-123456-xdr_xz.rds100644000765000024 16013140202262 20250 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£àG7],|ùŸøw3q…ùX›ÈŸ±ÇÜË-m>wÅ ì÷cøRWÅWP¹ûž5‚í‡ç–OHC/`/B™ YZfoobar-list-xdr.rds100644000765000024 14413140202262 20763 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`b&fSH€¼Pš,aÃäÀâ, œ :] Hðj 0€¬€9-?Ÿ… Iˆ5/17µªŽY„ÉJJ,Rÿæ”A¶int_na-xdr_bzip.rds100644000765000024 7113140202262 21015 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYÿvšÐB@|@@ 10¨†Ò_¶ÖSÁ¸5CÑYñw$S… ÷i­lang-lm-mpgwt-noxdr100644000765000024 26713140202262 21001 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  lm formula ~ mpg wtþ data head mtcarsþþlgl_na-xdr_bzip.rds100644000765000024 7013140202262 21000 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY¶ÞiÂ@|@@ 1 ¥= é.@áQ½Ô(>ø»’)„…¶ôëHmtcars-lm-mpgwt-xdr100644000765000024 602613140202262 21033 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  @>LÚ"‚Ä´À ðÓP?ÿHÒo^D?°®@ï&€¿ÝŸ\ÜÞ¬€ÿ (Intercept) wt    þ @5µ;ÞF_Ÿ@4ß&ö @6±:cd@3Á³Åüì@3ÍÁ@2ôCƒ!ìÿ Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive Hornet Sportabout Valiantþ  À˜Ž !.?Ú ½p ,??Ú ½p ,??Ú ½p ,??Ú ½p ,??Ú ½p ,?ÀG‘º…ö?ð’ïÌßw?áXñ #o±¿Ô™úû¯Ó¿á@[ÈS+.¿áÞ†LÛ© dim  dimnames Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive Hornet Sportabout Valiant (Intercept) wt assign þ?öˆ/\ ?ðê¡,ç0 >z×òš¼¯H ÿ qr qraux pivot tol rank class qrþ ÿþ lm formula ~ mpg wtþ data head mtcarsþþ variables list ÿ ÿþ factors ÿ ÿ mpg wt wtþ term.labels wt order  intercept  response ÿ terms formula .Environmentý predvarsÿ ÿ ÿþ dataClasses numeric numericÿ mpg wtþþÿ ÿ ÿþ@5@5@6ÌÌÌÌÌÍ@5ffffff@2³33333@2™™™™š@õÂ\(ö@@\(õÂ@ ¸Që…¸@ …¸Që…@ ®záG®ÿ mpg wt termsÿÿ ÿ ÿþÿ ÿ ÿ mpg wt wtþÿ wtÿ ÿ ÿ ÿ terms formulaÿýÿÿ ÿ ÿþÿ numeric numericÿ mpg wtþþÿ ÿ ÿþ row.names Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive Hornet Sportabout Valiantÿ data.frameþÿ  coefficients residuals effects rank fitted.values assign qr df.residual xlevels call terms modelÿ lmþmtcars-lm-mpgwt.qap100644000765000024 433013140202262 21014 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data ÔЈ"dcoefficientsresidualseffectsrankfitted.valuesassignqrdf.residualxlevelscalltermsmodelnames"lmclass¡4 "(Intercept)wtnames´Ä‚"ÚL>@y¹Õ;d< À¡\"LMazda RX4Mazda RX4 WagDatsun 710Hornet 4 DriveHornet SportaboutValiantnamesîóËÈ{§æ¿žúñlÀ?(ii®’³»?¤'¥*Kú?êy·y£fÔ¿3 1=5Më¿¡X$"(Intercept)wtnames„²« vIÀ$¦€„T- ÀPÓð>ÛÁ?D^oÒHÿ?€&ï@®°?€¬ÞÜ\ŸÝ¿ ¡\"LMazda RX4Mazda RX4 WagDatsun 710Hornet 4 DriveHornet SportaboutValiantnamesŸ_FÞ;µ5@ ö&ß4@dc:±6@ìüųÁ3@ÁÍ3@ì!ƒCô2@ €<"qrqrauxpivottolranknames"qrclass¡¤ dimd"LMazda RX4Mazda RX4 WagDatsun 710Hornet 4 DriveHornet SportaboutValiant"(Intercept)wt dimnames assign.! Ž˜À?, p½ Ú??, p½ Ú??, p½ Ú??, p½ Ú??, p½ Ú?ö…º‘GÀwßÌï’ð?±o# ñXá?Ó¯ûú™Ô¿.+SÈ[@á¿©ÛL†Þá¿! \/ˆö?0ç,¡êð? !H¯¼šò×z>  "names\lm~mpgwtformulaheadmtcarsdata–¬listmpgwt variables H< dim"mpgwt"wt dimnamesfactors"wt term.labels order  intercept  response"termsformulaclass0.Environmentlistmpgwt predvars¢,"mpgwtnamesnumericnumeric dataClasses~mpgwt¼P"mpgwtnames–¬listmpgwt variables H< dim"mpgwt"wt dimnamesfactors"wt term.labels order  intercept  response"termsformulaclass0.Environmentlistmpgwt predvars¢,"mpgwtnamesnumericnumeric dataClasses~mpgwtterms"LMazda RX4Mazda RX4 WagDatsun 710Hornet 4 DriveHornet SportaboutValiant row.names" data.frameclass!05@5@ÍÌÌÌÌÌ6@ffffff5@33333³2@š™™™™2@!0ö(\Âõ@@Âõ(\@¸…ëQ¸ @…ëQ¸… @®Gáz® @mtcars-xdr_bzip.rds100644000765000024 75113140202262 21063 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYñ6yXÿÿÿìc@AÂÄÂ9Ü?çÿ°B€4 @€`C0˜)k $i2a¡ŠdõL# FF4L¤ÈE¦ž@ €¦@ Sj<'¤m=@˜&€hz˜M¨fDIé4Ú^ëz̦Ïj+Eq«Cš4ÍÃb®+ž1(Œ‡Œª×JËIC" i¡¦eLÄB“)©)ufþ°S5Ôèái½Ã®ñÚBl(æã£“Á{ë?,úCµá¯b¸%ª„0Eö‹m/éQ@‰4Æ+A§“ f‚M|FÄ6Á¡ çØIö9âÜ”¥0§°*p=l“ ¤Âùh"ƒZ̦²¸b\Ý2Ð;Œ+kžLÝÆSR‡ös¾æ¿Ývóæ(cm§FTÓSÊ«˜nN"u¬v›w2®]Ç %¨Ã|’2Báªeþü[~sªÇµžgl#E?:³ ‡)Žî¢!=ɬö_½Z$E\z²„qò*ƒm \g¯uPñÅÌ0fÁ\ãô9†vL(ƒ¥«=âîH§ &À¯ noatt-tfftf-xdr.rds100644000765000024 5413140202262 20756 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`f’Ì@&ˆÏ ÄŒ fC3*num_na-xdr_bzip.rds100644000765000024 12413140202262 21041 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYÈnlÆV°þ‘@@€0@@ 1L˜™F MQ“Òa6IS4.› Y£ íÖõªË´^'‰ÿrE8PÈnlÆpairlist_tagged-xdr100644000765000024 13613140202262 21116 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX  foo   c þpairlist_tagged.qap100644000765000024 6413140202262 21063 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data 0, foo  cs4_subclass-xdr.rds100644000765000024 22413140202262 20766 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`fba`bf``d–d``aŠ12°0pi¶âÜüü’ ‹ˆ™Á2 `6ŠJÆ ¨"TE >ªÂJ Á’t`€(-@ÕÀšœ“X\ 4PI«¤(19Û¹´¨,M9{P"1(Ì€¢AÏ='?)1Ç5¯ ÈûÂ<4gþClosureLenientEnv.pm100644000765000024 331613140202262 21060 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/libpackage ClosureLenientEnv; # ABSTRACT: closure that is equal to another closure if it only differs by undefined environment or srcrefs use 5.010; use Scalar::Util qw(blessed); use Class::Tiny::Antlers qw(-default around); use namespace::clean; extends 'Statistics::R::REXP::Closure'; ## Loosen the equality check to accept another closure if it only ## differs by having an undefined environment around _eq => sub { my $orig = shift; my ($self, $obj) = (shift, shift); ## if the other closure doesn't have attributes, compare ## only the class ( defined($obj->attributes) ? Statistics::R::REXP::_eq($self, $obj) : (blessed $obj && $obj->isa('Statistics::R::REXP::Closure')) ) && ## compare arguments and their default values exactly _compare_deeply($self->args, $obj->args) && ((scalar(grep {$_} @{$self->defaults}) == scalar(grep {$_} @{$obj->defaults})) || _compare_deeply($self->defaults, $obj->defaults)) && ## if the body is not a null and other closure doesn't have ## body attributes, compare only the body elements ( $self->body->is_null || defined($obj->body->attributes) ? _compare_deeply($self->body, $obj->body) : _compare_deeply($self->body->elements, $obj->body->elements)) && ## if the other closure has undefined environment, accept that as OK (defined($obj->environment) ? _compare_deeply($self->environment, $obj->environment) : 1) }; ## we have to REXPs `_compare_deeply` this way because private methods ## aren't available in the subclass sub _compare_deeply { Statistics::R::REXP::_compare_deeply(@_) } sub _type { 'shortdouble'; } 1; # End of ClosureLenientEnv ShortDoubleVector.pm100644000765000024 207113140202262 21066 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/libpackage ShortDoubleVector; # ABSTRACT: numeric vector that compares elements using use 5.010; use Scalar::Util qw(looks_like_number); use Class::Tiny::Antlers qw(-default around); use namespace::clean; extends 'Statistics::R::REXP::Double'; use Statistics::R::REXP; around _eq => sub { my $orig = shift; return unless Statistics::R::REXP::_eq @_; my ($self, $obj) = (shift, shift); my $a = $self->elements; my $b = $obj->elements; return undef unless scalar(@$a) == scalar(@$b); for (my $i = 0; $i < scalar(@{$a}); $i++) { my $x = $a->[$i]; my $y = $b->[$i]; if (defined($x) && defined($y)) { return undef unless $x eq $y || (abs($x - $y) < 1e-13); } else { return undef if defined($x) or defined($y); } } 1 }; ## we have to REXPs `_compare_deeply` this way because private methods ## aren't available in the subclass sub _compare_deeply { Statistics::R::REXP::Double::_compare_deeply(@_) } sub _type { 'shortdouble'; } 1; Base.pm100644000765000024 1124513140202262 20745 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/IOpackage Statistics::R::IO::Base; # ABSTRACT: Common object methods for processing R files $Statistics::R::IO::Base::VERSION = '1.0002'; use 5.010; use IO::File; use IO::Handle; use IO::Uncompress::Gunzip (); use IO::Uncompress::Bunzip2 (); use Scalar::Util qw(blessed); use Carp; use Class::Tiny::Antlers; has fh => ( is => 'ro', ); sub BUILDARGS { my $class = shift; if ( scalar @_ == 1 ) { if ( defined $_[0] ) { if ( ref $_[0] eq 'HASH' ) { return { %{ $_[0] } } } elsif (ref $_[0] eq '') { my $name = shift; die "No such file '$name'" unless -r $name; my $fh = IO::File->new($name); binmode $fh; return { fh => $fh } } } die "Single parameters to new() must be a HASH ref or filename scalar" } elsif ( @_ % 2 ) { die "The new() method for $class expects a hash reference or a key/value list." . " You passed an odd number of arguments\n"; } else { return {@_} } } sub BUILD { my ($self, $args) = @_; die "This is an abstract class and must be subclassed" if ref($self) eq __PACKAGE__; # Required methods die "'read' method required" unless $self->can('read'); # Required attribute types die "Attribute 'fh' is required" unless defined($args->{fh}); die "Attribute 'fh' must be an instance of IO::Handle or an open filehandle" if defined($args->{fh}) && !((ref($args->{fh}) eq "GLOB" && Scalar::Util::openhandle($args->{fh})) || (blessed($args->{fh}) && $args->{fh}->isa("IO::Handle"))); } sub _read_and_uncompress { my $self = shift; my ($data, $rc) = ''; while ($rc = $self->fh->read($data, 8192, length $data)) {} croak $! unless defined $rc; if (substr($data, 0, 2) eq "\x1f\x8b") { ## gzip-compressed file my $input = $data; IO::Uncompress::Gunzip::gunzip \$input, \$data; } elsif (substr($data, 0, 3) eq 'BZh') { ## bzip2-compressed file my $input = $data; IO::Uncompress::Bunzip2::bunzip2 \$input, \$data; } elsif (substr($data, 0, 6) eq "\xfd7zXZ\0") { croak "xz-compressed R files are not supported"; } $data } sub close { my $self = shift; $self->fh->close } sub DEMOLISH { my $self = shift; ## TODO: should only close if given a filename (OR autoclose, if I ## choose to implement it) $self->close if $self->fh } # sub eof { # my $self = shift; # $self->position >= scalar @{$self->data}; # } 1; __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::IO::Base - Common object methods for processing R files =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::IO::Base; # $f is an instance of Base $f->does('Statistics::R::IO::Base'); my $var = $rds->read; $f->close; =head1 DESCRIPTION An object of this class represents a handle to an R-related file. This class cannot be directly instantiated (it will die if you call C on it), because it is intended as a base abstract class with concrete subclasses to parse specific types of files, such as RDS or RData. =head1 METHODS =head2 CONSTRUCTOR =over =item new $filename The single-argument constructor can be invoked with a scalar containing the name of the R file. This file will be immediately opened for reading using L. The method will raise an exception if the file is not readable. =item new ATTRIBUTE_HASH_OR_HASH_REF The constructor's arguments can also be given as a hash or hash reference, specifying values of the object attributes (in this case, 'fh', for which any subclass of L can be used). =back =head2 ACCESSORS =over =item fh A file handle (stored as a reference to the L) to the data being parsed. =back =head2 METHODS =over =item read Reads the contents of the filehandle and returns a L. =item close Closes the object's filehandle. This method is automatically invoked when the object is destroyed. =back =head1 BUGS AND LIMITATIONS Instances of this class are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILDARGS BUILD DEMOLISH =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut REXP000755000765000024 013140202262 17621 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/RS4.pm100644000765000024 624313140202262 20612 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::S4; # ABSTRACT: an R closure $Statistics::R::REXP::S4::VERSION = '1.0002'; use 5.010; use Scalar::Util qw(blessed); use Class::Tiny::Antlers qw(-default around); use namespace::clean; extends 'Statistics::R::REXP'; use constant sexptype => 'S4SXP'; has class => ( is => 'ro', ); has 'package' => ( is => 'ro', ); has slots => ( is => 'ro', default => sub { {} }, ); use overload '""' => sub { shift->_to_s }; sub BUILD { my ($self, $args) = (shift, shift); # Required attribute die "Attribute 'class' is required" unless defined $args->{class}; # Required attribute type die "Attribute 'class' must be a scalar value" unless defined($self->class) && !ref($self->class); die "Attribute 'slots' must be a reference to a hash of REXPs or undefs" if ref($self->slots) ne 'HASH' || grep { defined($_) && ! (blessed($_) && $_->isa('Statistics::R::REXP')) } values(%{$self->slots}); die "Attribute 'package' must be a scalar value" unless defined($self->package) && !ref($self->package); } around _eq => sub { my $orig = shift; return unless $orig->(@_); my ($self, $obj) = (shift, shift); Statistics::R::REXP::_compare_deeply($self->class, $obj->class) && Statistics::R::REXP::_compare_deeply($self->slots, $obj->slots) && Statistics::R::REXP::_compare_deeply($self->package, $obj->package) }; sub _to_s { my $self = shift; "object of class '" . $self->class . "' (package " . $self->package . ") with " . scalar(keys(%{$self->slots})) . " slots" } sub to_pl { my $self = shift; { class => $self->class, slots => $self->slots, package => $self->package } } 1; # End of Statistics::R::REXP::S4 __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::S4 - an R closure =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::S4; my $s4 = Statistics::R::REXP::S4->new(class => ['some name'], package = '.GlobalEnv'); print $s4->class; =head1 DESCRIPTION An object of this class represents an R S4 object (C). =head1 METHODS C inherits from L. =head2 ACCESSORS =over =item class Name of the object's class. =item package Name of the package in which the object's class is defined (or ".GlobalEnv" if it's defined in the global environment). =item slots A hash reference to the object's slots. =item sexptype SEXPTYPE of symbols is C. =item to_pl Perl value of an S4 instance is a hash with elements C, C, and C. =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILD =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut ABC-abc-xdr_bzip.rds100644000765000024 13313140202262 20674 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY:œò±1ç€þ0@8@: TCPР‘HÚj V¬š{{$eˆ‡-²—Å:Î å&°–•aÐRC_|]ÉáB@êsÊÄbaseenv-xdr_bzip.rds100644000765000024 6213140202262 21170 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY¯×÷ÃÂø@ !§¡QC)DÍçâîH§ úþø`char_na-xdr_bzip.rds100644000765000024 11413140202262 21156 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYÙ.œ½ëü0@@€ 1¦Rzž§¨òœ—Ûj™(5(Õ`­GHãçÙ5·ø»’)„†Étåèclos_args-xdr_xz.rds100644000765000024 127013140202262 21260 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à 7y],|ùŸø”Yéœ×ÜdéSc0 Œ,—ïIáäguŽl›ey6:É?«ú>ïµ£3ò/î·x{‘¯pj>ëŸ>áý_d"‚^!!;tOêAÇú.+›àÕ—‡ ƒ#@É‚gÉ’[ À³±4“Ev é$‹k,kÀš%GXÒ—;ÊÉÁG×+±Ýð@0‘JËqwßoøºü/cDžY.äWÍ&©³ˆ.Lž_¨ÏƒÊË2U¿ö}³B•RÍ7“-·I4fFÚ„e€=›#i£vÉL!^kïÒ›œ3ì»vQ×î¬w+˜ãEÀ‹]ÆD¡ßŠAómá²(C²Ç^<]bh‘Õ¨±$L#e†þëQ é³äê|×Ü2ˆ% 7ûÏ o½ \£ZpIJˎ!gÕ*ù‚tÇ7}еG±›!ž‚<ŽÃà ˃õºU¨×à76FÆoÊ»èšýêhyŽçàÙE“4¶™Ê;¥À)ß>Ž`V÷NÕØ:¤x7ŠSŒ|æHi~àìúI ÜÛÐÚŽº$r¡yÃŽ ê³KÝ€q÷¢<_Fê‚­ƒÛwqÔõèýŸmpŒÇØY²þÇ2´ÕÉl\‰©d´=è!ÊÙ ÊW"sQwˆ­hŸÚ /âŸkX€¿.z„Qw.W¾â­”V÷!8uz”é¸Ã%ðˆ(V°3ú;÷;¼¹´·©¼×-¥Š:/ÃŽ3Ãëi‹&„â;Ü”PÕÁgXÆï«—u³]ÕÆÆÑÌ>{6'%uƒK¬iøÈ,:o·á¢@±=«] 8è6Í-¢Äo`'œþ‹\ÑÑ^à"Ñ[›*ÄJ ‘¸ ë>0 ‹YZclos_dots-xdr_xz.rds100644000765000024 151013140202262 21272 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à · ],|ùŸø”Yéœ×ÜdéSc0 Œ,—ïIáäguŽl›ey6:É?¬*Qr¯:¨³ØI$Vé7g¸§à™ ¡æEžµ»Ælc;‘d#¯Ÿ#'}aO 4a!Æn\P7½²Þ/Æy8ÔyC‰ÂÛ··Wœ(zOi¯ A×è ìYóî›uÃç{÷.Ìo?¢Íଧ ÈqÙ…¿ZÚkdrîuZÇò“yhR<¨-)¡…v§0?—:Ú?b'‡±RÒ°v\@H8zðþË+uËM¿Ù0ÐEwpo)JPXS­ÌQWxé„¡žwþÀqt*…[\ö´v\hÏuò9Þß ØÆ†ø âúqjåKE‡WP~­€ÖÀ%ò+Éc´—܈éø%,–ÖòÄÑåDÊKg*†Ç)B`XSVJf׈SÛ”2 ¯0ö÷Ÿ¦òP øç‘’‚ÛѲÁ ÊW¨ ™W$­â´È£81´[¸½]9ž3QýŠqBoš‰õÈ ‘ì]f“Bm `íç(Mù«ãd?ñ ‚ ËŒ·=PóøÖ(ÿÂS4 `ü•JFp—ÿ LîËWß0xÀ?*:1KnÈok´õ^øÙ9wß͇‰ÍýðÚ³¯nž¢k  l lÆãa¤K|—·º°ò¬D½'·«`ÈÜsoc‘qLp<˜%¿m~M‚†<ýÇ[ºyzôBÌHÁÅ}ì塚ñç–pÔ»no®e†þØžQWv]g)Š*£ú?*“´Øx[gÞZL¯Ý[+?›ðYê ¨Ê#}q5@ʆL›¯ïI…z>áa'a`ï;XKIM§0 ‹YZclos_null-xdr_xz.rds100644000765000024 102013140202262 21267 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£àuÓ],|ùŸø”Yéœ×ÜdéSc0 Œ,—ïIáäguŽl›ey6:É?«ßÂïµ£3ò/î·x{‘¯pj>ëŸ>â(…ˆu6­•à›lqëAj ÚÂÎvÊu‰,êÜŒäßCœt.VNaEkÿŒ PÜQ¥­ÃB¿­3'X=ÝÞ‘3âÞf4Dë_z:Ët´>ÃDâëІuØ9W™ØÞX3²Çl¢¯÷Ç´v†ËÐòxŠ‹¶=¥Ø™¸ä²µ(6ŽZè‹×ÊžOo¤iá§8Í5{U;A’¿·¶K¾p… @û:AI¢Æ'nàå»ï<¾÷nçó»®afúº—g,Ó»h Ì_#™™Îø~ƺ)ž=nÃ!ÎêCvzá¹äÄèßù¡Ö×Å“èɪdœÍ˨mKã2“Çy*ÄX¸]€¥Â% ƒïî"ÂÖ5d·éx=¨Y:ÚúÀÈk 2¹Znàœãû2'»?+÷ °á„|ýÝÝCf /Úî7ú%ÎZ© ¾UÊ]—'÷_0Õ2'"4þ|¡Ø` i¦¼XCnØ—¡-4\ëœlõšÉá$¼,ú¢Ó’ÙôÈ6·k­9ã{#ëö á‰ìV>0 ‹YZdf_auto_rownames-xdr100644000765000024 33013140202262 21304 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX   x y z names a b row.names €ÿÿÿý class data.frameþdf_auto_rownames.qap100644000765000024 16413140202262 21276 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data plL"abnames €ýÿÿÿ row.names" data.frameclass "xyzdf_expl_rownames-xdr100644000765000024 33013140202262 21304 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX   x y z names a b row.names € class data.frameþdf_expl_rownames.qap100644000765000024 16413140202262 21276 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data plL"abnames € row.names" data.frameclass "xyzempty_cpx-xdr_xz.rds100644000765000024 11413140202262 21270 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à],|ùŸø”D’æØí r?àýÍüº,ÔkcíB™ YZempty_int-xdr_xz.rds100644000765000024 11413140202262 21270 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à],|ùŸø”Yé„FLLÖ+` ,ÔkcíB™ YZempty_lgl-xdr_xz.rds100644000765000024 11413140202262 21254 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à],|ùŸø”Yé„Fv_àÆ÷@,ÔkcíB™ YZempty_num-xdr_xz.rds100644000765000024 11413140202262 21275 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à],|ùŸø”Yé„F]£—àQÀç,ÔkcíB™ YZempty_raw-xdr_xz.rds100644000765000024 11413140202262 21267 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à],|ùŸø”Yé„GcÝ€$3`,ÔkcíB™ YZempty_sym-xdr_xz.rds100644000765000024 11013140202262 21302 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£X ûbPû&GGáB™ YZexpr_call-xdr_xz.rds100644000765000024 15013140202262 21231 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£àR-],|ùŸø”Yé„FÂÀÈs¶5¨}Å«Rùù.õ“/ƒ‘Ê|$ŒùäáÄò@Þ ôES%ê_B™ YZexpr_many-xdr_xz.rds100644000765000024 17413140202262 21270 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à™=],|ùŸø”Yé„FÂU˜¹›/ažDXpÎÖóµ}šbÌõ¼ü¡>rä†çè6DgAÒßd5³?ó èUšM¼>0 ‹YZexpr_null-xdr_xz.rds100644000765000024 12013140202262 21265 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à],|ùŸø”Yé„FÂÀÉ›„–ZNÂ/_read_and_uncompress; if (substr($data, 0, 5) ne "RDX2\n") { croak 'File does not start with the RData magic number: ' . unpack('H*', substr($data, 0, 5)); } my ($value, $state) = @{Statistics::R::IO::REXPFactory::unserialize(substr($data, 5))}; croak 'Could not parse RData file' unless $state; croak 'Unread data remaining in the RData file' unless $state->eof; Statistics::R::IO::REXPFactory::tagged_pairlist_to_rexp_hash $value; } 1; __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::IO::RData - Supply object methods for RData files =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::IO::RData; my $rdata = Statistics::R::IO::RData->new('.RData'); my %r_workspace = $rdata->read; while (my ($var_name, $value) = each %r_workspace) { print $var_name, $value; } $rdata->close; =head1 DESCRIPTION C provides an object-oriented interface to parsing RData files. RData files store a serialization of a collection of I objects, typically a workspace. These files are created in R using the C function and are typically named with the C<.RData> file extension. (Contents of the R workspace can also be saved automatically on exit to the file named F<.RData>, which is by default automatically read in on startup.) =head1 METHODS C inherits from L and provides an implementation for the L method that parses RData files. =over =item read Reads a contents of the filehandle and returns a hash whose keys are the names of objects stored in the file with corresponding values as L instances. =back =head1 BUGS AND LIMITATIONS There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut Raw.pm100644000765000024 455613140202262 21062 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::Raw; # ABSTRACT: an R raw vector $Statistics::R::REXP::Raw::VERSION = '1.0002'; use 5.010; use Scalar::Util qw(looks_like_number); use Class::Tiny::Antlers; use namespace::clean; extends 'Statistics::R::REXP::Vector'; use overload; use constant sexptype => 'RAWSXP'; sub _type { 'raw'; } sub BUILDARGS { my $class = shift; my $attributes = $class->SUPER::BUILDARGS(@_); if (ref($attributes->{elements}) eq 'ARRAY') { $attributes->{elements} = [ map int, Statistics::R::REXP::Vector::_flatten(@{$attributes->{elements}}) ] } $attributes } sub BUILD { my ($self, $args) = @_; # Required attribute type die 'Raw vectors cannot have attributes' if defined $self->attributes; die 'Elements of raw vectors must be 0-255' if defined $self->elements && grep { !($_ >= 0 && $_ <= 255) } @{$self->elements} } 1; # End of Statistics::R::REXP::Raw __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::Raw - an R raw vector =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::Raw my $vec = Statistics::R::REXP::Raw->new([ 1, 27, 143, 33 ]); print $vec->elements; =head1 DESCRIPTION An object of this class represents an R raw vector (C). It is intended to hold the data of arbitrary binary objects, for instance bytes read from a socket connection. =head1 METHODS C inherits from L, with the added restriction that its elements are byte values and cannot have missing values. Trying to create a raw vectors with elements that are not numbers in range 0-255 will raise an exception. =over =item sexptype SEXPTYPE of raw vectors is C. =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILDARGS BUILD =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut abc-123l-xdr_bzip.rds100644000765000024 13013140202262 20765 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYY¶)*c€þ2@@: TQ£A„Ñè6•6§¤Ð`”¤‘Xë›N¯`UbMËãëù Ô˜6‰b:D ZƒŸ‘w$S… Õ›bclos_add-xdr_bzip.rds100644000765000024 110613140202262 21355 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY3 J³ÖÿûÈ@î° ï#Þ@¯ßê PÀðàÃCD&©å<ÔÈÓôÔd‘¦Œ¨Ñê4mCFjzƒMMˆiê4 €24€p # ¦!€@2adÉ„`! “TŠi¦“4ÔÀŒ µ1 ˜F™&ž¤¬ÓZ+äÇz¼M¢Ê¯ q´bd+më-NjÍê×ÌÈ9¦‚Í0I (I(D@pG¡#èÍšˆæŒ@HÅuB\k?pØÐŽ¡€U-¥JãAGƒG¹É»"ÊÆ\šµºS¶Zr„ ŒMÂ#ýÐmô–y²{/AvàÁKûÔÓ6õBŽ‹-?èHQ„-Xñ¨ýûÐÒ¹‰Q,œ`@‹ |88mݳvî-][ùµp×Pf¡mökwhRVË’H} ‰($$ ¦B$eæ‘“ ¼ÂbÅ!J*Y èä…•@P"µ ŒMµ[–"J\Rh‘:8ÆX‘³çcú6ÔTëâÆO{Hh…"1„bÒ4 Dð¼Ø€PÀÚE*ÀèÌ$.ë¬Ò†¯>°4°ß<=è=U<úÓ£jNÒƒ)ãê\÷L¥LÇ«Xë„%™&iX³¯`X=ÅJƃµ2\9WÐ M°Cfu5TFÒÁ<òש)1YDc•ôìžåzFoÀú˜ó3›¾~;Wbv Þ5š§¦]MOždmr ‘£g)cŠ¿ô¬+ï•>ÂCHêe¶c_Yíº5‚E€™ º™C×z,e°÷¾#cLcÁ7”½™äœ&”=šRxÁ_N„OËœ>›ð™Óþj |VæÔÇâþâhpÿ« üç^!üÜž–y_ áó /бžQøXä²*Ú 2§S"èwQáeF-küa|i„+<ˆ?òYQx‰ÑFKˆŸAø3Á×Pü”oVáþñ~ŠÆý!þ¢¦Œ/iÆñeÆ™Eø*Êg]á‘“º¿±áù¾ÁE¹„µíáKï«|Êåšåõ/,ªÌ 8æÇy¨û'õÝãƒF=„ Í5?ÖÞ4ÏöGµÃ¦Ð¦öÞ+šdý¤v¶Û¨7…"f] †a¼Êýñ¢ùbþvZqnå¼&¶jTzˆÑDgôù^WyÖc~ÍU朎ÃJ-®*  lƒ°%Š -Šjü›0eÕ;t*)Hd`4Q »¸Æ0˜„ä5‘o | àK%4„»oZ<5ÌþàËíׇêuëy^Z¿•Õ ~ÇA-~'J1h±ß/î‰súýdøÉ’N¸øfP[<œ"Ì/zý\¥¨¸ä,°ôý{TÕ:´š}êw­¦î-Hˆ\²ÿÛy@ôfCòºÇÊ2W¦¯u`‰+ç¤h{¢GÉ_¤ DÊó clos_int-xdr_bzip.rds100644000765000024 102113140202262 21413 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY¼êEÒ;ÿ‡ÿÿÈ@æ /gÞ@ï?ßê€À×]‡a¢i”z=O(dĈiê4i†¦ÔdÓA©êÕOÕ<žšI“L†4ÐÂi¦ ¦Œ€i„`hTÔ€ hA"‚˜“L2‡¨@8Dã(ƒ‘õ×ÀTÄ™¢F†m1ÈLl{œÖ"ZqÓm¦\$NpªÔ¬ÐPPe4A6ræD/1×~!_¤Áj-¥B{§À8ü Bº{V3µaåAnÝæcÊiÑQ`´¤]uÀ€Y2sš:&J9'L"x $Ú,ØôŠÏ\04®ÕXIZ`µÑo8*éÞ•¹ºQ ì1_Ó“Ý„š¸¦†LJëi¦m ›M¡X&Ñ l@Zü`P46€ÆÇ½j3 ÒÛ­)¼(‘VtGåaöÕ=Ás]HÈ *£3åäh¨QÁZ&zð¥K•ƒéÊéà¤ø S× -µ«ïþœC‘£1Ý«kBky‚ ±‚°¤º³ž'²[2™ sö2rq+ØÍˆ&ÙüFÓ|BO÷î©Þ9ÕÓ ê= †K@Ù"–"î®pÆ@îvD•{÷¶¥˜CíU åùºX”BZ0úìJV¾íÌߥ6²ø»’)„…çR.cpx-vector-xdr_xz.rds100644000765000024 14013140202262 21351 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£àE%],|ùŸø”D’æØí€Ó•`¦õêÄËgžDC%«u'p°žJâÅ=F0ÑÕB™ YZempty_char-xdr_xz.rds100644000765000024 11413140202262 21413 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à],|ùŸø”Yé„F€+ŸÀåx8,ÔkcíB™ YZempty_clos-xdr_xz.rds100644000765000024 106013140202262 21457 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à•ô],|ùŸø”Yéœ×ÜdéSc0 Œ,—ïIáäguŽl›ey6:É?«ÕÊ3[ƒ?ˆŸêØ·;£¬AÛDÖ/4öƒ7 ìå¦Zã€Ôë—û(þBý.VsφZ‡%!¿>ª‘\|P¤a༢|ƒ¯›Ý /r¤Ý”ª ™@œ8KâIZDVš È÷tMîêrûv&G¨¶¦÷@ÓïycøË߸ÒÇQOaä³ö;’Dp×rQxTo&ü3”™ç( VØJ"|ãëÛJxéüý ç‚—EÍ­ƒãgˆ<ë¾ ¨ßÿ ¾N èCnC)5~TJåVñ$lCŸË€cài~v¢QŒœfi2änŒµ=Sµ›I%éuvëz-©¹{|H?ÜPiÙÒ„6ÔÜk'þ›œžd“i`fÌ]æ0©Ûó 6mGYÿ•½¡d"vËcõ³w•ÓÉLɪ$³/8sÒlAB½î!Öhv’u7±WQ„ 3=Ç~šºrûÍ‘‘š ô«Yÿ`M†Ø=è—+ÇöfžÑí}‹zew}}ß/€5‚ÚB ßûøsÖNÀwÕz ¢£ûåÊk± "&ù;'g±ò0± Aøí¿±gM-¹€ØpŒ– •‹TÏ>0 ‹YZempty_expr-xdr_xz.rds100644000765000024 11413140202262 21454 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à],|ùŸø”Yé„FÂGŸÀ%ÞÍ,ÔkcíB™ YZempty_list-xdr_xz.rds100644000765000024 11413140202262 21451 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à],|ùŸø”Yé„F±ÀŸÀ5°,ÔkcíB™ YZemptyenv-xdr_bzip.rds100644000765000024 6213140202262 21414 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY¢”ÑÂø@ !§¡QC)DÍçâîH§ Rš#@env_attr-xdr_bzip.rds100644000765000024 14613140202262 21412 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYÜ3åö`c€ü2H@7 HI&‰µ @õŠLFÈÑëJE‹^ ¯'§³à æˆHå‚©—‰‚ µ¨° °çÙýHuíÆ‰%ø»’)„†áŸ/°expr_int-xdr_bzip.rds100644000765000024 7213140202262 21376 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY×Iýrx@ 1LAT¨tWþ$¤®LÑw$S… tïÐf-123456-xdr_bzip.rds100644000765000024 14313140202262 20554 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYƒŸho²þ1@@@#H€ TP &ƒÔÓ54Ф;=^’óšƒ4LÕq! @¤"wÃ7ÇÑ{Ñ3òcâîH§ sí foo-123456-xdr_xz.rds100644000765000024 16013140202262 20606 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£àI8],|ùŸøw3q…ùX›ÈŸ±ÇÜË-m>wÅ ì÷cøRWÅWP¹Šº2_æÐ•ÄoœPJñ@4 B™ YZlang-lm-mpgwt-xdr.rds100644000765000024 15213140202262 21224 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`B&f “ ˆX8Aâ9¹ ,LH"ìiùE¹¥9‰h ëÀ¦ ˜s ÒÑ„˜ÊK€ä?4YRKÐMcÉHMLAÓÍ–[’œXT 1á$¢R·lm_uncompressed.RData100644000765000024 607013140202262 21375 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataRDX2 X  mtcars_lm @>LÚ"‚Ä´À ðÓP?ÿHÒo^D?°®@ï&€¿ÝŸ\ÜÞ¬€ÿ (Intercept) wt    þ @5µ;ÞF_Ÿ@4ß&ö @6±:cd@3Á³Åüì@3ÍÁ@2ôCƒ!ìÿ Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive Hornet Sportabout Valiantþ  À˜Ž !.?Ú ½p ,??Ú ½p ,??Ú ½p ,??Ú ½p ,??Ú ½p ,?ÀG‘º…ö?ð’ïÌßw?áXñ #o±¿Ô™úû¯Ó¿á@[ÈS+.¿áÞ†LÛ© dim  dimnames Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive Hornet Sportabout Valiant (Intercept) wt assign þ?öˆ/\ ?ðê¡,ç0 >z×òš¼¯H ÿ qr qraux pivot tol rank class qrþ ÿþ lm formula ~ mpg wtþ data head mtcarsþþ variables list ÿ ÿþ factors ÿ ÿ mpg wt wtþ term.labels wt order  intercept  response ÿ terms formula .Environmentý predvarsÿ ÿ ÿþ dataClasses numeric numericÿ mpg wtþþ ÿ ÿ ÿþ@5@5@6ÌÌÌÌÌÍ@5ffffff@2³33333@2™™™™š@õÂ\(ö@@\(õÂ@ ¸Që…¸@ …¸Që…@ ®záG®ÿ mpg wt termsÿÿ ÿ ÿþÿ ÿ ÿ mpg wt wtþÿ wtÿ ÿ ÿ ÿ terms formulaÿýÿÿ ÿ ÿþÿ numeric numericÿ mpg wtþþ ÿ ÿ ÿþ row.names Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive Hornet Sportabout Valiantÿ data.frameþÿ  coefficients residuals effects rank fitted.values assign qr df.residual xlevels call terms modelÿ lmþþmtcars-lm-mpgwt-noxdr100644000765000024 602613140202262 21370 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  ´Ä‚"ÚL>@y¹Õ;d< À names  (Intercept) wtþîóËÈ{§æ¿žúñlÀ?(ii®’³»?¤'¥*Kú?êy·y£fÔ¿3 1=5Më¿ÿ  Mazda RX4  Mazda RX4 Wag  Datsun 710 Hornet 4 Drive Hornet Sportabout Valiantþ„²« vIÀ$¦€„T- ÀPÓð>ÛÁ?D^oÒHÿ?€&ï@®°?€¬ÞÜ\ŸÝ¿ÿ  (Intercept) wt    þ Ÿ_FÞ;µ5@ ö&ß4@dc:±6@ìüųÁ3@ÁÍ3@ì!ƒCô2@ÿ  Mazda RX4  Mazda RX4 Wag  Datsun 710 Hornet 4 Drive Hornet Sportabout Valiantþ  .! Ž˜À?, p½ Ú??, p½ Ú??, p½ Ú??, p½ Ú??, p½ Ú?ö…º‘GÀwßÌï’ð?±o# ñXá?Ó¯ûú™Ô¿.+SÈ[@á¿©ÛL†Þá¿ dim  dimnames  Mazda RX4  Mazda RX4 Wag  Datsun 710 Hornet 4 Drive Hornet Sportabout Valiant  (Intercept) wt assign þ \/ˆö?0ç,¡êð? H¯¼šò×z> ÿ qr qraux pivot tol rank class qrþ ÿþ lm formula ~ mpg wtþ data head mtcarsþþ  variables listÿ ÿ þ factors ÿ ÿ mpg wt wtþ  term.labels wt order   intercept  response ÿ terms formula  .Environmentý predvarsÿÿ ÿ þ  dataClasses numeric numericÿ mpg wtþþÿÿ ÿ þ5@5@ÍÌÌÌÌÌ6@ffffff5@33333³2@š™™™™2@ö(\Âõ@@Âõ(\@¸…ëQ¸ @…ëQ¸… @®Gáz® @ÿ mpg wt termsÿÿÿ ÿ þÿ ÿ ÿ mpg wt wtþÿ wtÿ ÿ ÿ ÿ terms formulaÿýÿÿÿ ÿ þÿ numeric numericÿ mpg wtþþÿÿ ÿ þ  row.names  Mazda RX4  Mazda RX4 Wag  Datsun 710 Hornet 4 Drive Hornet Sportabout Valiantÿ  data.frameþÿ  coefficients  residuals effects rank  fitted.values assign qr  df.residual xlevels call terms modelÿ lmþnoatt-123l-xdr_xz.rds100644000765000024 12413140202262 21065 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à!],|ùŸøwPÀq ~ ¢,Cž nÒ`ñ"©f1"}ó»3B™ YZnoatt-list-xdr_xz.rds100644000765000024 16013140202262 21357 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£àv6],|ùŸøwPÀq f}V¼€j»@csà G*˧ÖѺé¾Wª]Ýv·Fþž % ÌNw?3€B™ YZnoatt-true-xdr_xz.rds100644000765000024 12013140202262 21357 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à],|ùŸø”Yé„U¹)^a\ø,N‹-¾ÎýB™ YZpairlist_tagged-noxdr100644000765000024 13613140202262 21453 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB  foo   c þpairlist_untagged-xdr100644000765000024 10213140202262 21452 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataX    þpairlist_untagged.qap100644000765000024 4013140202262 21420 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data    ADjDGkLB5Y000755000765000024 013140202262 16577 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 21026 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Ylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 16602 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 21031 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 16703 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 21132 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 16601 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 21030 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release KhmO0VLCkZ000755000765000024 013140202262 16707 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 21136 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 17122 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 21351 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 17031 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 21260 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release R7PT3Roy1M000755000765000024 013140202262 16626 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 21055 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Parser.pm100644000765000024 4756413140202262 21344 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/IOpackage Statistics::R::IO::Parser; # ABSTRACT: Functions for parsing R data files $Statistics::R::IO::Parser::VERSION = '1.0002'; use 5.010; use strict; use warnings FATAL => 'all'; use Exporter 'import'; our @EXPORT = qw( ); our @EXPORT_OK = qw( endianness any_char char string any_uint8 any_uint16 any_uint24 any_uint32 any_real32 any_real64 any_real64_na uint8 uint16 uint24 uint32 any_int8 any_int16 any_int24 any_int32 any_int32_na int8 int16 int24 int32 count with_count many_till seq choose mreturn error add_singleton get_singleton reserve_singleton bind ); our %EXPORT_TAGS = ( all => [ @EXPORT_OK ], num => [ qw( any_uint8 any_uint16 any_uint24 any_uint32 any_int32_na any_real32 any_real64 any_real64_na uint8 uint16 uint24 uint32 ) ], char => [ qw( any_char char string ) ], combinator => [ qw( count with_count many_till seq choose mreturn bind ) ] ); use Scalar::Util qw(looks_like_number); use Carp; sub endianness { state $endianness = '>'; my $new_value = shift if @_ or return $endianness; $endianness = $new_value =~ /^[<>]$/ && $new_value || $endianness; } sub any_char { my $state = shift; return undef if !$state || $state->eof; [$state->at, $state->next] } sub char { my $arg = shift; die 'Must be a single-char argument: ' . $arg unless length($arg) == 1; sub { my $state = shift or return; return if $state->eof || $arg ne $state->at; [ $arg, $state->next ] } } sub string { my $arg = shift; die 'Must be a scalar argument: ' . $arg unless $arg && !ref($arg); my $chars = count(length($arg), \&any_char); sub { my ($char_values, $state) = @{$chars->(@_) or return}; return unless join('', @{$char_values}) eq $arg; [ $arg, $state ] } } sub any_uint8 { my ($value, $state) = @{any_char @_ or return}; [ unpack('C', $value), $state ] } sub any_uint16 { my ($value, $state) = @{count(2, \&any_uint8)->(@_) or return}; [ unpack("S" . endianness, pack 'C2' => @{$value}), $state ] } sub any_uint24 { my ($value, $state) = @{count(3, \&any_uint8)->(@_) or return}; [ unpack("L" . endianness, pack(endianness eq '>' ? 'xC3' : 'C3x', @{$value})), $state ] } sub any_uint32 { my ($value, $state) = @{count(4, \&any_uint8)->(@_) or return}; [ unpack("L" . endianness, pack 'C4' => @{$value}), $state ] } sub uint8 { my $arg = shift; die 'Argument must be a number 0-255: ' . $arg unless looks_like_number($arg) && $arg <= 0x000000FF && $arg >= 0; sub { my ($value, $state) = @{any_uint8 @_ or return}; return unless $arg == $value; [ $arg, $state ] } } sub uint16 { my $arg = shift; die 'Argument must be a number 0-65535: ' . $arg unless looks_like_number($arg) && $arg <= 0x0000FFFF && $arg >= 0; sub { my ($value, $state) = @{any_uint16 @_ or return}; return unless $arg == $value; [ $arg, $state ] } } sub uint24 { my $arg = shift; die 'Argument must be a number 0-16777215: ' . $arg unless looks_like_number($arg) && $arg <= 0x00FFFFFF && $arg >= 0; sub { my ($value, $state) = @{any_uint24 @_ or return}; return unless $arg == $value; [ $arg, $state ] } } sub uint32 { my $arg = shift; die 'Argument must be a number 0-4294967295: ' . $arg unless looks_like_number($arg) && $arg <= 0xFFFFFFFF && $arg >= 0; sub { my ($value, $state) = @{any_uint32 @_ or return}; return unless $arg == $value; [ $arg, $state ] } } sub any_int8 { my ($value, $state) = @{any_char @_ or return}; [ unpack('c', $value), $state ] } sub any_int16 { my ($value, $state) = @{any_uint16 @_ or return}; $value |= 0x8000 if ($value >= 1<<15); [ unpack('s', pack 's' => $value), $state ] } sub any_int24 { my ($value, $state) = @{any_uint24 @_ or return}; $value |= 0xff800000 if ($value >= 1<<23); [ unpack('l', pack 'l' => $value), $state ] } sub any_int32 { my ($value, $state) = @{any_uint32 @_ or return}; $value |= 0x80000000 if ($value >= 1<<31); [ unpack('l', pack 'l' => $value), $state ] } sub int8 { my $arg = shift; die 'Argument must be a number -128-127: ' . $arg unless looks_like_number($arg) && $arg < 1<<7 && $arg >= -(1<<7); sub { my ($value, $state) = @{any_int8 @_ or return}; return unless $arg == $value; [ $arg, $state ] } } sub int16 { my $arg = shift; die 'Argument must be a number -32768-32767: ' . $arg unless looks_like_number($arg) && $arg < 1<<15 && $arg >= -(1<<15); sub { my ($value, $state) = @{any_int16 @_ or return}; return unless $arg == $value; [ $arg, $state ] } } sub int24 { my $arg = shift; die 'Argument must be a number 0-16777215: ' . $arg unless looks_like_number($arg) && $arg < 1<<23 && $arg >= -(1<<23); sub { my ($value, $state) = @{any_int24 @_ or return}; return unless $arg == $value; [ $arg, $state ] } } sub int32 { my $arg = shift; die 'Argument must be a number -2147483648-2147483647: ' . $arg unless looks_like_number($arg) && $arg < 1<<31 && $arg >= -(1<<31); sub { my ($value, $state) = @{any_int32 @_ or return}; return unless $arg == $value; [ $arg, $state ] } } sub any_int32_na { choose(&bind(int32(-2147483648), sub { mreturn(undef); }), \&any_int32) } my %na_real = ( '>' => [ uint32(0x7ff00000), uint32(0x7a2) ], '<' => [ uint32(0x7a2), uint32(0x7ff00000) ]); sub any_real64_na { choose(&bind(seq(@{$na_real{endianness()}}), sub { mreturn(undef); }), \&any_real64) } sub any_real32 { my ($value, $state) = @{count(4, \&any_uint8)->(@_) or return}; [ unpack("f" . endianness, pack 'C4' => @{$value}), $state ] } sub any_real64 { my ($value, $state) = @{count(8, \&any_uint8)->(@_) or return}; [ unpack("d" . endianness, pack 'C8' => @{$value}), $state ] } sub count { my ($n, $parser) = (shift, shift); sub { my $state = shift; my @value; for (1..$n) { my $result = $parser->($state) or return; push @value, shift @$result; $state = shift @$result; } return [ [ @value ], $state ]; } } sub seq { my @parsers = @_; sub { my $state = shift; my @value; foreach my $parser (@parsers) { my $result = $parser->($state) or return; push @value, shift @$result; $state = shift @$result; } return [ [ @value ], $state ]; } } sub many_till { my ($p, $end) = (shift, shift); die "'bind' expects two arguments" unless $p && $end; sub { my $state = shift or return; my @value; until ($end->($state)) { my $result = $p->($state) or return; push @value, shift @$result; $state = shift @$result; } return [ [ @value ], $state ] } } sub choose { my @parsers = @_; sub { my $state = shift or return; foreach my $parser (@parsers) { my $result = $parser->($state); return $result if $result; } return; } } sub mreturn { my $arg = shift; sub { [ $arg, shift ] } } sub error { my $message = shift; sub { my $state = shift; croak $message . " (at " . $state->position . ")"; } } sub add_singleton { my $singleton = shift; sub { [ $singleton, shift->add_singleton($singleton) ] } } sub get_singleton { my $ref_id = shift; sub { my $state = shift; [ $state->get_singleton($ref_id), $state ] } } ## Preallocates a space for a singleton before running a given parser, ## and then assigns the parser's value to the singleton. sub reserve_singleton { my $p = shift; &bind( seq( sub { my $state = shift; my $ref_id = scalar(@{$state->singletons}); my $new_state = $state->add_singleton(undef); [ $ref_id, $new_state ] }, $p), sub { my ($ref_id, $value) = @{shift()}; sub { my $state = shift; $state->singletons->[$ref_id] = $value; [ $value, $state ] } }) } sub bind { my ($p1, $fp2) = (shift, shift); die "'bind' expects two arguments" unless $p1 && $fp2; sub { my $v1 = $p1->(shift or return); my ($value, $state) = @{$v1 or return}; $fp2->($value)->($state) } } sub with_count { die "'bind' expects one or two arguments" unless @_ and scalar(@_) <= 2; unshift(@_, \&any_uint32) if (scalar(@_) == 1); my ($counter, $content) = (shift, shift); &bind($counter, sub { my $n = shift; count($n, $content) }) } 1; __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::IO::Parser - Functions for parsing R data files =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::IO::ParserState; use Statistics::R::IO::Parser; my $state = Statistics::R::IO::ParserState->new( data => 'file.rds' ); say $state->at say $state->next->at; =head1 DESCRIPTION You shouldn't create instances of this class, it exists mainly to handle deserialization of R data files by the C classes. =head1 FUNCTIONS This library is inspired by monadic parser frameworks from the Haskell world, like L or L. What this means is that I are constructed by combining simpler parsers. The library offers a selection of basic parsers and combinators. Each of these is a function (think of it as a factory) that returns another function (the actual parser) which receives the current parsing state (L) as the argument and returns a two-element array reference (called for brevity "a pair" in the following text) with the result of the parser in the first element and the new parser state in the second element. If the I fails, say if the current state is "a" where a number is expected, it returns C to signal failure. The descriptions of individual functions below use a shorthand because the above mechanism is implied. Thus, when C is described as "parses any character", it really means that calling C will return a function that when called with the current state will return "a pair of the character...", etc. =head2 CHARACTER PARSERS =over =item any_char Parses any character, returning a pair of the character at the current State's position and the new state, advanced by one from the starting state. If the state is at the end (C<$state->eof> is true), returns undef to signal failure. =item char $c Parses the given character C<$c>, returning a pair of the character at the current State's position if it is equal to C<$c> and the new state, advanced by one from the starting state. If the state is at the end (C<$state->eof> is true) or the character at the current position is not C<$c>, returns undef to signal failure. =item string $s Parses the given string C<$s>, returning a pair of the sequence of characters starting at the current State's position if it is equal to C<$s> and the new state, advanced by C from the starting state. If the state is at the end (C<$state->eof> is true) or the string starting at the current position is not C<$s>, returns undef to signal failure. =back =head2 NUMBER PARSERS =over =item endianness [$end] When the C<$end> argument is given, this functions sets the byte order used by parsers in the module to be little- (when C<$end> is "E") or big-endian (C<$end> is "E"). This function changes the B state and remains in effect until the next change. When called with no arguments, C returns the current byte order in effect. The starting byte order is big-endian. =item any_uint8, any_uint16, any_uint24, any_uint32 Parses an 8-, 16-, 24-, and 32-bit I integer, returning a pair of the integer starting at the current State's position and the new state, advanced by 1, 2, 3, or 4 bytes from the starting state, depending on the parser. The integer value is determined by the current value of C. If there are not enough elements left in the data from the current position, returns undef to signal failure. =item uint8 $n, uint16 $n, uint24 $n, uint32 $n Parses the specified 8-, 16-, 24-, and 32-bit I integer C<$n>, returning a pair of the integer at the current State's position if it is equal C<$n> and the new state. The new state is advanced by 1, 2, 3, or 4 bytes from the starting state, depending on the parser. The integer value is determined by the current value of C. If there are not enough elements left in the data from the current position or the current position is not C<$n>, returns undef to signal failure. =item any_int8, any_int16, any_int24, any_int32 Parses an 8-, 16-, 24-, and 32-bit I integer, returning a pair of the integer starting at the current State's position and the new state, advanced by 1, 2, 3, or 4 bytes from the starting state, depending on the parser. The integer value is determined by the current value of C. If there are not enough elements left in the data from the current position, returns undef to signal failure. =item int8 $n, int16 $n, int24 $n, int32 $n Parses the specified 8-, 16-, 24-, and 32-bit I integer C<$n>, returning a pair of the integer at the current State's position if it is equal C<$n> and the new state. The new state is advanced by 1, 2, 3, or 4 bytes from the starting state, depending on the parser. The integer value is determined by the current value of C. If there are not enough elements left in the data from the current position or the current position is not C<$n>, returns undef to signal failure. =item any_real32, any_real64 Parses an 32- or 64-bit real number, returning a pair of the number starting at the current State's position and the new state, advanced by 4 or 8 bytes from the starting state, depending on the parser. The real value is determined by the current value of C. If there are not enough elements left in the data from the current position, returns undef to signal failure. =item any_int32_na, any_real64_na Parses a 32-bit I integer or 64-bit real number, respectively, but recognizing R-style missing values (NAs): INT_MIN for integers and a special NaN bit pattern for reals. Returns a pair of the number value (C if a NA) and the new state, advanced by 4 or 8 bytes from the starting state, depending on the parser. If there are not enough elements left in the data from the current position, returns undef to signal failure. =back =head2 SEQUENCING =over =item seq $p1, ... This combinator applies parsers C<$p1>, ... in sequence, using the returned parse state of C<$p1> as the input parse state to C<$p2>, etc. Returns a pair of the concatenation of all the parsers' results and the parsing state returned by the final parser. If any of the parsers returns undef, C will return it immediately without attempting to apply any further parsers. =item many_till $p, $end This combinator applies a parser C<$p> until parser C<$end> succeeds. It does this by alternating applications of C<$end> and C<$p>; once C<$end> succeeds, the function returns the concatenation of results of preceding applications of C<$p>. (Thus, if C<$end> succeeds immediately, the 'result' is an empty list.) Otherwise, C<$p> is applied and must succeed, and the procedure repeats. Returns a pair of the concatenation of all the C<$p>'s results and the parsing state returned by the final parser. If any applications of C<$p> returns undef, C will return it immediately. =item count $n, $p This combinator applies the parser C<$p> exactly C<$n> times in sequence, threading the parse state through each call. Returns a pair of the concatenation of all the parsers' results and the parsing state returned by the final application. If any application of C<$p> returns undef, C will return it immediately without attempting any more applications. =item with_count [$num_p = any_uint32], $p This combinator first applies parser C<$num_p> to get the number of times that C<$p> should be applied in sequence. If only one argument is given, C is used as the default value of C<$num_p>. (So C works by getting a number I<$n> by applying C<$num_p> and then calling C.) Returns a pair of the concatenation of all the parsers' results and the parsing state returned by the final application. If the initial application of C<$num_p> or any application of C<$p> returns undef, C will return it immediately without attempting any more applications. =item choose $p1, ... This combinator applies parsers C<$p1>, ... in sequence, until one of them succeeds, when it immediately returns the parser's result. If all of the parsers fail, C fails and returns undef =back =head2 COMBINATORS =over =item bind $p1, $f This combinator applies parser C<$p1> and, if it succeeds, calls function C<$f> using the first element of C<$p1>'s result as the argument. The call to C<$f> needs to return a parser, which C applies to the parsing state after C<$p1>'s application. The C combinator is an essential building block for most combinators described so far. For instance, C can be written as: bind($num_p, sub { my $n = shift; count $n, $p; }) =item mreturn $value Returns a parser that when applied returns C<$value> without changing the parsing state. =item error $message Returns a parser that when applied croaks with the C<$message> and the current parsing state. =back =head2 SINGLETONS These functions are an interface to L's singleton-related functions, L and L. They exist because certain types of objects in R data files, for instance environments, have to exist as unique instances, and any subsequent objects that include them refer to them by a "reference id". =over =item add_singleton $singleton Adds the C<$singleton> to the current parsing state. Returns a pair of C<$singleton> and the new parsing state. =item get_singleton $ref_id Retrieves from the current parse state the singleton identified by C<$ref_id>, returning a pair of the singleton and the (unchanged) state. =item reserve_singleton $p Preallocates a space for a singleton before running a given parser, and then assigns the parser's value to the singleton. Returns a pair of the singleton and the new parse state. =back =head1 BUGS AND LIMITATIONS Instances of this class are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut Rserve.pm100644000765000024 4125413140202262 21344 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/IOpackage Statistics::R::IO::Rserve; # ABSTRACT: Supply object methods for Rserve communication $Statistics::R::IO::Rserve::VERSION = '1.0002'; use 5.010; use Class::Tiny::Antlers; use Statistics::R::IO::REXPFactory; use Statistics::R::IO::QapEncoding; use Socket; use IO::Socket::INET (); use Scalar::Util qw(blessed looks_like_number openhandle); use Carp; use namespace::clean; has fh => ( is => 'ro', default => sub { my $self = shift; my $fh; if ($self->_usesocket) { socket($fh, PF_INET, SOCK_STREAM, getprotobyname('tcp')) || croak "socket: $!"; connect($fh, sockaddr_in($self->port, inet_aton($self->server))) || croak "connect: $!"; bless $fh, 'IO::Handle' } else { $fh = IO::Socket::INET->new(PeerAddr => $self->server, PeerPort => $self->port) or croak $! } $self->_set_autoclose(1) unless defined($self->_autoclose); my ($response, $rc) = ''; while ($rc = $fh->read($response, 32 - length $response, length $response)) {} croak $! unless defined $rc; croak "Unrecognized server ID" unless substr($response, 0, 12) eq 'Rsrv0103QAP1'; $fh }, ); has server => ( is => 'ro', default => 'localhost', ); has port => ( is => 'ro', default => 6311, ); has _autoclose => ( is => 'ro', ); has _autoflush => ( is => 'ro', default => sub { my $self = shift; $self->_usesocket ? 1 : 0 }, ); has _usesocket => ( is => 'ro', default => 0 ); use constant { CMD_login => 0x001, # "name\npwd" : - CMD_voidEval => 0x002, # string : - CMD_eval => 0x003, # string | encoded SEXP : encoded SEXP CMD_shutdown => 0x004, # [admin-pwd] : - # security/encryption - all since 1.7-0 CMD_switch => 0x005, # string (protocol) : - CMD_keyReq => 0x006, # string (request) : bytestream (key) CMD_secLogin => 0x007, # bytestream (encrypted auth) : - CMD_OCcall => 0x00f, # SEXP : SEXP -- it is the only command # supported in object-capability mode and it # requires that the SEXP is a language # construct with OC reference in the first # position CMD_OCinit => 0x434f7352, # SEXP -- 'RsOC' - command sent from the # server in OC mode with the packet of # initial capabilities. file I/O # routines. server may answe CMD_openFile => 0x010, # fn : - CMD_createFile => 0x011, # fn : - CMD_closeFile => 0x012, # - : - CMD_readFile => 0x013, # [int size] : data... ; if size not # present, server is free to choose any # value - usually it uses the size of its # static buffer CMD_writeFile => 0x014, # data : - CMD_removeFile => 0x015, # fn : - # object manipulation CMD_setSEXP => 0x020, # string(name), REXP : - CMD_assignSEXP => 0x021, # string(name), REXP : - ; same as # setSEXP except that the name is parsed # session management (since 0.4-0) CMD_detachSession => 0x030, # : session key CMD_detachedVoidEval => 0x031, # string : session key; doesn't CMD_attachSession => 0x032, # session key : - # control commands (since 0.6-0) - passed on to the master process */ # Note: currently all control commands are asychronous, i.e. RESP_OK # indicates that the command was enqueued in the master pipe, but there # is no guarantee that it will be processed. Moreover non-forked # connections (e.g. the default debug setup) don't process any # control commands until the current client connection is closed so # the connection issuing the control command will never see its # result. CMD_ctrl => 0x40, # -- not a command - just a constant -- CMD_ctrlEval => 0x42, # string : - CMD_ctrlSource => 0x45, # string : - CMD_ctrlShutdown => 0x44, # - : - # 'internal' commands (since 0.1-9) CMD_setBufferSize => 0x081, # [int sendBufSize] this commad allow # clients to request bigger buffer # sizes if large data is to be # transported from Rserve to the # client. (incoming buffer is resized # automatically) CMD_setEncoding => 0x082, # string (one of "native","latin1","utf8") : -; since 0.5-3 # special commands - the payload of packages with this mask does not contain defined parameters CMD_SPECIAL_MASK => 0xf0, CMD_serEval => 0xf5, # serialized eval - the packets are raw # serialized data without data header CMD_serAssign => 0xf6, # serialized assign - serialized list with # [[1]]=name, [[2]]=value CMD_serEEval => 0xf7, # serialized expression eval - like serEval # with one additional evaluation round }; sub BUILDARGS { my $class = shift; if ( scalar @_ == 0 ) { return { } } elsif ( scalar @_ == 1 ) { if ( ref $_[0] eq 'HASH' ) { my $args = { %{ $_[0] } }; if (my $fh = $args->{fh}) { ($args->{server}, $args->{port}) = _fh_host_port($fh); } return $args } elsif (ref $_[0] eq '') { my $server = shift; return { server => $server } } else { my $fh = shift; my ($server, $port) = _fh_host_port($fh); return { fh => $fh, server => $server, port => $port, _autoclose => 0, _autoflush => ref($fh) eq 'GLOB' } } } elsif ( @_ % 2 ) { die "The new() method for $class expects a hash reference or a key/value list." . " You passed an odd number of arguments\n"; } else { my $args = { @_ }; if (my $fh = $args->{fh}) { ($args->{server}, $args->{port}) = _fh_host_port($fh); } return $args } } sub BUILD { my ($self, $args) = @_; # Required attribute types die "Attribute 'fh' must be an instance of IO::Handle or an open filehandle" if defined($args->{fh}) && !((ref($args->{fh}) eq "GLOB" && Scalar::Util::openhandle($args->{fh})) || (blessed($args->{fh}) && $args->{fh}->isa("IO::Handle"))); die "Attribute 'server' must be scalar value" if exists($args->{server}) && (!defined($args->{server}) || ref($args->{server})); die "Attribute 'port' must be an integer" unless looks_like_number($self->port) && (int($self->port) == $self->port); } ## Extracts host address and port from the given socket handle (either ## as an object or a "classic" socket) sub _fh_host_port { my $fh = shift or return; if (ref($fh) eq 'GLOB') { my ($port, $host) = unpack_sockaddr_in(getpeername($fh)) or return; my $name = gethostbyaddr($host, AF_INET); return ($name // inet_ntoa($host), $port) } elsif (blessed($fh) && $fh->isa('IO::Socket')){ return ($fh->peerhost, $fh->peerport) } return undef } ## Private setter for autoclose used in the default handler of 'fh' sub _set_autoclose { my $self = shift; $self->{_autoclose} = shift } sub eval { my ($self, $expr) = (shift, shift); # Encode $expr as DT_STRING my $parameter = pack('VZ*', ((length($expr)+1) << 8) + 4, $expr); my $data = $self->_send_command(CMD_eval, $parameter); my ($value, $state) = @{Statistics::R::IO::QapEncoding::decode($data)}; croak 'Could not parse Rserve value' unless $state; croak 'Unread data remaining in the Rserve response' unless $state->eof; $value } sub ser_eval { my ($self, $rexp) = (shift, shift); ## simulate the request parameter as constructed by: ## > serialize(quote(parse(text="{$rexp}")[[1]]), NULL) my $parameter = "\x58\x0a\0\0\0\2\0\3\0\3\0\2\3\0\0\0\0\6\0\0\0\1\0\4\0" . "\x09\0\0\0\2\x5b\x5b\0\0\0\2\0\0\0\6\0\0\0\1\0\4\0\x09\0\0" . "\0\5\x70\x61\x72\x73\x65\0\0\4\2\0\0\0\1\0\4\0\x09\0\0\0\4\x74\x65" . "\x78\x74\0\0\0\x10\0\0\0\1\0\4\0\x09" . pack('N', length($rexp)+2) . "\x7b" . $rexp . "\x7d" . "\0\0\0\xfe\0\0\0\2\0\0\0\x0e\0\0\0\1\x3f\xf0\0\0\0\0\0\0" . "\0\0\0\xfe"; ## request is: ## - command (0xf5, CMD_serEval, ## means raw serialized data without data header) my $data = $self->_send_command(CMD_serEval, $parameter); my ($value, $state) = @{Statistics::R::IO::REXPFactory::unserialize($data)}; croak 'Could not parse Rserve value' unless $state; croak 'Unread data remaining in the Rserve response' unless $state->eof; $value } sub get_file { my ($self, $remote, $local) = (shift, shift, shift); my $data = pack 'C*', @{$self->eval("readBin('$remote', what='raw', n=file.info('$remote')[['size']])")->to_pl}; if ($local) { open my $local_file, '>:raw', $local or croak "Cannot open $!"; print $local_file $data; close $local_file; } $data } use constant { CMD_RESP => 0x10000, # all responses have this flag set CMD_OOB => 0x20000, # out-of-band data - i.e. unsolicited messages }; use constant { RESP_OK => (CMD_RESP|0x0001), # command succeeded; returned # parameters depend on the command # issued RESP_ERR => (CMD_RESP|0x0002), # command failed, check stats code # attached string may describe the # error OOB_SEND => (CMD_OOB | 0x1000), # OOB send - unsolicited SEXP sent # from the R instance to the # client. 12 LSB are reserved for # application-specific code OOB_MSG => (CMD_OOB | 0x2000), # OOB message - unsolicited message # sent from the R instance to the # client requiring a response. 12 # LSB are reserved for # application-specific code }; ## Sends a request to Rserve and receives the response, checking for ## any errors. ## ## Returns the data portion of the server response sub _send_command { my ($self, $command, $parameters) = (shift, shift, shift || ''); ## request is (byte order is low-endian): ## - command (4 bytes) ## - length of the message (low 32 bits) ## - offset of the data part (normally 0) ## - high 32 bits of the length of the message (0 if < 4GB) $self->fh->print(pack('V4', $command, length($parameters), 0, 0) . $parameters); $self->fh->flush if $self->_autoflush; my $response = $self->_receive_response(16); ## Of the next four long-ints: ## - the first one is status and should be 65537 (bytes \1, \0, \1, \0) ## - the second one is length ## - the third and fourth are ?? my ($status, $length) = unpack VV => substr($response, 0, 8); if ($status & CMD_RESP) { unless ($status == RESP_OK) { croak 'R server returned an error: ' . sprintf("0x%X", $status) } } elsif ($status & CMD_OOB) { croak 'OOB messages are not supported yet' } else { croak 'Unrecognized response type: ' . $status } $self->_receive_response($length) } sub _receive_response { my ($self, $length) = (shift, shift); my ($response, $offset, $rc) = ('', 0); while ($rc = $self->fh->read($response, $length - $offset, $offset)) { $offset += $rc; last if $length == $offset; } croak $! unless defined $rc; $response } sub close { my $self = shift; $self->fh->close } sub DEMOLISH { my $self = shift; $self->close if $self->_autoclose } 1; __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::IO::Rserve - Supply object methods for Rserve communication =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::IO::Rserve; my $rserve = Statistics::R::IO::RDS->new('someserver'); my $var = $rserve->eval('1+1'); print $var->to_pl; $rserve->close; =head1 DESCRIPTION C provides an object-oriented interface to communicate with the L binary R server. This allows Perl programs to access all facilities of R without the need to have a local install of R or link to an R library. =head1 METHODS =head2 CONSTRUCTOR =over =item new $server The single-argument constructor can be invoked with a scalar containing the host name of the Rserve server. The method will immediately open a connection to the server using L and perform the initial steps prescribed by the protocol. The method will raise an exception if the connection cannot be established or if the remote host does not appear to run the correct version of Rserve. =item new $handle The single-argument constructor can be invoked with an instance of L containing the connection to the Rserve server, which becomes the 'fh' attribute. The caller is responsible for ensuring that the connection is established and ready for submitting client requests. =item new ATTRIBUTE_HASH_OR_HASH_REF The constructor's arguments can also be given as a hash or hash reference, specifying values of the object attributes. The caller passing the handle is responsible for ensuring that the connection is established and ready for submitting client requests. =item new The no-argument constructor uses the default server name 'localhost' and port 6311 and immediately opens a connection to the server using L, performing the initial steps prescribed by the protocol. The method will raise an exception if the connection cannot be established or if the remote host does not appear to run the correct version of Rserve. =back =head2 ACCESSORS =over =item server Name of the Rserve server. =item port Port of the Rserve server. =item fh A connection handle (stored as a reference to the L) to the Rserve server. =back =head2 METHODS =over =item eval EXPR Evaluates an R expression, given as text string in REXPR, on an L server and returns its result as a L object. =item ser_eval EXPR Evaluates an R expression, given as text string in REXPR, on an L server and returns its result as a L object. This method uses the CMD_serEval Rserve command (code 0xf5), which is designated as "internal/special" and "should not be used by clients". Consequently, it is not recommended to use this method in a production environment, but only to help debug cases where C isn't working as desired. =item get_file REMOTE_NAME [, LOCAL_NAME] Transfers a file named REMOTE_NAME from the Rserve server to the local machine, copying it to LOCAL_NAME if it is specified. The file is transferred in binary mode. Returns the contents of the file as a scalar. =item close Closes the object's filehandle. This method is automatically invoked when the object is destroyed if the connection was opened by the constructor, but not if it was passed in as a pre-opened handle. =back =head1 BUGS AND LIMITATIONS Instances of this class are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILDARGS BUILD DEMOLISH =for Pod::Coverage CMD_OCcall CMD_OCinit CMD_OOB CMD_RESP CMD_SPECIAL_MASK CMD_assignSEXP CMD_attachSession CMD_closeFile CMD_createFile CMD_ctrl CMD_ctrlEval CMD_ctrlShutdown CMD_ctrlSource CMD_detachSession CMD_detachedVoidEval CMD_eval CMD_keyReq CMD_login CMD_openFile CMD_readFile CMD_removeFile CMD_secLogin CMD_serAssign CMD_serEEval CMD_serEval CMD_setBufferSize CMD_setEncoding CMD_setSEXP CMD_shutdown CMD_switch CMD_voidEval CMD_writeFile =for Pod::Coverage OOB_MSG OOB_SEND =for Pod::Coverage RESP_ERR RESP_OK =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut List.pm100644000765000024 621013140202262 21231 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::List; # ABSTRACT: an R generic vector (list) $Statistics::R::REXP::List::VERSION = '1.0002'; use 5.010; use Scalar::Util qw(blessed weaken); use Class::Tiny::Antlers; use namespace::clean; extends 'Statistics::R::REXP::Vector'; use overload; use constant sexptype => 'VECSXP'; sub _to_s { my $self = shift; my ($u, $unfold); $u = $unfold = sub { join(', ', map { ref $_ eq ref [] ? '[' . &$unfold(@{$_}) . ']' : (defined $_? $_ : 'undef') } @_); }; weaken $unfold; $self->_type . '(' . &$unfold(@{$self->elements}) . ')'; } sub to_pl { my $self = shift; [ map { if (blessed $_ && $_->can('to_pl')) { my $x = $_->to_pl; if (ref $x eq ref []) { unless (scalar @{$x} > 1 || $_->isa('Statistics::R::REXP::List')) { @{$x} } else { $x } } else { $x } } else { $_ } } @{$self->elements} ] } sub _type { 'list'; } 1; # End of Statistics::R::REXP::List __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::List - an R generic vector (list) =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::List my $vec = Statistics::R::REXP::List->new([ 1, '', 'foo', ['x', 22] ]); print $vec->elements; =head1 DESCRIPTION An object of this class represents an R list, also called a generic vector (C). List elements can themselves be lists, and so can form a tree structure. =head1 METHODS C inherits from L, with no added restrictions on the value of its elements. Missing values (C in R) have value C. =over =item sexptype SEXPTYPE of generic vectors is C. =item to_pl Perl value of the list is an array reference to the Perl values of its C, but using a scalar value to represent elements that are atomic vectors of length 1, rather than a one-element array reference. The idea is that in R, C<1:3>, and C can often be used interchangeably, even though the list is really composed of three integer vectors, each of length one. Now, both will have native Perl representation of C<[1, 2, 3]>. This only applies to elements that are atomic vectors. An element of type list will always be represented as an array reference: C<< list(list(1), list(2), list(3))->to_pl >> -> C<[ [ 1 ], [ 2 ], [ 3 ] ]> =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut Null.pm100644000765000024 360713140202262 21237 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::Null; # ABSTRACT: the R null object $Statistics::R::REXP::Null::VERSION = '1.0002'; use 5.010; use Class::Tiny::Antlers; use namespace::clean; extends 'Statistics::R::REXP'; use constant sexptype => 'NILSXP'; sub BUILDARGS { my $class = shift; die 'Null cannot have attributes' if scalar @_; return {@_} } sub is_null { return 1; } use overload '""' => sub { 'NULL' }; sub to_pl { undef } 1; # End of Statistics::R::REXP::Null __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::Null - the R null object =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP; my $null = Statistics::R::REXP::Null->new(); say $rexp->is_null; print $rexp->to_pl; =head1 DESCRIPTION An object of this class represents the null R object (C). The null object does not have a value or attributes, and trying to set them will cause an exception. =head1 METHODS C inherits from L and adds no methods of its own. =head2 ACCESSORS =over =item sexptype SEXPTYPE of null objects is C. =item to_pl The Perl value of C is C. =item attributes Null objects have no attributes, so the attributes accessor always returns C. =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILDARGS is_null =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut io-oo-rserve-getfile-live.t100644000765000024 317513140202262 21440 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl use 5.010; use strict; use warnings FATAL => 'all'; use IO::Socket::INET (); use Socket; use Test::More; ## Low level connections to the server used in tests my $s; my $rserve_host = $ENV{RSERVE_HOST} || 'localhost'; my $rserve_port = $ENV{RSERVE_PORT} || 6311; my $rserve = IO::Socket::INET->new(PeerAddr => $rserve_host, PeerPort => $rserve_port); if ($rserve) { plan tests => 3; $rserve->read(my $response, 32); die "Unrecognized server ID" unless substr($response, 0, 12) eq 'Rsrv0103QAP1'; socket($s, PF_INET, SOCK_STREAM, getprotobyname('tcp')) || die "socket: $!"; connect($s, sockaddr_in($rserve_port, inet_aton($rserve_host))) || die "connect: $!"; $s->read($response, 32); die "Unrecognized server ID" unless substr($response, 0, 12) eq 'Rsrv0103QAP1'; } else { plan skip_all => "Cannot connect to Rserve server at localhost:6311"; } use Statistics::R::IO::Rserve; use Statistics::R::IO::REXPFactory; use File::Temp; my $local = File::Temp::tmpnam; my $remote = Statistics::R::IO::Rserve->new($rserve)->eval( <<'END' local({ f<-tempfile() writeBin(charToRaw("\1\2\3\4\5"), f) f }) END )->to_pl->[0]; my $data = Statistics::R::IO::Rserve->new($rserve)->get_file($remote, $local); my $expected = "\1\2\3\4\5"; is($data, $expected, 'get_file value'); my $file_contents = do { local $/; open(my $in, $local) or die "$!"; <$in> }; is($file_contents, $expected, 'get_file file'); $data = Statistics::R::IO::Rserve->new($rserve)->get_file($remote); is($data, $expected, 'get_file nolocal'); io-oo-rserve-sereval-live.t100644000765000024 5134613140202262 21505 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl use 5.010; use strict; use warnings FATAL => 'all'; use IO::Socket::INET (); use Test::More; ## Low level connections to the server used in tests my $rserve_host = $ENV{RSERVE_HOST} || 'localhost'; my $rserve_port = $ENV{RSERVE_PORT} || 6311; my $rserve = IO::Socket::INET->new(PeerAddr => $rserve_host, PeerPort => $rserve_port); if ($rserve) { plan tests => 59; $rserve->read(my $response, 32); die "Unrecognized server ID" unless substr($response, 0, 12) eq 'Rsrv0103QAP1'; } else { plan skip_all => "Cannot connect to Rserve server at localhost:6311"; } use Test::Fatal; use Statistics::R::IO::Rserve; use Statistics::R::IO::REXPFactory; use lib 't/lib'; use ShortDoubleVector; use TestCases; sub check_rserve_eval_variants { my ($rexp, $expected, $message) = @_; ## NOTE: I'm switching the order of comparisons to ensure ## ShortDoubleVector's 'eq' overload is used subtest 'rserve eval ' . $message => sub { ## some tests can only be executed when Rserve's host and/or ## port are at a default location, localhost:6311 plan tests => 3 - ( exists($ENV{RSERVE_HOST}) || 2*exists($ENV{RSERVE_PORT})); unless (exists($ENV{RSERVE_HOST}) || exists($ENV{RSERVE_PORT})) { is($expected, Statistics::R::IO::Rserve->new->ser_eval($rexp), $message . ' no arg constructor'); } unless (exists($ENV{RSERVE_PORT})) { is($expected, Statistics::R::IO::Rserve->new($rserve_host)->ser_eval($rexp), $message . ' localhost arg'); } is($expected, Statistics::R::IO::Rserve->new($rserve)->ser_eval($rexp), $message . ' handle arg'); } } ## integer vectors ## serialize 1:3, XDR: true check_rserve_eval_variants('1:3', Statistics::R::REXP::Integer->new([ 1, 2, 3 ]), 'int vector no atts'); ## serialize a=1L, b=2L, c=3L, XDR: true check_rserve_eval_variants('c(a=1L, b=2L, c=3L)', Statistics::R::REXP::Integer->new( elements => [ 1, 2, 3 ], attributes => { names => Statistics::R::REXP::Character->new(['a', 'b', 'c']) }), 'int vector names att'); ## double vectors ## serialize 1234.56, XDR: true check_rserve_eval_variants('1234.56', ShortDoubleVector->new([ 1234.56 ]), 'double vector no atts'); ## serialize foo=1234.56, XDR: true check_rserve_eval_variants('c(foo=1234.56)', ShortDoubleVector->new( elements => [ 1234.56 ], attributes => { names => Statistics::R::REXP::Character->new(['foo']) }), 'double vector names att'); ## character vectors ## serialize letters[1:3], XDR: true check_rserve_eval_variants('letters[1:3]', Statistics::R::REXP::Character->new([ 'a', 'b', 'c' ]), 'character vector no atts'); ## serialize A='a', B='b', C='c', XDR: true check_rserve_eval_variants('c(A="a", B="b", C="c")', Statistics::R::REXP::Character->new( elements => [ 'a', 'b', 'c' ], attributes => { names => Statistics::R::REXP::Character->new(['A', 'B', 'C']) }), 'character vector names att - xdr'); ## raw vectors ## serialize as.raw(c(1:3, 255, 0), XDR: true check_rserve_eval_variants('as.raw(c(1,2,3,255, 0))', Statistics::R::REXP::Raw->new([ 1, 2, 3, 255, 0 ]), 'raw vector'); ## list (i.e., generic vector) ## serialize list(1:3, list('a', 'b', 11), 'foo'), XDR: true check_rserve_eval_variants("list(1:3, list('a', 'b', 11), 'foo')", Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ]), 'generic vector no atts'); ## serialize list(foo=1:3, list('a', 'b', 11), bar='foo'), XDR: true check_rserve_eval_variants("list(foo=1:3, list('a', 'b', 11), bar='foo')", Statistics::R::REXP::List->new( elements => [ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ], attributes => { names => Statistics::R::REXP::Character->new(['foo', '', 'bar']) }), 'generic vector names att - xdr'); ## matrix ## serialize matrix(-1:4, 2, 3), XDR: true check_rserve_eval_variants('matrix(-1:4, 2, 3)', Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), }), 'int matrix no atts'); ## serialize matrix(-1:4, 2, 3, dimnames=list(c('a', 'b'))), XDR: true check_rserve_eval_variants("matrix(-1:4, 2, 3, dimnames=list(c('a', 'b')))", Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a', 'b']), Statistics::R::REXP::Null->new ]), }), 'int matrix rownames'); ## data frames ## serialize head(cars) check_rserve_eval_variants('head(cars)', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 4, 4, 7, 7, 8, 9]), ShortDoubleVector->new([ 2, 10, 4, 22, 16, 10]), ], attributes => { names => Statistics::R::REXP::Character->new(['speed', 'dist']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), 'the cars data frame'); ## serialize head(mtcars) check_rserve_eval_variants('head(mtcars)', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 6, 6, 4, 6, 8, 6 ]), ShortDoubleVector->new([ 160, 160, 108, 258, 360, 225 ]), ShortDoubleVector->new([ 110, 110, 93, 110, 175, 105 ]), ShortDoubleVector->new([ 3.90, 3.90, 3.85, 3.08, 3.15, 2.76 ]), ShortDoubleVector->new([ 2.620, 2.875, 2.320, 3.215, 3.440, 3.460 ]), ShortDoubleVector->new([ 16.46, 17.02, 18.61, 19.44, 17.02, 20.22 ]), ShortDoubleVector->new([ 0, 0, 1, 1, 0, 1 ]), ShortDoubleVector->new([ 1, 1, 1, 0, 0, 0 ]), ShortDoubleVector->new([ 4, 4, 4, 3, 3, 3 ]), ShortDoubleVector->new([ 4, 4, 1, 1, 2, 1 ]), ], attributes => { names => Statistics::R::REXP::Character->new([ 'mpg' , 'cyl', 'disp', 'hp', 'drat', 'wt', 'qsec', 'vs', 'am', 'gear', 'carb']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant' ]), }), 'the mtcars data frame'); ## serialize head(iris) check_rserve_eval_variants('head(iris)', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 5.1, 4.9, 4.7, 4.6, 5.0, 5.4 ]), ShortDoubleVector->new([ 3.5, 3.0, 3.2, 3.1, 3.6, 3.9 ]), ShortDoubleVector->new([ 1.4, 1.4, 1.3, 1.5, 1.4, 1.7 ]), ShortDoubleVector->new([ 0.2, 0.2, 0.2, 0.2, 0.2, 0.4 ]), Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 1 ], attributes => { levels => Statistics::R::REXP::Character->new([ 'setosa', 'versicolor', 'virginica']), class => Statistics::R::REXP::Character->new(['factor']) } ), ], attributes => { names => Statistics::R::REXP::Character->new([ 'Sepal.Length', 'Sepal.Width', 'Petal.Length', 'Petal.Width', 'Species']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), 'the iris data frame'); ## Call lm(mpg ~ wt, data = head(mtcars)) check_rserve_eval_variants('lm(mpg ~ wt, data = head(mtcars))$call', Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), 'language lm(mpg~wt, head(mtcars))'); ## serialize lm(mpg ~ wt, data = head(mtcars)) check_rserve_eval_variants('lm(mpg ~ wt, data = head(mtcars))', Statistics::R::REXP::List->new( elements => [ # coefficients ShortDoubleVector->new( elements => [ 30.3002034730204, -3.27948805566774 ], attributes => { names => Statistics::R::REXP::Character->new(['(Intercept)', 'wt']) }), # residuals ShortDoubleVector->new( elements => [ -0.707944767170941, 0.128324687024322, 0.108208816128727, 1.64335062595135, -0.318764561523408, -0.853174800410051 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # effects ShortDoubleVector->new( elements => [ -50.2145397270552, -3.39713386075597, 0.13375416348722, 1.95527848390874, 0.0651588996571721, -0.462851730054076 ], attributes => { names => Statistics::R::REXP::Character->new([ '(Intercept)', 'wt', '', '', '', '' ]) }), # rank Statistics::R::REXP::Integer->new([2]), # fitted.values ShortDoubleVector->new( elements => [ 21.7079447671709, 20.8716753129757, 22.6917911838713, 19.7566493740486, 19.0187645615234, 18.9531748004101 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # assign Statistics::R::REXP::Integer->new([0, 1]), # qr Statistics::R::REXP::List->new( elements => [ # qr ShortDoubleVector->new( elements => [ -2.44948974278318, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, -7.31989184801706, 1.03587322261623, 0.542107126002057, -0.321898217952644, -0.539106265315558, -0.558413647303373 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 6, 2 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]), Statistics::R::REXP::Character->new([ '(Intercept)', 'wt' ]) ]), assign => Statistics::R::REXP::Integer->new([ 0, 1 ]), }), # qraux ShortDoubleVector->new( [ 1.40824829046386, 1.0063272758402 ]), # pivot Statistics::R::REXP::Integer->new([1, 2]), # tol ShortDoubleVector->new([1E-7]), # rank Statistics::R::REXP::Integer->new([2]), ], attributes => { names => Statistics::R::REXP::Character->new([ "qr", "qraux", "pivot", "tol", "rank" ]), class => Statistics::R::REXP::Character->new(['qr']) }), # df.residual Statistics::R::REXP::Integer->new([4]), # xlevels Statistics::R::REXP::List->new( elements => [], attributes => { names => Statistics::R::REXP::Character->new([]) }), # call Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), # terms Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::GlobalEnvironment->new, predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), # model Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 2.62, 2.875, 2.32, 3.215, 3.44, 3.46 ]), ], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant']), class => Statistics::R::REXP::Character->new(['data.frame']), terms => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::GlobalEnvironment->new, predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), }), ], attributes => { names => Statistics::R::REXP::Character->new([ 'coefficients', 'residuals', 'effects', 'rank', 'fitted.values', 'assign', 'qr', 'df.residual', 'xlevels', 'call', 'terms', 'model', ]), class => Statistics::R::REXP::Character->new(['lm']) }), 'lm mpg~wt, head(mtcars)'); while ( my ($name, $value) = each %{TEST_CASES()} ) { SKIP: { skip "not yet supported", 1 if ($value->{skip} || '' =~ 'rds'); check_rserve_eval_variants($value->{expr}, $value->{value}, $value->{desc}); } } io-oo-rserve-sereval-mock.t100644000765000024 5473213140202262 21501 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t#!perl use 5.010; use strict; use warnings FATAL => 'all'; use Test::More tests => 60; use Test::Fatal; use Test::MockObject::Extends; use Statistics::R::IO::Rserve; use Statistics::R::IO::REXPFactory; use lib 't/lib'; use ShortDoubleVector; use TestCases; sub mock_rserve_response { my $filename = shift; open (my $f, $filename) or die $! . " $filename"; binmode $f; my ($data, $rc) = ''; while ($rc = read($f, $data, 8192, length $data)) {} die $! unless defined $rc; my $response = pack("VVA*", 0x10001, length($data), "\0"x8) . $data; my $mock = Test::MockObject::Extends->new('IO::Socket::INET'); $mock->mock('print', sub { my ($self, $data) = (shift, shift); length($data); }); $mock->mock('read', sub { state $pos = 0; my ($length, $offset) = @_[2..3]; # args: self, $data, length, position $_[1] .= substr($response, $pos, $length); $pos += $length; # advance the cursor $length # return the amount read }); $mock->set_always('peerhost', 'localhost'); $mock->set_always('peerport', 6311) } sub parse_rserve_eval { my ($file, $expected, $message) = @_; my $filename = $file . '-xdr'; subtest 'mock ' . $message => sub { plan tests => 11; my $mock = mock_rserve_response($filename); my $rserve = Statistics::R::IO::Rserve->new(fh => $mock); ## NOTE: I'm switching the order of comparisons to ensure ## ShortDoubleVector's 'eq' overload is used is($expected, $rserve->ser_eval('testing, please ignore'), $message); is($mock->next_call(), 'peerhost', 'get server name'); is($mock->next_call(), 'peerport', 'get server port'); my ($request, $args) = $mock->next_call(); is($request, 'print', 'send request'); my ($command, $length, $offset, $length_hi) = unpack('V4', $args->[1]); is($command, 0xf5, 'request CMD_serEval'); is($length+16, length($args->[1]), 'request length'); is($offset, 0, 'request offset'); is($length_hi, 0, 'request hi-length'); is($mock->next_call(), 'read', 'read response status'); is($mock->next_call(), 'read', 'read response data'); is($mock->next_call(), undef, 'last call'); } } ## integer vectors ## serialize 1:3, XDR: true parse_rserve_eval('t/data/noatt-123l', Statistics::R::REXP::Integer->new([ 1, 2, 3 ]), 'int vector no atts'); ## serialize a=1L, b=2L, c=3L, XDR: true parse_rserve_eval('t/data/abc-123l', Statistics::R::REXP::Integer->new( elements => [ 1, 2, 3 ], attributes => { names => Statistics::R::REXP::Character->new(['a', 'b', 'c']) }), 'int vector names att'); ## double vectors ## serialize 1234.56, XDR: true parse_rserve_eval('t/data/noatt-123456', ShortDoubleVector->new([ 1234.56 ]), 'double vector no atts'); ## serialize foo=1234.56, XDR: true parse_rserve_eval('t/data/foo-123456', ShortDoubleVector->new( elements => [ 1234.56 ], attributes => { names => Statistics::R::REXP::Character->new(['foo']) }), 'double vector names att'); ## character vectors ## serialize letters[1:3], XDR: true parse_rserve_eval('t/data/noatt-abc', Statistics::R::REXP::Character->new([ 'a', 'b', 'c' ]), 'character vector no atts'); ## serialize A='a', B='b', C='c', XDR: true parse_rserve_eval('t/data/ABC-abc', Statistics::R::REXP::Character->new( elements => [ 'a', 'b', 'c' ], attributes => { names => Statistics::R::REXP::Character->new(['A', 'B', 'C']) }), 'character vector names att - xdr'); ## raw vectors ## serialize as.raw(c(1:3, 255, 0), XDR: true parse_rserve_eval('t/data/noatt-raw', Statistics::R::REXP::Raw->new([ 1, 2, 3, 255, 0 ]), 'raw vector'); ## list (i.e., generic vector) ## serialize list(1:3, list('a', 'b', 11), 'foo'), XDR: true parse_rserve_eval('t/data/noatt-list', Statistics::R::REXP::List->new([ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ]), 'generic vector no atts'); ## serialize list(foo=1:3, list('a', 'b', 11), bar='foo'), XDR: true parse_rserve_eval('t/data/foobar-list', Statistics::R::REXP::List->new( elements => [ Statistics::R::REXP::Integer->new([ 1, 2, 3]), Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a']), Statistics::R::REXP::Character->new(['b']), ShortDoubleVector->new([11]) ]), Statistics::R::REXP::Character->new(['foo']) ], attributes => { names => Statistics::R::REXP::Character->new(['foo', '', 'bar']) }), 'generic vector names att - xdr'); ## matrix ## serialize matrix(-1:4, 2, 3), XDR: true parse_rserve_eval('t/data/noatt-mat', Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), }), 'int matrix no atts'); ## serialize matrix(-1:4, 2, 3, dimnames=list(c('a', 'b'))), XDR: true parse_rserve_eval('t/data/ab-mat', Statistics::R::REXP::Integer->new( elements => [ -1, 0, 1, 2, 3, 4 ], attributes => { dim => Statistics::R::REXP::Integer->new([2, 3]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new(['a', 'b']), Statistics::R::REXP::Null->new ]), }), 'int matrix rownames'); ## data frames ## serialize head(cars) parse_rserve_eval('t/data/cars', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 4, 4, 7, 7, 8, 9]), ShortDoubleVector->new([ 2, 10, 4, 22, 16, 10]), ], attributes => { names => Statistics::R::REXP::Character->new(['speed', 'dist']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), 'the cars data frame'); ## serialize head(mtcars) parse_rserve_eval('t/data/mtcars', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 6, 6, 4, 6, 8, 6 ]), ShortDoubleVector->new([ 160, 160, 108, 258, 360, 225 ]), ShortDoubleVector->new([ 110, 110, 93, 110, 175, 105 ]), ShortDoubleVector->new([ 3.90, 3.90, 3.85, 3.08, 3.15, 2.76 ]), ShortDoubleVector->new([ 2.620, 2.875, 2.320, 3.215, 3.440, 3.460 ]), ShortDoubleVector->new([ 16.46, 17.02, 18.61, 19.44, 17.02, 20.22 ]), ShortDoubleVector->new([ 0, 0, 1, 1, 0, 1 ]), ShortDoubleVector->new([ 1, 1, 1, 0, 0, 0 ]), ShortDoubleVector->new([ 4, 4, 4, 3, 3, 3 ]), ShortDoubleVector->new([ 4, 4, 1, 1, 2, 1 ]), ], attributes => { names => Statistics::R::REXP::Character->new([ 'mpg' , 'cyl', 'disp', 'hp', 'drat', 'wt', 'qsec', 'vs', 'am', 'gear', 'carb']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant' ]), }), 'the mtcars data frame'); ## serialize head(iris) parse_rserve_eval('t/data/iris', Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 5.1, 4.9, 4.7, 4.6, 5.0, 5.4 ]), ShortDoubleVector->new([ 3.5, 3.0, 3.2, 3.1, 3.6, 3.9 ]), ShortDoubleVector->new([ 1.4, 1.4, 1.3, 1.5, 1.4, 1.7 ]), ShortDoubleVector->new([ 0.2, 0.2, 0.2, 0.2, 0.2, 0.4 ]), Statistics::R::REXP::Integer->new( elements => [ 1, 1, 1, 1, 1, 1 ], attributes => { levels => Statistics::R::REXP::Character->new([ 'setosa', 'versicolor', 'virginica']), class => Statistics::R::REXP::Character->new(['factor']) } ), ], attributes => { names => Statistics::R::REXP::Character->new([ 'Sepal.Length', 'Sepal.Width', 'Petal.Length', 'Petal.Width', 'Species']), class => Statistics::R::REXP::Character->new(['data.frame']), 'row.names' => Statistics::R::REXP::Integer->new([ 1, 2, 3, 4, 5, 6 ]), }), 'the iris data frame'); ## Call lm(mpg ~ wt, data = head(mtcars)) parse_rserve_eval('t/data/lang-lm-mpgwt', Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), 'language lm(mpg~wt, head(mtcars))'); ## serialize lm(mpg ~ wt, data = head(mtcars)) parse_rserve_eval('t/data/mtcars-lm-mpgwt', Statistics::R::REXP::List->new( elements => [ # coefficients ShortDoubleVector->new( elements => [ 30.3002034730204, -3.27948805566774 ], attributes => { names => Statistics::R::REXP::Character->new(['(Intercept)', 'wt']) }), # residuals ShortDoubleVector->new( elements => [ -0.707944767170941, 0.128324687024322, 0.108208816128727, 1.64335062595135, -0.318764561523408, -0.853174800410051 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # effects ShortDoubleVector->new( elements => [ -50.2145397270552, -3.39713386075597, 0.13375416348722, 1.95527848390874, 0.0651588996571721, -0.462851730054076 ], attributes => { names => Statistics::R::REXP::Character->new([ '(Intercept)', 'wt', '', '', '', '' ]) }), # rank Statistics::R::REXP::Integer->new([2]), # fitted.values ShortDoubleVector->new( elements => [ 21.7079447671709, 20.8716753129757, 22.6917911838713, 19.7566493740486, 19.0187645615234, 18.9531748004101 ], attributes => { names => Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]) }), # assign Statistics::R::REXP::Integer->new([0, 1]), # qr Statistics::R::REXP::List->new( elements => [ # qr ShortDoubleVector->new( elements => [ -2.44948974278318, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, 0.408248290463863, -7.31989184801706, 1.03587322261623, 0.542107126002057, -0.321898217952644, -0.539106265315558, -0.558413647303373 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 6, 2 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ "Mazda RX4", "Mazda RX4 Wag", "Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant" ]), Statistics::R::REXP::Character->new([ '(Intercept)', 'wt' ]) ]), assign => Statistics::R::REXP::Integer->new([ 0, 1 ]), }), # qraux ShortDoubleVector->new( [ 1.40824829046386, 1.0063272758402 ]), # pivot Statistics::R::REXP::Integer->new([1, 2]), # tol ShortDoubleVector->new([1E-7]), # rank Statistics::R::REXP::Integer->new([2]), ], attributes => { names => Statistics::R::REXP::Character->new([ "qr", "qraux", "pivot", "tol", "rank" ]), class => Statistics::R::REXP::Character->new(['qr']) }), # df.residual Statistics::R::REXP::Integer->new([4]), # xlevels Statistics::R::REXP::List->new( elements => [], attributes => { names => Statistics::R::REXP::Character->new([]) }), # call Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('lm'), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('head'), Statistics::R::REXP::Symbol->new('mtcars'), ]), ], attributes => { names => Statistics::R::REXP::Character->new([ '', 'formula', 'data' ]) }), # terms Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::GlobalEnvironment->new, predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), # model Statistics::R::REXP::List->new( elements => [ ShortDoubleVector->new([ 21.0, 21.0, 22.8, 21.4, 18.7, 18.1 ]), ShortDoubleVector->new([ 2.62, 2.875, 2.32, 3.215, 3.44, 3.46 ]), ], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']), 'row.names' => Statistics::R::REXP::Character->new([ 'Mazda RX4', 'Mazda RX4 Wag', 'Datsun 710', 'Hornet 4 Drive', 'Hornet Sportabout', 'Valiant']), class => Statistics::R::REXP::Character->new(['data.frame']), terms => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('~'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ], attributes => { variables => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), factors => Statistics::R::REXP::Integer->new( elements => [ 0, 1 ], attributes => { dim => Statistics::R::REXP::Integer->new([ 2, 1 ]), dimnames => Statistics::R::REXP::List->new([ Statistics::R::REXP::Character->new([ 'mpg', 'wt' ]), Statistics::R::REXP::Character->new([ 'wt' ]), ]), }), 'term.labels' => Statistics::R::REXP::Character->new(['wt']), order => Statistics::R::REXP::Integer->new([1]), intercept => Statistics::R::REXP::Integer->new([1]), response => Statistics::R::REXP::Integer->new([1]), class => Statistics::R::REXP::Character->new([ 'terms', 'formula' ]), '.Environment' => Statistics::R::REXP::GlobalEnvironment->new, predvars => Statistics::R::REXP::Language->new( elements => [ Statistics::R::REXP::Symbol->new('list'), Statistics::R::REXP::Symbol->new('mpg'), Statistics::R::REXP::Symbol->new('wt'), ]), dataClasses => Statistics::R::REXP::Character->new( elements => ['numeric', 'numeric'], attributes => { names => Statistics::R::REXP::Character->new(['mpg', 'wt']) }), }), }), ], attributes => { names => Statistics::R::REXP::Character->new([ 'coefficients', 'residuals', 'effects', 'rank', 'fitted.values', 'assign', 'qr', 'df.residual', 'xlevels', 'call', 'terms', 'model', ]), class => Statistics::R::REXP::Character->new(['lm']) }), 'lm mpg~wt, head(mtcars)'); ## Server error my $error_mock = Test::MockObject::Extends->new('IO::Socket::INET'); $error_mock->mock('print', sub { my ($self, $data) = (shift, shift); length($data); }); $error_mock->mock('read', sub { # args: self, $data, length $_[1] = pack('VVA*', 0x10002, 0, "\0"x8); 0 }); $error_mock->set_always('peerhost', 'localhost'); $error_mock->set_always('peerport', 6311); my $rserve = Statistics::R::IO::Rserve->new(fh => $error_mock); like(exception { $rserve->ser_eval('testing, please ignore') }, qr/R server returned an error: 0x10002/, 'server error'); while ( my ($name, $value) = each %{TEST_CASES()} ) { SKIP: { skip "not yet supported", 1 if ($value->{skip} || '' =~ 'rds'); parse_rserve_eval('t/data/' . $name, $value->{value}, $value->{desc}); } } ABCDE-tfftf-xdr_xz.rds100644000765000024 16413140202262 21172 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£àw:],|ùŸø”YéK 6ˆ…éž%ãæÔ®*î=wò-€ˆÏ·Unïk{@@ȽÛèW®Eϼ·ÚTôú:RxósÕöB™ YZall_uncompressed.RData100644000765000024 1406713140202262 21562 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataRDX2 X  ab_mat ÿÿÿÿ dim  dimnames a bþþ abc_chr a b c names A B Cþ abc_int ÿ a b cþ e1ýþ x fooþ y barþþþ e2ÿþþþþþ ÿ þþþþþþþþþþþþþþþþþþþþþþþþþþ foo_num@“J=p£× ÿ fooþ foobar_list  a b@& fooÿ foo  barþ mtcars_lm @>LÚ"‚Ä´À ðÓP?ÿHÒo^D?°®@ï&€¿ÝŸ\ÜÞ¬€ÿ (Intercept) wt    þ @5µ;ÞF_Ÿ@4ß&ö @6±:cd@3Á³Åüì@3ÍÁ@2ôCƒ!ìÿ Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive Hornet Sportabout Valiantþ  À˜Ž !.?Ú ½p ,??Ú ½p ,??Ú ½p ,??Ú ½p ,??Ú ½p ,?ÀG‘º…ö?ð’ïÌßw?áXñ #o±¿Ô™úû¯Ó¿á@[ÈS+.¿áÞ†LÛ©ÿ ÿ Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive Hornet Sportabout Valiant (Intercept) wt assign þ?öˆ/\ ?ðê¡,ç0 >z×òš¼¯H ÿ qr qraux pivot tol rank class qrþ ÿþ lm formula ~ mpg wtþ data head mtcarsþþ variables listÿÿþ factors ÿ ÿ mpg wt wtþ term.labels wt order  intercept  response ÿ terms formula .Environmentý predvarsÿÿÿþ dataClasses numeric numericÿ mpg wtþþÿÿÿþ@5@5@6ÌÌÌÌÌÍ@5ffffff@2³33333@2™™™™š@õÂ\(ö@@\(õÂ@ ¸Që…¸@ …¸Që…@ ®záG®ÿ mpg wt termsÿÿÿÿþÿ ÿ ÿ mpg wt wtþÿ wtÿ ÿ  ÿ ÿ terms formula!ÿý"ÿÿÿÿþ#ÿ numeric numericÿ mpg wtþþÿÿÿþ row.names Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive Hornet Sportabout Valiantÿ data.frameþÿ  coefficients residuals effects rank fitted.values assign qr df.residual xlevels call terms modelÿ lmþ my_cars@@@@@ @"@@$@@6@0@$ÿ speed dist%ÿ €ÿ data.frameþ my_iris@ffffff@™™™™™š@ÌÌÌÌÌÍ@ffffff@@™™™™™š@ @@ ™™™™™š@ÌÌÌÌÌÍ@ ÌÌÌÌÌÍ@333333?öffffff?öffffff?ôÌÌÌÌÌÍ?ø?öffffff?û333333?É™™™™™š?É™™™™™š?É™™™™™š?É™™™™™š?É™™™™™š?Ù™™™™™š  levels setosa versicolor virginicaÿ factorþÿ Sepal.Length Sepal.Width Petal.Length Petal.Width Species%ÿ €ÿ data.frameþ my_mtcars @5@5@6ÌÌÌÌÌÍ@5ffffff@2³33333@2™™™™š@@@@@ @@d@d@[@p @v€@l @[€@[€@W@@[€@eà@Z@@333333@333333@ÌÌÌÌÌÍ@£× =p¤@ 333333@záG®@õÂ\(ö@@\(õÂ@ ¸Që…¸@ …¸Që…@ ®záG®@0uÂ\(ö@1¸Që…@2œ(õÂ\@3p£× =q@1¸Që…@48Që…¸?ð?ð?ð?ð?ð?ð@@@@@@@@?ð?ð@?ðÿ  mpg cyl disp hp drat wt qsec vs am gear carb%ÿ Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive Hornet Sportabout Valiantÿ data.frameþ noatt_chr a b c noatt_int ÿÿÿÿ noatt_list  a b@& foo noatt_mat ÿÿÿÿÿ þ noatt_num@“J=p£×  noatt_rawÿþclos_args-xdr_bzip.rds100644000765000024 131013140202262 21556 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYúîp~ì¦ÿÿÿÒDæ€?'Þ`¿ßê@@ À“™ ÂQ4i¤iêiêl“CFOH Ô ›(4Ñ54&ÐÉ'©á@È2=!Í44¦Ó@ @1# MQ#S2GµCCÒh4PhÉh…f•OPP®%Êß„ˆÉ ÚX‚E¾vÏð΃‚¶—¤E-QÕ š«~Á0£#ži–M)ŒÀ2Uº!}¿2ìq¸û{¼Wjš¦¦Š€‘M:+&òdܤ…ˆk›Õ™YƒéSa4ZPɳðîÛiz…ÜU!å«Þ¬zfé<\1£Šê‰nžŽ…!Ü÷n­8iª%’ÕíXªÑ‘G•#eÖëj1(*Ë,'âøœ =SqR«ZýÁfvck»C¬BÈ0 ¶‰V –”®½² N-KÇçÅCrìu˜]ö²´Gc"A` $šç_-Ù0®ÿf›ïoZý}^ã×㽚·Š)@åRµ“+ýlq²Ä¨›I:dPB›,Y$”€ ÁH’Zì¤ÔD‚‚„%XAB(J !òIÂÎÀ ñ%P…Ù¶®Ä9Êë–ía ™ë\î5¯µ­Uën2¤L‹ŽJeE Ä—ßÍÅpÈR»3O~5c†½ÔçQ2€_Ô3Ưõ†›KM6u<˜ûIaÁ˜˜x2…àÿ‹¹"œ(H}w8?clos_dots-xdr_bzip.rds100644000765000024 152413140202262 21602 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYXã¤ÿ‡ÿÿïö÷ˆ'þ`¯ÿßê€ @ ÀŒJ ,ÃM"5'©š4BzLFŒ†ƒ@AhŠd ¦žJ›òEöbÑŽBý°³ '<•a«¥g]$˜éq•šeçso;¯¢ˆ—æ$ªÛšD· žÇ§ÛVÖv´ê‚6ÇW]¬ó JCl7.vÉ ƒõ® Ö×!R’ ©‰$ €^èÁžªºxådÎ(üQ0ÈÂÇ­ÍûÚ‰ÂÀ!C ¦’µ i¦”Þ†PÓhA& ±Ä›@¦WÚm¸ì!Mvb’>´õº<++—ueÀé.₦žmâÛˆÃäÔ9sêżnpÑe° ûb} ˼ÁVÑ\<~G©î‚×mCãÁtD°g09ÿa öó;3QPm.͇í2™F:M¬„v•¨Íõì$…ßRþ±,Óœ¢bš`È:¡‚ ´…8á ¶„ñ†2›n²$¤\w¦¡+¾)B®pÕìmˆ”BÆm_I…k£„ŸÜ1Ö€ kþ.äŠp¡!ÎÖ¤df_auto_rownames-noxdr100644000765000024 33013140202262 21641 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB   x y z names a b  row.names €ýÿÿÿ class  data.frameþdf_expl_rownames-noxdr100644000765000024 33013140202262 21641 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB   x y z names a b  row.names € class  data.frameþempty_cpx-xdr_bzip.rds100644000765000024 6113140202262 21554 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY*9ó Âx€@ !)‰ †VTeµ‘r<]ÉáB@¨çÌPempty_int-xdr_bzip.rds100644000765000024 6213140202262 21555 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYmª³ Âx@ 1 ”õ ,j"[ÉâîH§  µQ¶`empty_lgl-xdr_bzip.rds100644000765000024 6113140202262 21540 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY–I¦§ Âx@ 0À§©‘.‹‘ •59ñw$S… dšjpempty_num-xdr_bzip.rds100644000765000024 6213140202262 21562 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY¶½%$ Âx@ 1 ”õ ,j"[ÉâîH§ פ¤€empty_raw-xdr_bzip.rds100644000765000024 6413140202262 21556 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY‡g± âx@@ 1 ”õ ,j"[ÉâîH§ ð,ö empty_sym-xdr_bzip.rds100644000765000024 6213140202262 21573 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY€]!Âø@ !§¡QC)DÍçâîH§  ¤" env_uncompressed.RData100644000765000024 51713140202262 21535 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataRDX2 X  e1ýþ x fooþ y barþþþ e2ÿþþþþþÿ þþþþþþþþþþþþþþþþþþþþþþþþþþþexpr_call-xdr_bzip.rds100644000765000024 12013140202262 21531 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYõˆÞ+$~ÿ1À@@ TPÓL F†d%·«OØ’ªøyÄ¢!K h¦vŶ®¹q‚îH§ ±Å`expr_many-xdr_bzip.rds100644000765000024 14613140202262 21572 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY:G¹³Cþ€ÿ±À@@ HIPhÈõ 0‘Pi£L™Jbñ©¯Ö bg¹©Ž“~ÂWd…GDƒ ¬Fë$ÒPÂ&²'¾EÜ‘N$‘îlÀexpr_null-xdr_bzip.rds100644000765000024 6713140202262 21562 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY7ü Ö âø@ 1 zF…’<R…A3N<]ÉáB@ßð3Xfoobar-list-xdr_xz.rds100644000765000024 21413140202262 21502 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£àµP],|ùŸøw3q…û™HÛedΫx•¼»©¹e ÿvhÜÆˆ ›ú«Q}wÀ/¦Xæ«ýHxê-{fzD´Iwû_x-¡xÜ€s€æ”Ah¶;ÃÉ>0 ‹YZglobalenv-xdr_bzip.rds100644000765000024 6213140202262 21516 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYšÛl§Âø@ !§¡QC)DÍçâîH§ [m”àlist_null-xdr_bzip.rds100644000765000024 6713140202262 21557 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYà}`Š âø@ 1 zF…’<R…A3N<]ÉáBCõ‚(noatt-abc-xdr_bzip.rds100644000765000024 7613140202262 21422 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYzÆäLc|0@@8 !ˆ ˆ@Ð4I«pD* ³pÁ2€»ÅÜ‘N$±¹noatt-cpx-xdr_bzip.rds100644000765000024 7213140202262 21463 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYFÒÑŸÆxPÀ@ 1L@ÓÔÒmLò9-R€-!L[ûyîrE8PFÒÑŸnoatt-mat-xdr_bzip.rds100644000765000024 11713140202262 21472 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY/$%Ãý2@" TS&ƒ5'ªzQ¡ñ¬•—KŒÕûQµƒtXÁô((PÜ^…À¹Ñ¢îH§ ƒÅä€noatt-raw-xdr_bzip.rds100644000765000024 7113140202262 21461 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYÞ- bú@@ 1L@ÓÒ%ãJKBíq´Ã…ž.äŠp¡!¼:&Znoatt-tfftf-xdr_xz.rds100644000765000024 12413140202262 21515 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à)],|ùŸø”Yé„Uº] —Ò˜ITC32*Œ(MB™ YZs4_subclass-xdr_xz.rds100644000765000024 27413140202262 21514 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£àý}],|ùŸø— ?ܪ.¸Om‹¤P˜(•‰ŽÊÕðX¡½:õÔª™P´èZn&Lb2Óq%ÕI™¨þeN 5¿šs³òµ±~®‡Æ„I­ÜrÉåÙàÃT‰PÔø V²PN;xG&@œ½®ü…´)Ø\®Mnc­ª*T<4g•þ>qåÔ>0 ‹YZWebWork000755000765000024 013140202262 16630 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/extrasRserveClient.pl100644000765000024 1527313140202262 21762 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/extras/WebWork=head1 NAME RserveClient.pl - Macros for evaluating R code on an Rserve server =head1 SYNPOSIS =head1 SYNOPSIS loadMacros('RserveClient.pl'); rserve_start(); my @rnorm = rserve_eval("rnorm(15, mean=$m, sd=$sd)"); rserve_eval(data(stackloss)); my @coeff = rserve_eval('lm(stack.loss ~ stack.x, stackloss)$coeff'); rserve_finish(); =head1 DESCRIPTION The macros in this file provide access to facilities of L, optionally located on another server, by using the L protocol. B Before you can use these macros, you will need to configure the location of your Rserve host by adding it to C<$pg{specialPGEnvironmentVars}{Rserve}{host}>, for instance by appending the following line to F: $pg{specialPGEnvironmentVars}{Rserve} = {host => "localhost"}; Without this configuration in place, Rserve macros will only print out a warning about missing configuration and return C. =head1 MACROS The macros in this file set up a connection to the R server and pass a string parameter to R for evaluation. The resulting vector is returned as a perl array object. =over 4 =item rserve_eval REXPR Evaluates an R expression, given as text string in REXPR, on the L server and returns its result as a Perl representation of the L object. Multiple calls within the same problem share the R session and the object workspace. =item rserve_query Evaluates an R expression, given as text string in REXPR, in a single-use session on the L server and returns its result as a Perl representation of the L object. This function is different from C in that each call is completely self-enclosed and its R session is discarded after it returns. =item rserve_start, rserve_finish Start up and close the current connection to the Rserve server. In normal use, these functions are completely optional because the first call to C will call start the session if one is not already open. Similarly, the current session will be closed in its destructor when the current question goes out of scope. Other than backward compatibility, the only reason for using these functions is to start a new clean session within a single problem, which shouldn't be a common occurrence. =item rserve_start_plot [IMG_TYPE, [WIDTH, HEIGHT]] Opens a new R graphics device to capture subsequent graphics output in a temporary file on the R server. IMG_TYPE can be 'png', 'jpg', or 'pdf', with 'png' as the default. If left unspecified, WIDTH and HEIGHT, will use the R graphics device's default size. Returns the name of the remote file. =item rserve_finish_plot REMOTE_NAME Closes the R graphics capture to file REMOTE_NAME, transfers the file to WebWork's temporary file area, and returns the name of the local file that can then be used by the image macro. =item rserve_get_file REMOTE_NAME, [LOCAL_NAME] Transfer the file REMOTE_NAME from the R server to WebWork's temporary file area, and returns the name of the local file that can then be used by the C macro. If LOCAL_NAME is not specified, the filename portion of the REMOTE_NAME is used. =back =head1 DEPENDENCIES Requires perl 5.010 or newer and CPAN module Statistics::R::IO, which has to be loaded in WebWork's Safe compartment by adding it to ${pg}{modules}. =cut my $rserve; # Statistics::R::IO::Rserve instance sub _rserve_warn_no_config { my @trace = split /\n/, Value::traceback(); my ($function, $line, $file) = $trace[0] =~ /^\s*in ([^ ]+) at line (\d+) of (.*)/; $PG->warning_message('Calling ' . $function . ' is disabled unless Rserve host is configured in $pg{specialPGEnvironmentVars}{Rserve}{host}') } sub rserve_start { _rserve_warn_no_config && return unless $Rserve->{host}; $rserve = Statistics::R::IO::Rserve->new(server => $Rserve->{host}, _usesocket => 1); # Keep R's RNG reproducible for this problem $rserve->eval("set.seed($problemSeed)") } sub rserve_finish { $rserve->close() if $rserve; undef $rserve } sub rserve_eval { _rserve_warn_no_config && return unless $Rserve->{host}; my $query = shift; rserve_start unless $rserve; my $result = _try_eval($rserve, $query); _unref_rexp($result) } sub rserve_query { _rserve_warn_no_config && return unless $Rserve->{host}; my $query = shift; $query = "set.seed($problemSeed)\n" . $query; my $rserve_client = Statistics::R::IO::Rserve->new(server => $Rserve->{host}, _usesocket => 1); my $result = _try_eval($rserve_client, $query); $rserve_client->close; _unref_rexp($result) } ## Evaluates an R expression guarding it inside an R `try` function ## ## Returns the result as a REXP if no exceptions were raised, or ## `die`s with the text of the exception message. sub _try_eval { my ($rserve, $query) = @_; my $result = $rserve->eval("try({ $query }, silent=TRUE)"); die $result->to_pl->[0] if $result->inherits('try-error'); $result } ## Returns a REXP's Perl representation, dereferencing it if it's an ## array reference ## ## `REXP::to_pl` returns a string scalar for Symbol, undef for Null, ## and an array reference to contents for all vector types. This ## function is a utility wrapper to make it easy to assign a Vector's ## representation to an array variable, while still working sensibly ## for non-arrays. sub _unref_rexp { my $rexp = shift; my $value = $rexp->to_pl; if (ref($value) eq ref([])) { @{$value} } else { $value } } sub rserve_start_plot { _rserve_warn_no_config && return unless $Rserve->{host}; my $device = shift // 'png'; my $width = shift // ''; my $height = shift // ''; die "Unsupported image type $device" unless $device =~ /^(png|pdf|jpg)$/; my $remote_image = (rserve_eval("tempfile(fileext='.$device')"))[0]; $device =~ s/jpg/jpeg/; rserve_eval("$device('$remote_image', width = ${width}, height = ${height})"); $remote_image } sub rserve_finish_plot { _rserve_warn_no_config && return unless $Rserve->{host}; my $remote_image = shift or die "Missing remote image name"; rserve_eval("dev.off()"); rserve_get_file($remote_image) } sub rserve_get_file { _rserve_warn_no_config && return unless $Rserve->{host}; my $remote = shift or die "Missing remote file name"; my $local = shift // $PG->fileFromPath($remote); $local = $PG->surePathToTmpFile($local); $rserve->get_file($remote, $local); $local } 1; cpx-vector-xdr_bzip.rds100644000765000024 11213140202262 21653 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY9”ónøPÄ@À@@ !´’iêlš„Ôý“]šb¶‘lM•pg¹oÁµŸ‹¹"œ(HÊ y€empty_char-xdr_bzip.rds100644000765000024 6413140202262 21702 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYÆh`· âx@@ 1 ”õ ,j"[ÉâîH§ Í àempty_clos-xdr_bzip.rds100644000765000024 107013140202262 21763 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY(ܳÊÿÿÈPæ€/#Þ@/ßê@À[6 4Šz¦ÍOPÓÑ4PhÐddz›P < hšL“ÈžŠmLL#!„šd2 M22dÄb`É‚dÑ„``)5jOI±&h™0 ˜ƒ6¥!)¥2„i$·Ò3$hB‰Ë(lRæa1MTlyÒF²$’¢ŸK‡Ù#$b/˜"_nÏ®KKuhQc!ÍeœÆîU+V€@§jæO÷‰n殎£ p]IVÃÍŠâ!?äÌeÎWÙWP,:J€!)Iz¿)ššÑΗd§¿â Q B²ÆÊÝgî#¢ÂÓ¿-†µÖ6Ï”°²’`0¤@Í»9Øìú𕘪J °pÏä¬ÁÀÏvÙH‚H"‰EcŠVd€·¢H‚Y$BE A@î€zA-a A –ÛÊùÁpGAìeÖ²ªFY×j©Û ýñ&83jÔ.#ëÉXÎ'ï¼û¢M5V¼¯i„ãSV·-š$T<î °Ê(Œh8vÄšîCúÚw‹Æöoön\×(‰•.ÈÕÿ‹¹"œ(H n empty_expr-xdr_bzip.rds100644000765000024 6413140202262 21743 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYæœã4 âx@ 1 ”õ ,j"[ÉâîH§ Óœf€empty_list-xdr_bzip.rds100644000765000024 6413140202262 21740 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYÈ âx@ 1 ”õ ,j"[ÉâîH§ ¯ùfoo-123456-xdr_bzip.rds100644000765000024 14313140202262 21112 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYQ6§o²þ1@@@#È€ TP4õ)ªz™ z„?<VeH]qÇNä;(íò>ŠrY÷¢bL]!]íéè©#*˜:ñ ø ï ƒY7¨oÿ$‚³5²H² #µ¤€ˆaìY?~ÂU-ŽD ÿ´ 9d%`F½±OA Ef'TSÈ $ñID<¥ÊÉ`XqÄr§È†éºKYn›¶êPI€hêöt¤ô¶mÊL/âŒÑ:LA0ôP]ê&ƒÃêTó †JM!k„בQ ²±hBdOíÿbÔ„ QÔ5ÖÚÄ­HDq›žQ£„¿Lþ>­,#]S¡³ÿþŽ®WDP*»•ÄEZn-¡0œ­‘ͶºíÚÒAJI­¤B$‹Ñϰ¶–„h©© Æ«+¹H\AøíÆãösBè-8Ð5Õm?BWû~üðç±|¹w¨s^H’y4þÂ:úÐù=G¿pOà&ÛÆg·L.‘|X niü]Ñl]9¿-ÖUWz«UoÔYá-`¶ÖVû/B½ÎZåõKHÒJëª*.¼‘>šþ—¼f×h(˽´½-ó„ .’÷3ñQ‡…‚,Êø<0üÀ !K% ø5Â&PôÇÝë„VMJù2PJÐ3ð.éèåÉI…¼çÛs½Keè¯ÄŠ@QêÉ$®êT„ê\„ÔåÙ) noatt-123456-xdr_xz.rds100644000765000024 12413140202262 21150 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£X @“J=p£× zB×29Üù7B™ YZnoatt-123l-xdr_bzip.rds100644000765000024 6313140202262 21352 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY‡Ly Bx@ 1 ÍM4@Ͷ´©€6‰âîH§ é! noatt-list-xdr_bzip.rds100644000765000024 13013140202262 21657 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYû8ÁU7w~3H@@1 T5=@†š Ô“CÓHh[1êVø¬¬^gF­M…Ä‚YÓJÃRrH{Áœ|]ÉáBCìãTnoatt-true-xdr_bzip.rds100644000765000024 6213140202262 21647 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY5’° Bx@ 0À§¤Ñ­Öp©\‰×ÅÜ‘N$ cd¬pairlist_tagged-xdr.rds100644000765000024 10413140202262 21700 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`fdb`b2Y˜€# 'fNËÏR¼`!fBâ3¡)gLF’öE‹ê^pairlist_untagged-noxdr100644000765000024 10213140202262 22007 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataB    þvecs_uncompressed.RData100644000765000024 75513140202262 21711 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataRDX2 X  noatt_chr a b c abc_chr a b c names A B Cþ noatt_num@“J=p£×  noatt_int ÿÿÿÿ abc_int ÿ a b cþ foo_num@“J=p£× ÿ fooþ noatt_rawÿþDouble.pm100644000765000024 440413140202262 21533 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::Double; # ABSTRACT: an R numeric vector $Statistics::R::REXP::Double::VERSION = '1.0002'; use 5.010; use Scalar::Util qw(looks_like_number); use Class::Tiny::Antlers; use namespace::clean; extends 'Statistics::R::REXP::Vector'; use overload; use constant sexptype => 'REALSXP'; sub _type { 'double'; } sub BUILDARGS { my $class = shift; my $attributes = $class->SUPER::BUILDARGS(@_); if (ref($attributes->{elements}) eq 'ARRAY') { $attributes->{elements} = [ map { looks_like_number($_) ? $_ : undef } Statistics::R::REXP::Vector::_flatten(@{$attributes->{elements}}) ] } $attributes } sub BUILD { my ($self, $args) = @_; # Required attribute type die "Elements of the 'elements' attribute must be numbers or undef" if defined($self->elements) && grep { defined($_) && !looks_like_number($_) } @{$self->elements} } 1; # End of Statistics::R::REXP::Double __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::Double - an R numeric vector =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::Double my $vec = Statistics::R::REXP::Double->new([ 1, 4, 'foo', 42 ]); print $vec->elements; =head1 DESCRIPTION An object of this class represents an R numeric (aka double) vector (C). =head1 METHODS C inherits from L, with the added restriction that its elements are real numbers. Elements that are not numbers have value C, as do elements with R value C. =over =item sexptype SEXPTYPE of complex vectors is C. =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILDARGS BUILD =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut Symbol.pm100644000765000024 515413140202262 21571 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::Symbol; # ABSTRACT: an R symbol $Statistics::R::REXP::Symbol::VERSION = '1.0002'; use 5.010; use Scalar::Util qw(blessed); use Class::Tiny::Antlers qw(-default around); #use Statistics::R::REXP::Types; use namespace::clean; extends 'Statistics::R::REXP'; use constant sexptype => 'SYMSXP'; has name => ( is => 'ro', default => '', ); use overload '""' => sub { 'symbol `'. shift->name .'`' }; sub BUILDARGS { my $class = shift; my $attributes = {}; if ( scalar @_ == 1) { if ( ref $_[0] eq 'HASH' ) { $attributes = $_[0] } else { $attributes->{name} = $_[0] } } elsif ( @_ % 2 ) { die "The new() method for $class expects a hash reference or a key/value list." . " You passed an odd number of arguments\n"; } else { $attributes = { @_ }; } if (blessed($attributes->{name}) && $attributes->{name}->isa('Statistics::R::REXP::Symbol')) { $attributes->{name} = $attributes->{name}->name } $attributes } sub BUILD { my ($self, $args) = @_; die "Attribute 'name' must be a scalar value" unless ref(\$self->name) eq 'SCALAR' } around _eq => sub { my $orig = shift; $orig->(@_) and ($_[0]->name eq $_[1]->name); }; sub to_pl { my $self = shift; $self->name } 1; # End of Statistics::R::REXP::Symbol __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::Symbol - an R symbol =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::Symbol; my $sym = Statistics::R::REXP::Symbol->new('some name'); print $sym->name; =head1 DESCRIPTION An object of this class represents an R symbol/name object (C). =head1 METHODS C inherits from L. =head2 ACCESSORS =over =item name String value of the symbol. =item sexptype SEXPTYPE of symbols is C. =item to_pl Perl value of the symbol is just its C. =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILDARGS BUILD =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut Vector.pm100644000765000024 755513140202262 21575 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::Vector; # ABSTRACT: an R vector $Statistics::R::REXP::Vector::VERSION = '1.0002'; use 5.010; use Scalar::Util qw(blessed); use Class::Tiny::Antlers qw(-default around); extends 'Statistics::R::REXP'; use overload '""' => sub { shift->_to_s; }; has type => ( is => 'ro', default => sub { shift->_type; }, ); has elements => ( is => 'ro', default => sub { []; }, ); sub BUILDARGS { my $class = shift; if ( scalar @_ == 1 ) { if ( ref $_[0] eq 'HASH' ) { return $_[0]; } elsif (blessed($_[0]) && $_[0]->isa('Statistics::R::REXP::Vector')) { return { elements => $_[0]->elements } } else { return { elements => $_[0] } } } elsif ( @_ % 2 ) { die "The new() method for $class expects a hash reference or a key/value list." . " You passed an odd number of arguments\n"; } else { return { @_ }; } } sub BUILD { my ($self, $args) = @_; die "This is an abstract class and must be subclassed" if ref($self) eq __PACKAGE__; # Required methods for my $req ( qw/_type/ ) { die "$req method required" unless $self->can($req); } # Required attribute type die "Attribute 'elements' must be an array reference" if defined $self->elements && ref($self->elements) ne 'ARRAY' } around _eq => sub { my $orig = shift; return undef unless $orig->(@_); my ($self, $obj) = (shift, shift); Statistics::R::REXP::_compare_deeply($self->elements, $obj->elements) }; sub _to_s { my $self = shift; my $stringify = sub { map { defined $_ ? $_ : 'undef'} @_ }; $self->_type . '(' . join(', ', &$stringify(@{$self->elements})) . ')'; } ## Turns any references (nested lists) into a plain-old flat list. ## Lists can nest to an arbitrary level, but having references to ## anything other than arrays is not supported. sub _flatten { map { ref $_ eq 'ARRAY' ? _flatten(@{$_}) : $_ } @_ } sub is_vector { return 1; } sub to_pl { my $self = shift; [ map { (blessed $_ && $_->can('to_pl')) ? $_->to_pl : $_ } @{$self->elements} ] } 1; # End of Statistics::R::REXP::Vector __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::Vector - an R vector =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::Vector; # $vec is an instance of Vector $vec->does('Statistics::R::REXP::Vector'); print $vec->elements; =head1 DESCRIPTION An object of this class represents an R vector. This class cannot be directly instantiated (it will die if you call C on it), because it is intended as a base abstract class with concrete subclasses to represent specific types of vectors, such as numeric or list. =head1 METHODS C inherits from L. =head2 ACCESSORS =over =item elements Returns an array reference to the vector's elements. =item to_pl Perl value of the language vector is an array reference to the Perl values of its C. (That is, it's equivalent to Cto_pl}, $vec->elements>.) =item type Human-friendly description of the vector type (e.g., "double" vs. "list"). For the true R type, use L. =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILDARGS BUILD is_vector =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut ABCDE-tfftf-xdr_bzip.rds100644000765000024 14113140202262 21470 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY›G|[5g€þ°@>@" P£F@ѦF‚E&M4P=F[+£KgLV¿EÃH4Æüs¸r&C†,˜jÒlGT¦h™Ÿ¢oø»’)„„Ú;âØclos_defaults-xdr_xz.rds100644000765000024 143013140202262 22131 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à òÙ],|ùŸø”Yéœ×ÜdéSc0 Œ,—ïIáäguŽl›ey6:É?¬Âïµ£3ò/î·x{‘¯pj>ëŸ>áé’z^«Ë”q_€,n¾–°V»è‡UbW°ùã«WmÝ:gkvOùí5ÒÄ_‚løIÈ\¯ŸuÖѵ*ÿ™ço¼|¯·`M‰4bæç<‡j¶k Žd·˜.¥"Á¡UÃ*bó~®§R}*\ç«NØ/Р戨uÿ+ãöÝõ¶6ÅZûÉ«Û,‹§GiˆßîVÓ¢L¤ªd F¡Æè% ØvB/%±$Gƒ¯Q¯ wVp¼÷µ4•i1­åÜòœ‡Ñ'ËÙæûŽþ°ÓâÖÿ›úÉ5¬ ðó5õ²‘‘0µÓxËöªöå–8•â¸1#ÆÆ•x<ÙÂS%Ûa’D¯È#j‡Ìk¶»ÊB×5ç¯jÙè†ú(º{äàð°ðœ*Gx``Ç–fçDÖÿ8OßÑlü\¦„jÅ,ØÂ. ô®$'rªœR™a3O•À…"×[Œ ø›Ã–<šróÃàX!—M[öGáÙQQü ,>ÉÐ3â0úUJUÚÕaçëgRh ²û-—õšèT©–Ê!.èæ7nˆ¦@²S1ªA0}Í}­Côžba¹ë*á™ga¡Ò@Çȯ~ªå^þ“¯+Ý´%̯póMw‚kU»”þô+Øæ¶Èï“£|5°»‘IüÜ‹ Oúöþ3ÁVÐ6=ð<‡/]¯ú1µc¨ØÑ>\çtN1 A™ Îh0¿×‰©Å4®XÁ#ð‚†øÕÒx“IÉ¿BVMXäH)IPL“y»ÊGܾE_B×4…eUDB¡úÕ@:aöD•à†çõ¬ÏäcFE…Q%>ÅÔ‹rº ”¤ DÊñóÃIE[>0 ‹YZdf_auto_rownames-xdr.rds100644000765000024 20013140202262 22067 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`fdb`b2™…Á|^ˆ¡|[L³0p‚Ä+`ŒJ£Š… ¬"Àš—˜›Z ÕÇS•c$¡)ç,Ê/׃iYÏÔ$þÿÿÿÝÜäœÄb˜¹0A®”Ä’D½´" ~ ïaÁä…Ødf_expl_rownames-xdr.rds100644000765000024 17513140202262 22102 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`fdb`b2™…Á|^ˆ¡|[L³0p‚Ä+`ŒJ£Š… ¬"Àš—˜›Z ÕÇS•c$¡)ç,Ê/׃iYÏÔÀÌèæ&ç$ÃÌ… r¥$–$ê¥õyÿÒìØfoobar-list-xdr_bzip.rds100644000765000024 16613140202262 22013 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYðþ…rPw€þ3H@@3˜ jjšm'©å éj§¢ h4X«¢ÕÔ[[< ÈÅno9J€‚J ,PjäCá±$9¨uè‘Yض×RÂÞ› b?rE8Pðþ…rlang-lm-mpgwt-xdr_xz.rds100644000765000024 22413140202262 21745 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à¶U],|ùŸø°0º[©ê!Ÿ¿?w'L ³=šRÑoV1öˇüX³õÏJë7êÕ™IôÌr˜À‘à’SP B ò,URO?0Ž(`sŽîxJt$¢Rm·8{dm>0 ‹YZlists_uncompressed.RData100644000765000024 53513140202262 22103 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataRDX2 X  foobar_list  a b@& foo names foo  barþ noatt_list  a b@& fooþnoatt-tfftf-xdr_bzip.rds100644000765000024 6613140202262 22005 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYÈž¶­Âz@ 1  =E„9ˆŠÒë ó+^gÅÜ‘N$2'­«@s4_subclass-xdr_bzip.rds100644000765000024 24213140202262 22012 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYÇÞÄêh÷€ÿó@ J€@:Ïß` Š '´“ÔzšhhmM h ‘TÚM0™4`L@ÐÑ $ª¤" 7_½âNtHfÕl¤ ƒ0É`¢h¥‡$˜$Á 7°ƒ ÃsAq‚ÄȦdî~&޹ɛf¯oƒOÙ:´tïM­_eh¿­mÓȘþ.äŠp¡!½‰ÔClosure.pm100644000765000024 1426213140202262 21760 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::Closure; # ABSTRACT: an R closure $Statistics::R::REXP::Closure::VERSION = '1.0002'; use 5.010; use Scalar::Util qw(refaddr blessed); use Class::Tiny::Antlers qw(-default around); use namespace::clean; extends 'Statistics::R::REXP'; use constant sexptype => 'CLOSXP'; has args => ( is => 'ro', default => sub { [] }, ); has defaults => ( is => 'ro', default => sub { [] }, ); has body => ( is => 'ro', ); has environment => ( is => 'ro', ); use overload '""' => sub { my $self = shift; 'function('. join(', ', @{$self->args}) . ') ' . $self->body }; sub BUILDARGS { my $class = shift; if ( scalar @_ == 1 ) { if ( ref $_[0] eq 'HASH' ) { return $_[0]; } elsif ( blessed $_[0] && $_[0]->isa('Statistics::R::REXP::Closure') ) { # copy constructor from another closure return { args => $_[0]->args, defaults => $_[0]->defaults, body => $_[0]->body, environment => $_[0]->environment }; } die "Single parameters to new() must be a HASH data" ." or a Statistics::R::REXP::Closure object => ". $_[0] ."\n"; } elsif ( @_ % 2 ) { die "The new() method for $class expects a hash reference or a key/value list." . " You passed an odd number of arguments\n"; } else { return {@_}; } } sub BUILD { my ($self, $args) = (shift, shift); # Required attribute die 'Attribute (body) is required' unless defined $args->{body}; # Required attribute type die "Attribute 'args' must be a reference to an array of scalars" if ref($self->args) ne 'ARRAY' || grep { ref $_ } @{$self->args}; die "Attribute 'defaults' must be a reference to an array of REXPs" if ref($self->defaults) ne 'ARRAY' || grep { defined($_) && ! (blessed($_) && $_->isa('Statistics::R::REXP')) } @{$self->defaults}; die "Attribute 'body' must be a reference to an instance of Statistics::R::REXP" unless blessed($self->body) && $self->body->isa('Statistics::R::REXP'); die "Attribute 'environment' must be an instance of Environment" if defined $self->environment && !(blessed($self->environment) && $self->environment->isa('Statistics::R::REXP::Environment')); my $defaults_length = @{$self->defaults}; if ($defaults_length) { die 'argument names don\'t match their defaults' unless $defaults_length == @{$self->args} } } around _eq => sub { my $orig = shift; return unless $orig->(@_); my ($self, $obj) = (shift, shift); Statistics::R::REXP::_compare_deeply($self->args, $obj->args) && ((scalar(grep {$_} @{$self->defaults}) == scalar(grep {$_} @{$obj->defaults})) || Statistics::R::REXP::_compare_deeply($self->defaults, $obj->defaults)) && Statistics::R::REXP::_compare_deeply($self->body, $obj->body) && Statistics::R::REXP::_compare_deeply($self->environment, $obj->environment) }; sub to_pl { die "Closures do not have a native Perl representation" } 1; # End of Statistics::R::REXP::Closure __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::Closure - an R closure =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::Closure my $clos = Statistics::R::REXP::Closure->new(body => { Statistics::R::REXP::Language->new([ Statistics::R::REXP::Symbol->new('mean'), Statistics::R::REXP::Double->new([1, 2, 3]) ]) }); print $env->elements; =head1 DESCRIPTION An object of this class represents an R closure (C). Closures in R are constructed with C and consist of a arguments(I) -- optionally with default values (I); a I; and an I, a pointer to an enclosing evaluation frame when the closure is used. These objects represent calls (such as model formulae), with first element a reference to the function being called, and the remainder the actual arguments of the call. Names of arguments, if given, are recorded in the 'names' attribute (itself as L vector), with unnamed arguments having name C<''>. If no arguments were named, the environment objects will not have a defined 'names' attribute. You shouldn't create instances of this class, it exists mainly to handle deserialization of Cs by the C classes. =head1 METHODS C inherits from L, with the added restriction that its first element has to be a L or another C instance. Trying to create a Closure instance that doesn't follow this restriction will raise an exception. =head2 ACCESSORS =over =item args An reference to the array of argument names. =item defaults Returns an array reference to default values of corresponding arguments, or Cs if the argument does not have a default. (If none of the arguments have defaults, this can be an empty array. =item body Returns the L representing the body of the function. =item environment Returns a reference to the enclosing evaluation frame, i.e., the environment within which the function is defined and looks up any free variables. This attribute is optional because some serialization mechanisms (notably Rserve's QAP), do not save the closure's environment. =item sexptype SEXPTYPE of closures is C. =item to_pl Closures do not have a native Perl representation and trying to call this access will raise an exception. =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILDARGS BUILD =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut Complex.pm100644000765000024 616513140202262 21736 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::Complex; # ABSTRACT: an R numeric vector $Statistics::R::REXP::Complex::VERSION = '1.0002'; use 5.010; use Scalar::Util qw(blessed looks_like_number); use Math::Complex qw(); use Class::Tiny::Antlers qw(-default around); use namespace::clean; extends 'Statistics::R::REXP::Vector'; use overload; use constant sexptype => 'CPLXSXP'; sub BUILDARGS { my $class = shift; my $attributes = $class->SUPER::BUILDARGS(@_); if (ref($attributes->{elements}) eq 'ARRAY') { $attributes->{elements} = [ map { (blessed($_) && $_->isa('Math::Complex')) ? $_ : looks_like_number $_ ? Math::Complex::cplx($_) : undef } Statistics::R::REXP::Vector::_flatten(@{$attributes->{elements}}) ] } $attributes } sub BUILD { my ($self, $args) = @_; # Required attribute type die "Elements of the 'elements' attribute must be scalar numbers or instances of Math::Complex" if defined $self->elements && grep { defined($_) && !(blessed($_) && $_->isa('Math::Complex') || Scalar::Util::looks_like_number($_)) } @{$self->elements} } around _eq => sub { my $orig = shift; return unless Statistics::R::REXP::_eq(@_); my ($self, $obj) = (shift, shift); my $a = $self->elements; my $b = $obj->elements; return undef unless scalar(@$a) == scalar(@$b); for (my $i = 0; $i < scalar(@{$a}); $i++) { my $x = $a->[$i]; my $y = $b->[$i]; if (defined($x) && defined($y)) { return undef unless $x == $y; } else { return undef if defined($x) or defined($y); } } 1 }; sub _type { 'complex'; } 1; # End of Statistics::R::REXP::Complex __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::Complex - an R numeric vector =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::Complex; use Math::Complex (); my $vec = Statistics::R::REXP::Complex->new([ 1, cplx(4, 2), 'foo', 42 ]); print $vec->elements; =head1 DESCRIPTION An object of this class represents an R complex vector (C). =head1 METHODS C inherits from L, with the added restriction that its elements are complex numbers. Elements that are not numbers have value C, as do elements with R value C. =over =item sexptype SEXPTYPE of complex vectors is C. =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILDARGS BUILD =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut Integer.pm100644000765000024 445513140202262 21724 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::Integer; # ABSTRACT: an R integer vector $Statistics::R::REXP::Integer::VERSION = '1.0002'; use 5.010; use Scalar::Util qw(looks_like_number); use Class::Tiny::Antlers; use namespace::clean; extends 'Statistics::R::REXP::Vector'; use overload; use constant sexptype => 'INTSXP'; sub _type { 'integer'; } sub BUILDARGS { my $class = shift; my $attributes = $class->SUPER::BUILDARGS(@_); if (ref($attributes->{elements}) eq 'ARRAY') { $attributes->{elements} = [ map { looks_like_number($_) ? int($_ + ($_ <=> 0) * 0.5) : undef } Statistics::R::REXP::Vector::_flatten(@{$attributes->{elements}}) ] } $attributes } sub BUILD { my ($self, $args) = @_; # Required attribute type die "Elements of the 'elements' attribute must be integers" if defined $self->elements && grep { defined($_) && !(looks_like_number($_) && int($_) == $_) } @{$self->elements} } 1; # End of Statistics::R::REXP::Integer __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::Integer - an R integer vector =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::Integer my $vec = Statistics::R::REXP::Integer->new([ 1, 4, 'foo', 42 ]); print $vec->elements; =head1 DESCRIPTION An object of this class represents an R integer vector (C). =head1 METHODS C inherits from L, with the added restriction that its elements are truncated to integer values. Elements that are not numbers have value C, as do elements with R value C. =over =item sexptype SEXPTYPE of integer vectors is C. =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILDARGS BUILD =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut Logical.pm100644000765000024 442213140202262 21673 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::Logical; # ABSTRACT: an R logical vector $Statistics::R::REXP::Logical::VERSION = '1.0002'; use 5.010; use Class::Tiny::Antlers; use namespace::clean; extends 'Statistics::R::REXP::Vector'; use overload; use constant sexptype => 'LGLSXP'; sub _type { 'logical'; } sub BUILDARGS { my $class = shift; my $attributes = $class->SUPER::BUILDARGS(@_); if (ref($attributes->{elements}) eq 'ARRAY') { $attributes->{elements} = [ map { defined $_ ? ($_ ? 1 : 0) : undef } Statistics::R::REXP::Vector::_flatten(@{$attributes->{elements}}) ] } $attributes } sub BUILD { my ($self, $args) = @_; # Required attribute type die "Elements of the 'elements' attribute must be 0, 1, or undef" if defined $self->elements && grep { defined($_) && ($_ != 1 && $_ != 0) } @{$self->elements} } 1; # End of Statistics::R::REXP::Logical __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::Logical - an R logical vector =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::Logical my $vec = Statistics::R::REXP::Logical->new([ 1, '', 'foo', undef ]); print $vec->elements; =head1 DESCRIPTION An object of this class represents an R logical vector (C). =head1 METHODS C inherits from L, with the added restriction that its elements are boolean (true/false) values. Elements have value 1 or 0, corresponding to C and C, respectively, while missing values (C in R) have value C. =over =item sexptype SEXPTYPE of logical vectors is C. =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILDARGS BUILD =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut Unknown.pm100644000765000024 544613140202262 21767 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::Unknown; # ABSTRACT: R object not representable in Rserve $Statistics::R::REXP::Unknown::VERSION = '1.0002'; use 5.010; use Scalar::Util qw(looks_like_number blessed); use Class::Tiny::Antlers qw(-default around); use namespace::clean; extends 'Statistics::R::REXP'; has sexptype => ( is => 'ro', ); use overload '""' => sub { 'Unknown' }; sub BUILDARGS { my $class = shift; my $attributes = {}; if ( scalar @_ == 1) { if ( ref $_[0] eq 'HASH' ) { $attributes = $_[0] } else { $attributes->{sexptype} = $_[0] } } elsif ( @_ % 2 ) { die "The new() method for $class expects a hash reference or a key/value list." . " You passed an odd number of arguments\n"; } else { $attributes = { @_ }; } if (blessed($attributes->{sexptype}) && $attributes->{sexptype}->isa('Statistics::R::REXP::Unknown')) { $attributes->{sexptype} = $attributes->{sexptype}->sexptype } $attributes } sub BUILD { my ($self, $args) = @_; die "Attribute 'sexptype' must be a number in range 0-255" unless looks_like_number($self->sexptype) && ($self->sexptype >= 0) && ($self->sexptype <= 255) } around _eq => sub { my $orig = shift; $orig->(@_) and ($_[0]->sexptype eq $_[1]->sexptype); }; sub to_pl { undef } 1; # End of Statistics::R::REXP::Unknown __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::Unknown - R object not representable in Rserve =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::Unknown; my $unknown = Statistics::R::REXP::Unknown->new(4); say $unknown->sexptype; say $unknown->to_pl; =head1 DESCRIPTION An object of this class represents an R object that's currently not representable by the Rserve protocol. =head1 METHODS C inherits from L and adds no methods of its own. =head2 ACCESSORS =over =item sexptype The R L of the object. =item to_pl The Perl value of the unknown type is C. =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILDARGS BUILD =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut frames_uncompressed.RData100644000765000024 346213140202262 22244 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataRDX2 X  my_cars@@@@@ @"@@$@@6@0@$ names speed dist row.names € class data.frameþ my_iris@ffffff@™™™™™š@ÌÌÌÌÌÍ@ffffff@@™™™™™š@ @@ ™™™™™š@ÌÌÌÌÌÍ@ ÌÌÌÌÌÍ@333333?öffffff?öffffff?ôÌÌÌÌÌÍ?ø?öffffff?û333333?É™™™™™š?É™™™™™š?É™™™™™š?É™™™™™š?É™™™™™š?Ù™™™™™š  levels setosa versicolor virginicaÿ factorþÿ Sepal.Length Sepal.Width Petal.Length Petal.Width Speciesÿ €ÿ data.frameþ my_mtcars @5@5@6ÌÌÌÌÌÍ@5ffffff@2³33333@2™™™™š@@@@@ @@d@d@[@p @v€@l @[€@[€@W@@[€@eà@Z@@333333@333333@ÌÌÌÌÌÍ@£× =p¤@ 333333@záG®@õÂ\(ö@@\(õÂ@ ¸Që…¸@ …¸Që…@ ®záG®@0uÂ\(ö@1¸Që…@2œ(õÂ\@3p£× =q@1¸Që…@48Që…¸?ð?ð?ð?ð?ð?ð@@@@@@@@?ð?ð@?ðÿ  mpg cyl disp hp drat wt qsec vs am gear carbÿ Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive Hornet Sportabout Valiantÿ data.frameþþnoatt-123456-xdr_bzip.rds100644000765000024 10613140202262 21453 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY•ÚT N²x@@@€ !¦‰ê4Ó! ¤ì  XÜz›šõçÅÜ‘N$%vƒ•pairlist_untagged-xdr.rds100644000765000024 6213140202262 22226 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data‹‹àb```b`fdb`bf³x˜Š‘ùLh|†ôw6BLanguage.pm100644000765000024 552113140202262 22045 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::Language; # ABSTRACT: an R language vector $Statistics::R::REXP::Language::VERSION = '1.0002'; use 5.010; use Scalar::Util qw(blessed); use Class::Tiny::Antlers; use namespace::clean; extends 'Statistics::R::REXP::List'; use constant sexptype => 'LANGSXP'; sub BUILD { my ($self, $args) = @_; # Required attribute type die 'The first element must be a Symbol or Language' if defined $self->elements && !(blessed $self->elements->[0] && ($self->elements->[0]->isa('Statistics::R::REXP::Language') || $self->elements->[0]->isa('Statistics::R::REXP::Symbol'))) } sub to_pl { Statistics::R::REXP::Vector::to_pl(@_) } sub _type { 'language' }; 1; # End of Statistics::R::REXP::Language __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::Language - an R language vector =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::Language # Representation of the R call C: my $vec = Statistics::R::REXP::Language->new([ Statistics::R::REXP::Symbol->new('mean'), Statistics::R::REXP::Double->new([1, 2, 3]) ]); print $vec->elements; =head1 DESCRIPTION An object of this class represents an R language vector (C). These objects represent calls (such as model formulae), with first element a reference to the function being called, and the remainder the actual arguments of the call. Names of arguments, if given, are recorded in the 'names' attribute (itself as L vector), with unnamed arguments having name C<''>. If no arguments were named, the language objects will not have a defined 'names' attribute. =head1 METHODS C inherits from L, with the added restriction that its first element has to be a L or another C instance. Trying to create a Language instance that doesn't follow this restriction will raise an exception. =over =item sexptype SEXPTYPE of language vectors is C. =item to_pl Perl value of the language vector is an array reference to the Perl values of its C. (That is, it's equivalent to Cto_pl}, $vec->elements>. =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILD =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut clos_defaults-xdr_bzip.rds100644000765000024 146413140202262 22443 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY¦¥xRºšÿÿÿßæþˆ'þà¿ßê Àó›XÐÃj&”iž¤=Cj3I£CG©¦šPhhCF†M¡Ðž¦“M#SÁLІšõ Áƒ# ÀFÉ Ðh CM2¡£L€ &©&£#)™ÄO$h4= i ƒ@d€t¥¸ç¯mL!~A/ŠBTŠð<æšFœtÑfsTÖ4.D)RBÄ~Ó-’_¸æ]yË-™ÔWMu{éÉ¥u I¡‹ž CPÐ7™+Pb¨&0,ÀÏ ¹¾_λ§¡¯¯¥p¸[™(PƒOO.•È—mj‚_ìÐ.º“<(µ j o1wj uoodÙàjrò>(Ù´ƒD‡"ÝyaOçx¦ÜZP#1j®ùSÀƒ ïKZ2Œ˜a³)Â…Z92)?¡†NSéPÈ,ÀrÔ±„üÇ€ÙÃO‹“r…ë4ÄËY(m@°Hbd”J™P%e*³÷®HrA7ë7~Ô5víÕ,½V©U´@–È„‚Å„ Çk¡£§˜·¼-:{tìdÖ}ÿ\· ëF…þËÄ ˆ…ª‡È°ÇAj/,0L$€l@XH6B(HHÁ‚‘­Æ’cH²(*%„°Â ¤”I)yТBq¾ÂÈ* $ ° ,8°âÒÊ ÉMC*»Æ_ 6«NLDbÔ‡a†ˆ‰5í~³Žòž¹‹=å:Òª‘™ 5†ì•”,ÑÑåhŒF 2Ë ë3ƒ²dä%xsK¼ãeTŒfÄ+BUÙ,ŠÅâÁŒ!1—Îny}÷×X|JÀ¨ÅL5H¬: U ˆønŠ2©Ò+Ꭰ>¢6›È@e„¶;N[’ƒ]YÅVPFÆùù ¢°¤"+Ù%&ÓÆ fWD9"±²y?íø¬ší²X»|K+»zêt¶O†8fæåçò¨ÊTR_Æ“¸6ݲ¤’O*Ô¡>þG¯þ`ù<ÉæÞæÅ$€°þnà&eàÊø»’)„…5+Âlang-lm-mpgwt-xdr_bzip.rds100644000765000024 16113140202262 22250 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYVcÅKÀý°@/ÆÞ tjžhiõ=CÔ ™È œˆ¦Ë2ö˜EµÀ뿤ù‚H›0    $ "o‹ÍšË\߯6ÒÝÇ­—×HMÝ?rE8PVcÅmtcars-lm-mpgwt-xdr_xz.rds100644000765000024 200413140202262 22333 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à Ç],|ùŸøwPÀoü7RÄÊ‹° —mÀ¾ò`!?rMb¿8Ÿsì½@s½¹\g5V_ki)ELG·ñßžA¤]ðG¤²ôÝ]‚Ôú—Új`ç ´)®è(·b†TïfœxÀ ¹ .+)É=61çõÊè[ƒ±§Ãtw’eÉa(ÜøÎO Á0ôgŠíÚÎòèþ*ý|(ûÞñ”ª@ßR ]·êÊ&Æ[½K´¡S›u×M@¢pb)ƒÚ&KÉ>ù‡âIÝž¹€¢Ðh@þ’]ÁsïÔ^”M?€7@Ô¿Âd:˜Ÿ9+¿L›¿Bêñeó„šüÎ*Z›róÇ»”=+ # ý7áÔ%hYÃøªbÓ"µLåÚSì¸Æma“~×6-·»"”Ü`J²–Q‘ \РXý?_œ[q©êj=Õ·³Dh]Öâ>e˜ -…´Òìî3`Réä ¤–ÍŸlDWtm9¶à€ŒêÌò> â­ÁŽÁ£Ñ¥ÑÂr#³ŽÛ‰%Z,5òˆ¨½µõvKP4Pܸ-G™½oÃBV4@ÖQ¸…ÜûÚ{NXù?µÊó)°r¯w©`&„ Î…0/ÚÒ»î½ÍÌog<Û“W¿Ù)ß–‡ê>0 ‹YZpairlist_tagged-xdr_xz.rds100644000765000024 15413140202262 22426 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à]2],|ùŸø”D’þ³éú’ÅÀ`ê5k’Ö”éã Ö‰¿¿p<¡ªüã.CîÑaÆ‘¢E‹êJ^WnæB™ YZParserState.pm100644000765000024 775113140202262 22317 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/IOpackage Statistics::R::IO::ParserState; # ABSTRACT: Current state of the IO parser $Statistics::R::IO::ParserState::VERSION = '1.0002'; use 5.010; use Class::Tiny::Antlers; use namespace::clean; has data => ( is => 'ro', default => sub { [] }, ); has position => ( is => 'ro', default => sub { 0 }, ); has singletons => ( is => 'ro', default => sub { [] }, ); sub BUILDARGS { my $class = shift; my $attributes = {}; if ( scalar @_ == 1) { if ( ref $_[0] eq 'HASH' ) { $attributes = $_[0] } else { $attributes->{name} = $_[0] } } elsif ( @_ % 2 ) { die "The new() method for $class expects a hash reference or a key/value list." . " You passed an odd number of arguments\n"; } else { $attributes = { @_ }; } # split strings into a list of individual characters if (defined $attributes->{data} && !ref($attributes->{data})) { $attributes->{data} = [split //, $attributes->{data}]; } $attributes } sub BUILD { my $self = shift; die 'foo' unless ref($self->data) eq 'ARRAY' } sub at { my $self = shift; $self->data->[$self->position] } sub next { my $self = shift; ref($self)->new(data => $self->data, position => $self->position+1, singletons => [ @{$self->singletons} ]) } sub add_singleton { my ($self, $singleton) = (shift, shift); my @new_singletons = @{$self->singletons}; push @new_singletons, $singleton; ref($self)->new(data => $self->data, position => $self->position, singletons => [ @new_singletons ]) } sub get_singleton { my ($self, $singleton_id) = (shift, shift); $self->singletons->[$singleton_id] } sub eof { my $self = shift; $self->position >= scalar @{$self->data}; } 1; __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::IO::ParserState - Current state of the IO parser =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::IO::ParserState; my $state = Statistics::R::IO::ParserState->new( data => 'file.rds' ); say $state->at say $state->next->at; =head1 DESCRIPTION You shouldn't create instances of this class, it exists mainly to handle deserialization of R data files by the C classes. =head1 METHODS =head2 ACCESSORS =over =item data An array reference to the data being parsed. The constructs accepts a scalar, which will be L into individual characters. =item position Position of the next data element to be processed. =item at Returns the element (byte) at the current C. =item eof Returns true if the cursor (C) is at the end of the C. =item singletons An array reference in which unserialized data that should be exists as singletons can be "stashed" by the parser for later reference. =item get_singleton $id Return the singleton data object with the given C<$id>. =back =head2 MUTATORS C is intended to be immutable, so the "mutator" methods actually return a new instance with appropriately modified values of the attributes. =over =item next Returns a new ParserState instance with C advanced by one. =item add_singleton $singleton Returns a new ParserState instance with C<$singleton> argument appended to the instance's C. =back =head1 BUGS AND LIMITATIONS Instances of this class are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILDARGS BUILD =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut QapEncoding.pm100644000765000024 6312613140202262 22270 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/IOpackage Statistics::R::IO::QapEncoding; # ABSTRACT: Functions for parsing Rserve packets $Statistics::R::IO::QapEncoding::VERSION = '1.0002'; use 5.010; use strict; use warnings FATAL => 'all'; use Exporter 'import'; our @EXPORT = qw( ); our @EXPORT_OK = qw( decode ); our %EXPORT_TAGS = ( all => [ @EXPORT_OK ], ); use Statistics::R::IO::Parser qw( :all ); use Statistics::R::IO::ParserState; use Statistics::R::REXP::Character; use Statistics::R::REXP::Complex; use Statistics::R::REXP::Double; use Statistics::R::REXP::Integer; use Statistics::R::REXP::List; use Statistics::R::REXP::Logical; use Statistics::R::REXP::Raw; use Statistics::R::REXP::Language; use Statistics::R::REXP::Symbol; use Statistics::R::REXP::Null; use Statistics::R::REXP::GlobalEnvironment; use Statistics::R::REXP::Unknown; use Statistics::R::REXP::S4; use Carp; use constant { DT_INT => 1, # int DT_CHAR => 2, # char DT_DOUBLE => 3, # double DT_STRING => 4, # zero- terminated string DT_BYTESTREAM => 5, # stream of bytes (unlike DT_STRING may # contain 0) DT_SEXP => 10, # encoded SEXP DT_ARRAY => 11, # array of objects (i.e. first 4 bytes specify how # many subsequent objects are part of the array; 0 # is legitimate) DT_CUSTOM => 32, # custom types not defined in the protocol but # used by applications DT_LARGE => 64, # new in 0102: if this flag is set then the length # of the object is coded as 56-bit integer # enlarging the header by 4 bytes }; # eXpression Types: transport format of the encoded SEXPs: # [0] int type/len (1 byte type, 3 bytes len - same as SET_PAR) # [4] REXP attr (if bit 8 in type is set) # [4/8] data .. */ # Expression type classification: # P = primary type # s = secondary type - its decoding is identical to # a primary type and thus the client doesn't need to # decode it separately. # - = deprecated/removed. if a client doesn't need to # support old Rserve versions, those can be safely skipped. # XT_* types: use constant { XT_NULL => 0, # P data: [0] XT_INT => 1, # - data: [4]int XT_DOUBLE => 2, # - data: [8]double XT_STR => 3, # P data: [n]char null-term. strg. XT_LANG => 4, # - data: same as XT_LIST XT_SYM => 5, # - data: [n]char symbol name XT_BOOL => 6, # - data: [1]byte boolean (1=TRUE, 0=FALSE, 2=NA) XT_S4 => 7, # P data: [0] XT_VECTOR => 16, # P data: [?]REXP,REXP,... XT_LIST => 17, # - X head, X vals, X tag (since 0.1-5) XT_CLOS => 18, # P X formals, X body (closure; since 0.1-5) XT_SYMNAME => 19, # s same as XT_STR (since 0.5) XT_LIST_NOTAG => 20, # s same as XT_VECTOR (since 0.5) XT_LIST_TAG => 21, # P X tag, X val, Y tag, Y val, ... (since 0.5) XT_LANG_NOTAG => 22, # s same as XT_LIST_NOTAG (since 0.5) XT_LANG_TAG => 23, # s same as XT_LIST_TAG (since 0.5) XT_VECTOR_EXP => 26, # s same as XT_VECTOR (since 0.5) XT_VECTOR_STR => 27, # - same as XT_VECTOR (since 0.5 but unused, use XT_ARRAY_STR instead) XT_ARRAY_INT => 32, # P data: [n*4]int,int,... XT_ARRAY_DOUBLE => 33, # P data: [n*8]double,double,... XT_ARRAY_STR => 34, # P data: string,string,... # (string=byte,byte,...,0) padded with '\01' XT_ARRAY_BOOL_UA => 35, # - data: [n]byte,byte,... (unaligned! NOT supported anymore) XT_ARRAY_BOOL => 36, # P data: int(n),byte,byte,... XT_RAW => 37, # P data: int(n),byte,byte,... XT_ARRAY_CPLX => 38, # P data: [n*16]double,double,... (Re,Im,Re,Im,...) XT_UNKNOWN => 48, # P data: [4]int - SEXP type (as from TYPEOF(x)) XT_LARGE => 64, # new in 0102: if this flag is set then the length # of the object is coded as 56-bit integer # enlarging the header by 4 bytes XT_HAS_ATTR => 128, # flag; if set, the following REXP is the # attribute }; sub unpack_sexp_info { bind(\&any_uint32, sub { my $object_info = shift // return; my $is_long = $object_info & XT_LARGE; if ($is_long) { ## TODO: if `is_long`, then the next 4 bytes contain ## the upper half of the length error "Sorry, long packets aren't supported yet" } else { mreturn { has_attributes => $object_info & XT_HAS_ATTR, is_long => $is_long, object_type => $object_info & 0x3F, length => $object_info >> 8, } } }) } sub sexp_data { my $object_info = shift; bind(maybe_attributes($object_info), sub { my ($object_info, $attributes) = @{shift()}; if ($object_info->{object_type} == XT_NULL) { # encoded Nil mreturn(Statistics::R::REXP::Null->new) } elsif ($object_info->{object_type} == XT_ARRAY_INT) { # integer vector intsxp($object_info, $attributes) } elsif ($object_info->{object_type} == XT_ARRAY_BOOL) { # logical vector lglsxp($object_info, $attributes) } elsif ($object_info->{object_type} == XT_ARRAY_DOUBLE) { # numeric vector dblsxp($object_info, $attributes) } elsif ($object_info->{object_type} == XT_ARRAY_CPLX) { # complex vector cplxsxp($object_info, $attributes) } elsif ($object_info->{object_type} == XT_ARRAY_STR) { # character vector strsxp($object_info, $attributes) } elsif ($object_info->{object_type} == XT_RAW) { # raw vector rawsxp($object_info) } elsif ($object_info->{object_type} == XT_VECTOR) { # list (generic vector) vecsxp($object_info, $attributes) } elsif ($object_info->{object_type} == XT_VECTOR_EXP) { # expression vector expsxp($object_info, $attributes) } elsif ($object_info->{object_type} == XT_LIST_NOTAG) { # pairlist with no tags $object_info->{has_tags} = 0; listsxp($object_info) } elsif ($object_info->{object_type} == XT_LIST_TAG) { # pairlist with tags $object_info->{has_tags} = 1; listsxp($object_info) } elsif ($object_info->{object_type} == XT_LANG_NOTAG) { # language without tags $object_info->{has_tags} = 0; langsxp($object_info, $attributes) } elsif ($object_info->{object_type} == XT_LANG_TAG) { # language with tags $object_info->{has_tags} = 1; langsxp($object_info, $attributes) } elsif ($object_info->{object_type} == XT_SYMNAME) { # symbol symsxp($object_info) } elsif ($object_info->{object_type} == XT_CLOS) { # closure closxp($object_info, $attributes) } elsif ($object_info->{object_type} == XT_UNKNOWN) { # unknown nosxp($object_info, $attributes) } elsif ($object_info->{object_type} == XT_S4) { # unknown s4sxp($object_info, $attributes) } else { error "unimplemented XT_TYPE: " . $object_info->{object_type} } }) } sub maybe_attributes { my $object_info = shift; sub { my $state = shift or return; my $attributes; if ($object_info->{has_attributes}) { my $attributes_start = $state->position; my $result = dt_sexp_data()->($state) or return; $attributes = { tagged_pairlist_to_attribute_hash(shift @$result) }; $state = shift @$result; ## adjust SEXP length for that already consumed by attributes $object_info->{length} -= $state->position - $attributes_start; } [ [$object_info, $attributes], $state] } } sub tagged_pairlist_to_rexp_hash { my $list = shift or return; croak "Tagged element has an attribute?!" if exists $list->{attributes} && grep {$_ ne 'names'} keys %{$list->{attributes}}; my @elements = @{$list->elements}; my @names = @{$list->attributes->{names}->elements}; die 'length of tags does not match the elements' unless scalar(@elements) == scalar(@names); my %rexps; while (my $name = shift(@names)) { my $value = shift(@elements); $rexps{$name} = $value; } %rexps } sub tagged_pairlist_to_attribute_hash { my %rexp_hash = tagged_pairlist_to_rexp_hash @_; my $row_names = $rexp_hash{'row.names'}; if ($row_names && $row_names->type eq 'integer' && ! defined $row_names->elements->[0]) { ## compact encoding when rownames are integers 1..n: the ## length n is in the second element, but can be negative to ## denote "automatic" rownames my $n = abs($row_names->elements->[1]); $rexp_hash{'row.names'} = Statistics::R::REXP::Integer->new([1..$n]); } %rexp_hash } sub s4sxp { my ($object_info, $attributes) = (shift, shift); my $class = $attributes->{class}->elements; croak "S4 'class' must be a single-element array" unless ref($class) eq 'ARRAY' && scalar(@{$class}) == 1; my $package = $attributes->{class}->attributes->{package}->elements; croak "S4 'package' must be a single-element array" unless ref($package) eq 'ARRAY' && scalar(@{$package}) == 1; # the remaining attributes should be object's slots delete $attributes->{class}; my $slots = $attributes; mreturn(Statistics::R::REXP::S4->new(class => $class->[0], package => $package->[0], slots => $slots)) } sub symsxp { my $object_info = shift; bind(count($object_info->{length}, \&any_char), sub { my @chars = @{shift or return}; pop @chars while @chars && !ord($chars[-1]); mreturn(Statistics::R::REXP::Symbol->new(join('', @chars))) }) } sub nosxp { my ($object_info, $attributes) = (shift, shift); bind(\&any_uint32, sub { my $sexp_id = shift or return; my %args = (sexptype => $sexp_id); if ($attributes) { $args{attributes} = $attributes } mreturn(Statistics::R::REXP::Unknown->new(%args)) }) } sub intsxp { my ($object_info, $attributes) = (shift, shift); if ($object_info->{length} % 4 == 0) { bind(count($object_info->{length}/4, any_int32_na), sub { my @ints = @{shift or return}; my %args = (elements => [@ints]); if ($attributes) { $args{attributes} = $attributes } mreturn(Statistics::R::REXP::Integer->new(%args)); }) } else { error "TODO: intsxp length doesn't align by 4: " . $object_info->{length} } } sub dblsxp { my ($object_info, $attributes) = (shift, shift); if ($object_info->{length} % 8 == 0) { bind(count($object_info->{length}/8, any_real64_na), sub { my @dbls = @{shift or return}; my %args = (elements => [@dbls]); if ($attributes) { $args{attributes} = $attributes } mreturn(Statistics::R::REXP::Double->new(%args)); }) } else { error "TODO: dblsxp length doesn't align by 8: " . $object_info->{length} } } sub cplxsxp { my ($object_info, $attributes) = (shift, shift); if ($object_info->{length} % 16 == 0) { bind(count($object_info->{length}/8, any_real64_na), sub { my @dbls = @{shift or return}; my @cplx; while (my ($re, $im) = splice(@dbls, 0, 2)) { if (defined($re) && defined($im)) { push(@cplx, Math::Complex::cplx($re, $im)) } else { push(@cplx, undef) } } my %args = (elements => [@cplx]); if ($attributes) { $args{attributes} = $attributes } mreturn(Statistics::R::REXP::Complex->new(%args)); }) } else { error "TODO: cplxsxp length doesn't align by 16: " . $object_info->{length} } } sub lglsxp { my ($object_info, $attributes) = (shift, shift); my $dt_length = $object_info->{length},; if ($dt_length) { bind(\&any_uint32, sub { my $true_length = shift // return; my $padding_length = $dt_length - $true_length - 4; bind(seq(count($true_length, \&any_uint8), count($padding_length, \&any_uint8)), sub { my ($elements, $padding) = @{shift or return}; my %args = (elements => [ map { $_ == 2 ? undef : $_ } @{$elements} ]); if ($attributes) { $args{attributes} = $attributes } mreturn(Statistics::R::REXP::Logical->new(%args)); }) }) } else { mreturn(Statistics::R::REXP::Logical->new); } } sub rawsxp { my $object_info = shift; my $dt_length = $object_info->{length},; if ($dt_length) { bind(\&any_uint32, sub { my $true_length = shift // return; my $padding_length = $dt_length - $true_length - 4; bind(seq(count($true_length, \&any_uint8), count($padding_length, \&any_uint8)), sub { my ($elements, $padding) = @{shift or return}; mreturn(Statistics::R::REXP::Raw->new($elements)); }) }) } else { mreturn(Statistics::R::REXP::Raw->new); } } sub strsxp { my ($object_info, $attributes) = (shift, shift); my $length = $object_info->{length}; if ($length) { sub { my $state = shift; my $end_at = $state->position + $length; my @elements; # elements of the vector my @characters; # characters in the current element while ($state->position < $end_at) { my $ch = $state->at; if (ord($ch)) { push @characters, $ch; } else { my $element = join('', @characters); if ($element eq "\xFF") { ## NaStringRepresentation push @elements, undef; } else { ## unescape real \xFF characters $element =~ s/\xFF\xFF/\xFF/g; push @elements, $element; } @characters = (); } $state = $state->next; } my %args = (elements => [@elements]); if ($attributes) { $args{attributes} = $attributes } [ Statistics::R::REXP::Character->new(%args), $state ]; } } else { mreturn(Statistics::R::REXP::Character->new); } } sub vecsxp { my ($object_info, $attributes) = (shift, shift); my $length = $object_info->{length}; sub { my $state = shift; my $end_at = $state->position + $length; my @elements; while ($state->position < $end_at) { my $result = dt_sexp_data()->($state) or return; push @elements, shift @$result; $state = shift @$result; } my %args = (elements => [@elements]); if ($attributes) { $args{attributes} = $attributes } [ Statistics::R::REXP::List->new(%args), $state ]; } } sub expsxp { bind(vecsxp(@_), sub { my $list = shift; my %args = (elements => $list->elements); my $attributes = $list->attributes; if ($attributes) { $args{attributes} = $attributes } mreturn(Statistics::R::REXP::Expression->new(%args)) }) } sub tagged_pairlist { my $object_info = shift; my $length = $object_info->{length}; if ($length) { sub { my $state = shift; my $end_at = $state->position + $length; my @elements; while ($state->position < $end_at) { my $result = dt_sexp_data()->($state) or return; my $value = shift @$result; $state = shift @$result; my $element = { value => $value }; if ($object_info->{has_tags}) { $result = dt_sexp_data()->($state) or return; my $tag = shift @$result; $element->{tag} = $tag unless $tag->is_null; $state = shift @$result; } push @elements, $element; } [ [ @elements ], $state ]; } } else { mreturn [] } } ## At the REXP level, pairlists are treated the same as generic ## vectors, i.e., as instances of type List. Tags, if present, become ## the name attribute. sub listsxp { my $object_info = shift; ## The `tagged_pairlist` returns an array of cons cells, and we ## must separate the tags from the elements before invoking the ## List constructor, with the tags becoming the names attribute bind(tagged_pairlist($object_info), sub { my $list = shift or return; my @elements; my @names; foreach my $element (@$list) { my $tag = $element->{tag}; my $value = $element->{value}; push @elements, $value; push @names, $tag ? $tag->name : ''; } my %args = (elements => [ @elements ]); ## if no element is tagged, then don't construct the ## 'names' attribute if (grep {exists $_->{tag}} @$list) { $args{attributes} = { names => Statistics::R::REXP::Character->new([ @names ]) }; } mreturn(Statistics::R::REXP::List->new(%args)) }) } ## Language expressions are pairlists, but with a certain structure: ## - the first element is the reference (name or another language ## expression) to the function call ## - the rest of the list are the arguments of the call, with optional ## tags to name them sub langsxp { my ($object_info, $attributes) = (shift, shift); ## After the pairlist has been parsed by `tagged_pairlist`, we ## separate the tags from the elements before invoking the Language ## constructor, with the tags becoming the names attribute bind(tagged_pairlist($object_info), sub { my $list = shift or return; my @elements; my @names; foreach my $element (@$list) { my $tag = $element->{tag}; my $value = $element->{value}; push @elements, $value; push @names, $tag ? $tag->name : ''; } my %args = (elements => [ @elements ]); ## if no element is tagged, then don't construct the ## 'names' attribute if (grep {exists $_->{tag}} @$list) { $attributes //= {}; # initialize the hash $attributes->{names} = Statistics::R::REXP::Character->new([ @names ]); } $args{attributes} = $attributes if $attributes; mreturn(Statistics::R::REXP::Language->new(%args)) }) } sub closxp { my ($object_info, $attributes) = (shift, shift); my $length = $object_info->{length}; bind(count(2, dt_sexp_data()), sub { my ($args, $body) = @{(shift or return)}; my (@arg_names, @arg_values); if (ref $args eq ref []) { foreach my $arg (@{$args}) { push @arg_names, $arg->{tag}->name; if (Statistics::R::REXP::Symbol->new('') eq $arg->{value}) { push @arg_values, undef } else { push @arg_values, $arg->{value} } } } my %args = (body => $body, args => [@arg_names], defaults => [@arg_values]); $args{attributes} = $attributes if $attributes; mreturn(Statistics::R::REXP::Closure->new(%args)) }) } sub dt_sexp_data { bind(unpack_sexp_info, \&sexp_data) } sub decode_sexp { bind(seq(uint8(DT_SEXP), \&any_uint24, dt_sexp_data), sub { mreturn shift->[2] }) } sub decode_int { die 'TODO: implement' } sub decode { my $data = shift; return error "Decode requires a scalar data or array reference" if ref $data && ref $data ne ref []; endianness('<'); my $result = decode_sexp->(Statistics::R::IO::ParserState->new(data => $data)); if ($result) { my $state = $result->[1]; carp("remaining data: " . (scalar(@{$state->data}) - $state->position)) unless $state->eof; } $result; } 1; __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::IO::QapEncoding - Functions for parsing Rserve packets =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::IO::QapEncoding qw( decode ); # Assume $data comes from an Rserve response body my ($rexp, $state) = @{ decode($data) } or die "couldn't parse"; # If we're reading a QAP response, there should be no data left # unparsed die 'Unread data remaining' unless $state->eof; # the result of the unserialization is a REXP say $rexp; # REXPs can be converted to the closest native Perl data type print $rexp->to_pl; =head1 DESCRIPTION This module implements the actual reading of serialized R objects encoded with Rserve's QAP protocol and their conversion to a L. You are not expected to use it directly, as it's normally wrapped by L and L. =head1 SUBROUTINES =over =item decode $data Constructs a L object from its serialization in C<$data>. Returns a pair of the object and the L at the end of serialization. =item decode_sexp, decode_int Parsers for Rserve's C and C data types, respectively. =item dt_sexp_data Parses the body of an RServe C object by parsing its header (C type and length) and content (done by sequencing L and L. =item unpack_sexp_info Parser for the header (consisting of the C type, flags, and object length) of a serialized SEXP. Returns a hash with keys "object_type", "has_attributes", and "length", each corresponding to the field in R serialization described in L. =item sexp_data $obj_info Parser for a QAP-serialized R object, using the object type stored in C<$obj_info> hash's "object_type" key to use the correct parser for the particular type. =item intsxp, langsxp, lglsxp, listsxp, rawsxp, dblsxp, cplxsxp, strsxp, symsxp, vecsxp, expsxp, closxp, s4sxp Parsers for the corresponding R SEXP-types. =item nosxp Parser for the Rserve's C type, encoding an R SEXP-type that does not have a corresponding representation in QAP. =item maybe_attributes $object_info Convenience parser for SEXP attributes, which are serialized as a tagged pairlist C followed by a SEXP for the object value. Attributes are stored only if C<$object_info> indicates their presence. Returns a pair of C<$object_info> and a hash reference to the attributes, as returned by L. =item tagged_pairlist Parses a pairlist (optionally tagged) and returns an array where each element is a hash containing keys C (the REXP of the pairlist element) and, optionally, C. =item tagged_pairlist_to_rexp_hash Converts a pairlist to a REXP hash whose keys are the pairlist's element tags and values the pairlist elements themselves. =item tagged_pairlist_to_attribute_hash Converts object attributes, which are serialized as a pairlist with attribute name in the element's tag, to a hash that can be used as the C argument to L constructors. Some attributes are serialized using a compact encoding (for instance, when a table's row names are just integers 1:nrows), and this function will decode them to a complete REXP. =back =head1 BUGS AND LIMITATIONS There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut REXPFactory.pm100644000765000024 5350113140202262 22202 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/IOpackage Statistics::R::IO::REXPFactory; # ABSTRACT: Functions for parsing R data files $Statistics::R::IO::REXPFactory::VERSION = '1.0002'; use 5.010; use strict; use warnings FATAL => 'all'; use Exporter 'import'; our @EXPORT = qw( ); our @EXPORT_OK = qw( unserialize ); our %EXPORT_TAGS = ( all => [ @EXPORT_OK ], ); use Statistics::R::IO::Parser qw( :all ); use Statistics::R::IO::ParserState; use Statistics::R::REXP::Character; use Statistics::R::REXP::Double; use Statistics::R::REXP::Integer; use Statistics::R::REXP::List; use Statistics::R::REXP::Logical; use Statistics::R::REXP::Raw; use Statistics::R::REXP::Language; use Statistics::R::REXP::Symbol; use Statistics::R::REXP::Null; use Statistics::R::REXP::Closure; use Statistics::R::REXP::GlobalEnvironment; use Statistics::R::REXP::EmptyEnvironment; use Statistics::R::REXP::BaseEnvironment; use Carp; sub header { seq(choose(xdr(), bin()), uint32(2), # serialization format v2 \&any_uint32, # creator's R version uint32(0x020300) # min R version to read (2.3.0 as of 3.0.2) ) } sub xdr { bind(string("X\n"), # XDR header sub { endianness('>'); mreturn shift; }) } sub bin { bind(string("B\n"), # "binary" header sub { endianness('<'); mreturn shift; }) } sub object_content { bind(&unpack_object_info, \&object_data) } sub unpack_object_info { bind(\&any_uint32, sub { my $object_info = shift or return; mreturn { is_object => $object_info & 1<<8, has_attributes => $object_info & 1<<9, has_tag => $object_info & 1<<10, object_type => $object_info & 0xFF, levels => $object_info >> 12, flags => $object_info, }; }) } sub object_data { my $object_info = shift; if ($object_info->{object_type} == 10) { # logical vector lglsxp($object_info) } elsif ($object_info->{object_type} == 13) { # integer vector intsxp($object_info) } elsif ($object_info->{object_type} == 14) { # numeric vector realsxp($object_info) } elsif ($object_info->{object_type} == 15) { # complex vector cplxsxp($object_info) } elsif ($object_info->{object_type} == 16) { # character vector strsxp($object_info) } elsif ($object_info->{object_type} == 24) { # raw vector rawsxp($object_info) } elsif ($object_info->{object_type} == 19) { # list (generic vector) vecsxp($object_info) } elsif ($object_info->{object_type} == 20) { # expression vector expsxp($object_info) } elsif ($object_info->{object_type} == 9) { # internal character string charsxp($object_info) } elsif ($object_info->{object_type} == 2) { # pairlist listsxp($object_info) } elsif ($object_info->{object_type} == 6) { # language object langsxp($object_info) } elsif ($object_info->{object_type} == 1) { # symbol symsxp($object_info) } elsif ($object_info->{object_type} == 4) { # environment envsxp($object_info) } elsif ($object_info->{object_type} == 3) { # closure closxp($object_info) } elsif ($object_info->{object_type} == 25) { # closure s4sxp($object_info) } elsif ($object_info->{object_type} == 0xfb) { # encoded R_MissingArg, i.e., empty symbol mreturn(Statistics::R::REXP::Symbol->new) } elsif ($object_info->{object_type} == 0xf1) { # encoded R_BaseEnv mreturn(Statistics::R::REXP::BaseEnvironment->new) } elsif ($object_info->{object_type} == 0xf2) { # encoded R_EmptyEnv mreturn(Statistics::R::REXP::EmptyEnvironment->new) } elsif ($object_info->{object_type} == 0xfd) { # encoded R_GlobalEnv mreturn(Statistics::R::REXP::GlobalEnvironment->new) } elsif ($object_info->{object_type} == 0xfe) { # encoded Nil mreturn(Statistics::R::REXP::Null->new) } elsif ($object_info->{object_type} == 0xff) { # encoded reference to a stored singleton refsxp($object_info) } else { error "unimplemented SEXPTYPE: " . $object_info->{object_type} } } sub listsxp { my $object_info = shift; my $sub_items = 1; # CAR, CDR will be read separately if ($object_info->{has_attributes}) { $sub_items++; } if ($object_info->{has_tag}) { $sub_items++; } bind(seq(bind(count($sub_items, object_content), sub { my @args = @{shift or return}; my %value = (value => $args[-1]); $value{tag} = $args[-2] if $object_info->{has_tag}; $value{attributes} = $args[0] if $object_info->{has_attributes}; mreturn { %value }; }), object_content), # CDR sub { my ($car, $cdr) = @{shift or return}; my @elements = ($car); if (ref $cdr eq ref []) { push( @elements, @{$cdr}) } elsif (!$cdr->is_null) { push( @elements, $cdr) } mreturn [ @elements ] }) } ## Language expressions are pairlists, but with a certain structure: ## - the first element is the reference (name or another language ## expression) to the function call ## - the rest of the list are the arguments of the call, with optional ## tags to name them sub langsxp { ## After the pairlist has been parsed by `listsxp`, we want to ## separate the tags from the elements before invoking the Language ## constructor, with the tags becoming the names attribute bind(listsxp(@_), sub { my $list = shift or return; my @elements; my @names; my %attributes; foreach my $element (@$list) { my $tag = $element->{tag}; my $value = $element->{value}; push @elements, $value; push @names, $tag ? $tag->name : ''; if (exists $element->{attributes}) { my %attribute_hash = tagged_pairlist_to_attribute_hash($element->{attributes}); while(my ($key, $value) = each %attribute_hash) { die "Duplicate attribute $key" if exists $attributes{$key}; $attributes{$key} = $value; } } } my %args = (elements => [ @elements ]); ## if no element is tagged, then don't construct the ## 'names' attribute if (grep {exists $_->{tag}} @$list) { $attributes{names} = Statistics::R::REXP::Character->new([ @names ]); } $args{attributes} = \%attributes if %attributes; mreturn(Statistics::R::REXP::Language->new(%args)) }) } sub tagged_pairlist_to_rexp_hash { my $list = shift; return unless ref $list eq ref []; my %rexps; foreach my $element (@$list) { croak "Tagged element has an attribute?!" if exists $element->{attribute}; my $name = $element->{tag}->name; $rexps{$name} = $element->{value}; } %rexps } ## Attributes are recorded as a pairlist, with attribute name in the ## element's tag, and attribute value in the element itself. Pairlists ## that serialize attributes should not have their own attribute. sub tagged_pairlist_to_attribute_hash { my %rexp_hash = tagged_pairlist_to_rexp_hash @_; my $row_names = $rexp_hash{'row.names'}; if ($row_names && $row_names->type eq 'integer' && ! defined $row_names->elements->[0]) { ## compact encoding when rownames are integers 1..n: the ## length n is in the second element, but can be negative to ## denote "automatic" rownames my $n = abs($row_names->elements->[1]); $rexp_hash{'row.names'} = Statistics::R::REXP::Integer->new([1..$n]); } %rexp_hash } ## Vector lengths are encoded as signed integers. This was fine when ## the maximum allowed length was 2^31-1; long vectors were introduced ## in R 3.0 and their length is encoded in three bytes: -1, followed ## by high and low word of a 64-bit length. sub maybe_long_length { bind(\&any_int32, sub { my $len = shift; if ($len >= 0) { mreturn $len; } elsif ($len == -1) { error 'TODO: Long vectors are not supported'; } else { error 'Negative length detected: ' . $len; } }) } ## Vectors are serialized first with a SEXP for the vector elements, ## followed by attributes stored as a tagged pairlist. sub vector_and_attributes { my ($object_info, $element_parser, $rexp_class) = @_; my @parsers = ( with_count(maybe_long_length, $element_parser) ); if ($object_info->{has_attributes}) { push @parsers, object_content } bind(seq(@parsers), sub { my @args = @{shift or return}; my %args = (elements => (shift(@args) || [])); if ($object_info->{has_attributes}) { $args{attributes} = { tagged_pairlist_to_attribute_hash(shift @args) }; } mreturn($rexp_class->new(%args)) }) } sub lglsxp { my $object_info = shift; vector_and_attributes($object_info, bind(\&any_uint32, sub { my $x = shift; mreturn ($x != 0x80000000 ? $x : undef) }), 'Statistics::R::REXP::Logical') } sub intsxp { my $object_info = shift; vector_and_attributes($object_info, any_int32_na, 'Statistics::R::REXP::Integer') } sub realsxp { my $object_info = shift; vector_and_attributes($object_info, any_real64_na, 'Statistics::R::REXP::Double') } sub cplxsxp { my $object_info = shift; my @parsers = ( with_count(maybe_long_length, count(2, any_real64_na)) ); if ($object_info->{has_attributes}) { push @parsers, object_content } bind(seq(@parsers), sub { my @args = @{shift or return}; my @elements = @{shift(@args) || []}; my @cplx; foreach my $element (@elements) { my ($re, $im) = @{$element}; if (defined($re) && defined($im)) { push(@cplx, Math::Complex::cplx($re, $im)) } else { push(@cplx, undef) } } my %args = (elements => [ @cplx ]); if ($object_info->{has_attributes}) { $args{attributes} = { tagged_pairlist_to_attribute_hash(shift @args) }; } mreturn(Statistics::R::REXP::Complex->new(%args)) }) } sub strsxp { my $object_info = shift; vector_and_attributes($object_info, object_content, 'Statistics::R::REXP::Character') } sub rawsxp { my $object_info = shift; return error "No attributes are allowed on raw vectors" if $object_info->{has_attributes}; bind(with_count(maybe_long_length, \&any_uint8), sub { mreturn(Statistics::R::REXP::Raw->new(shift or return)); }) } sub vecsxp { my $object_info = shift; vector_and_attributes($object_info, object_content, 'Statistics::R::REXP::List') } sub expsxp { my $object_info = shift; vector_and_attributes($object_info, object_content, 'Statistics::R::REXP::Expression') } sub charsxp { my $object_info = shift; ## TODO: handle character set encodings (UTF8, LATIN1, native) bind(\&any_int32, sub { my $len = shift; if ($len >= 0) { bind(count( $len, \&any_char), sub { my @chars = @{shift or return}; mreturn join('', @chars); }) } elsif ($len == -1) { mreturn undef; } else { error 'Negative length detected: ' . $len; } }) } sub symsxp { my $object_info = shift; bind(object_content, # should be followed by a charsxp sub { add_singleton(Statistics::R::REXP::Symbol->new(shift or return)); }) } sub refsxp { my $object_info = shift; my $ref_id = $object_info->{flags} >> 8; return error 'TODO: only packed reference ids' if $ref_id == 0; get_singleton($ref_id-1) } sub envsxp { my $object_info = shift; reserve_singleton( bind(\&any_uint32, sub { my $locked = shift; bind(count(4, object_content), sub { my ($enclosure, $frame, $hash, $attributes) = @{$_[0]}; ## Frame is a tagged pairlist with tag the symbol and CAR the value my %vars = tagged_pairlist_to_rexp_hash $frame; ## Hash table is a Null or a VECSXP with hash chain per element if ($hash->can('elements')) { ## It appears that a variable appears either in the frame *or* ## in the hash table, so we have to merge the two foreach my $chain (@{$hash->elements}) { ## Hash chain is a tagged pairlist my %chain_vars = tagged_pairlist_to_rexp_hash $chain; ## Merge the variables from the hash chain while (my ($name, $value) = each %chain_vars) { $vars{$name} = $value unless exists $vars{$name} and die "Variable $name is already defined in the environment"; } } } my %args = ( frame => \%vars, enclosure => $enclosure, ); if (ref $attributes eq ref []) { $args{attributes} = { tagged_pairlist_to_attribute_hash $attributes }; } mreturn(Statistics::R::REXP::Environment->new( %args )); }) })) } sub closxp { my $object_info = $_[0]; bind(listsxp(@_), sub { my ($head, $body) = @{shift()}; my $attributes = $head->{attributes}; my $environment = $head->{tag}; my $arguments = $head->{value}; my (@arg_names, @arg_defaults); if (ref $arguments eq ref []) { foreach my $arg (@{$arguments}) { push @arg_names, $arg->{tag}->name; my $default = $arg->{value}; if (Statistics::R::REXP::Symbol->new('') eq $default) { push @arg_defaults, undef } else { push @arg_defaults, $default } } } my %args = ( body => $body // Statistics::R::REXP::Null->new, args => [@arg_names], defaults => [@arg_defaults], environment => $environment); if ($object_info->{has_attributes}) { $args{attributes} = { tagged_pairlist_to_attribute_hash $attributes }; } mreturn(Statistics::R::REXP::Closure->new( %args )); }) } sub s4sxp { my $object_info = shift; bind(object_content, sub { my $attr = shift; my $attributes = { tagged_pairlist_to_attribute_hash($attr) }; my $class = $attributes->{class}->elements; croak "S4 'class' must be a single-element array" unless ref($class) eq 'ARRAY' && scalar(@{$class}) == 1; my $package = $attributes->{class}->attributes->{package}->elements; croak "S4 'package' must be a single-element array" unless ref($package) eq 'ARRAY' && scalar(@{$package}) == 1; # the remaining attributes should be object's slots delete $attributes->{class}; my $slots = $attributes; mreturn(Statistics::R::REXP::S4->new(class => $class->[0], package => $package->[0], slots => $slots)) }) } sub unserialize { my $data = shift; return error "Unserialize requires a scalar data" if ref $data && ref $data ne ref []; my $result = bind(header, \&object_content, )->(Statistics::R::IO::ParserState->new(data => $data)); if ($result) { my $state = $result->[1]; carp("remaining data: " . (scalar(@{$state->data}) - $state->position)) unless $state->eof; } $result; } 1; __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::IO::REXPFactory - Functions for parsing R data files =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::IO::REXPFactory qw( unserialize ); # Assume $data was created by reading, say, an RDS file my ($rexp, $state) = @{unserialize($data)} or die "couldn't parse"; # If we're reading an RDS file, there should be no data left # unparsed die 'Unread data remaining in the RDS file' unless $state->eof; # the result of the unserialization is a REXP say $rexp; # REXPs can be converted to the closest native Perl data type print $rexp->to_pl; =head1 DESCRIPTION This module implements the actual reading of serialized R objects and their conversion to a L. You are not expected to use it directly, as it's normally wrapped by L and L. =head1 SUBROUTINES =over =item unserialize $data Constructs a L object from its serialization in C<$data>. Returns a pair of the object and the L at the end of serialization. =item intsxp, langsxp, lglsxp, listsxp, rawsxp, realsxp, refsxp, strsxp, symsxp, vecsxp, envsxp, charsxp, cplxsxp, closxp, expsxp, s4sxp Parsers for the corresponding R SEXP-types. =item object_content Parses object info and its data by sequencing L and L. =item unpack_object_info Parser for serialized object info structure. Returns a hash with keys "is_object", "has_attributes", "has_tag", "object_type", and "levels", each corresponding to the field in R serialization described in L. An additional key "flags" contains the full 32-bit value as stored in the file. =item object_data $obj_info Parser for a serialized R object, using the object type stored in C<$obj_info> hash's "object_type" key to use the correct parser for the particular type. =item vector_and_attributes $object_info, $element_parser, $rexp_class Convenience parser for vectors, which are serialized first with a SEXP for the vector elements, followed by attributes stored as a tagged pairlist. Attributes are stored only if C<$object_info> indicates their presence, while vector elements are parsed using C<$element_parser>. Finally, the parsed attributes and elements are used as arguments to the constructor of the C<$rexp_class>, which should be a subclass of L. =item header Parser for header of R serialization: the serialization format (XDR, binary, etc.), the version number of the serialization (currently 2), and two 32-bit integers indicating the version of R which wrote the file followed by the minimal version of R needed to read the format. =item xdr, bin Parsers for RDS header indicating files in XDR or native-binary format. =item maybe_long_length Parser for vector length, allowing for the encoding of 64-bit long vectors introduced in R 3.0. =item tagged_pairlist_to_rexp_hash Converts a pairlist to a REXP hash whose keys are the pairlist's element tags and values the pairlist elements themselves. =item tagged_pairlist_to_attribute_hash Converts object attributes, which are serialized as a pairlist with attribute name in the element's tag, to a hash that can be used as the C argument to L constructors. Some attributes are serialized using a compact encoding (for instance, when a table's row names are just integers 1:nrows), and this function will decode them to a complete REXP. =back =head1 BUGS AND LIMITATIONS There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut Character.pm100644000765000024 426613140202262 22223 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::Character; # ABSTRACT: an R character vector $Statistics::R::REXP::Character::VERSION = '1.0002'; use 5.010; use Class::Tiny::Antlers; use namespace::clean; extends 'Statistics::R::REXP::Vector'; use overload; use constant sexptype => 'STRSXP'; sub _type { 'character'; } sub BUILDARGS { my $class = shift; my $attributes = $class->SUPER::BUILDARGS(@_); if (ref($attributes->{elements}) eq 'ARRAY') { $attributes->{elements} = [ Statistics::R::REXP::Vector::_flatten(@{$attributes->{elements}}) ] } $attributes } sub BUILD { my ($self, $args) = @_; # Required attribute type die "Elements of the 'elements' attribute must be scalar values" if defined($self->elements) && grep { ref($_) } @{$self->elements} } 1; # End of Statistics::R::REXP::Character __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::Character - an R character vector =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::Character my $vec = Statistics::R::REXP::Character->new([ 1, '', 'foo', [] ]); print $vec->elements; =head1 DESCRIPTION An object of this class represents an R character vector (C). =head1 METHODS C inherits from L, with the added restriction that its elements are scalar values. Elements that are not scalars (i.e., numbers or strings) have value C, as do elements with R value C. =over =item sexptype SEXPTYPE of character vectors is C. =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILDARGS BUILD is_vector =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut Statistics-R-IO-1.0002000755000765000024 013140202262 17316 5ustar00davorstaff000000000000Statistics-R-IO-1.0002.travis.yml100644000765000024 14313140202262 21545 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002language: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release df_auto_rownames-xdr_xz.rds100644000765000024 24413140202262 22620 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à×f],|ùŸø”D’þ³éqMUŒ¸ jrwµü„ §3n,lË È“ÚQiŽ’O¤øÛs‰¾ ¸þ9Ü’„È'5µgÃÏ++þ–x‚£#ÿ£Çò„ºQu_òc1·ke¹¹=@aÁä…~Ø‘ëDó>0 ‹YZdf_expl_rownames-xdr_xz.rds100644000765000024 24013140202262 22614 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£à×c],|ùŸø”D’þ³éqMUŒ¸ jrwµü„ §3n,lË È“ÚQiŽ’O¤øÛs‰¾ ¸þ9Ü’„È'5µgÃÏ-Øû†.ºÊ”ÕdÆ^yW‹q4—æ:ÆKIQàÒì{Ø"z‰£>0 ‹YZExpression.pm100644000765000024 441113140202262 22456 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::Expression; # ABSTRACT: an R expression vector $Statistics::R::REXP::Expression::VERSION = '1.0002'; use 5.010; use Scalar::Util qw(blessed); use Class::Tiny::Antlers; use namespace::clean; extends 'Statistics::R::REXP::List'; use constant sexptype => 'EXPRSXP'; sub to_pl { Statistics::R::REXP::Vector::to_pl(@_) } sub _type { 'expression' }; 1; # End of Statistics::R::REXP::Expression __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::Expression - an R expression vector =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::Expression # Representation of the R call C: my $vec = Statistics::R::REXP::Expression->new([ Statistics::R::REXP::Language->new([ Statistics::R::REXP::Symbol->new('+'), Statistics::R::REXP::Double->new([1]), Statistics::R::REXP::Double->new([2]) ])]); print $vec->elements; =head1 DESCRIPTION An object of this class represents an R expression vectors (C). These objects represent a list of calls, symbols, etc., for example as returned by calling R function C or C. =head1 METHODS C inherits from L, with no added restrictions on the value of its elements. =over =item sexptype SEXPTYPE of expressions is C. =item to_pl Perl value of the expression vector is an array reference to the Perl values of its C. (That is, it's equivalent to Cto_pl}, $vec->elements>.) Unlike L, elements that are atomic vectors of length 1 are still represented as a one-element array reference, rather than scalar values. =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut mtcars-lm-mpgwt-xdr_bzip.rds100644000765000024 234513140202262 22646 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYs<÷°fÿÿÿÿÿ»}ÿÿŸÏî}Í¿ïÿùßA°q¯­þþöNŸ¡ÿÐÑÙ âp:àD¦C)ƒSA²˜ŒšdhõM1êL†Œž¦˜ɦÔÓ&B43B6¦ƒjÕ£#Ôô&Òl™ êi°š›Ô’˜M4ôÄÒ €4h€h(BDÔm@M€£@2  2É“@шhi“!‘ Ñ£L€42da A‘£ F “@ŠQO)µS@õ£A  € €h4@€ÒbW&^‚„+b9RA… ÐUr‚£ "2¤Ä£Ž4"š ŒüU"x—a®b(%$J”Ó” €OÀà)0†süµqR4QAG0ê*i7 ´ë€yO*á¼g ÔáXx¨3™Ê9G‚ŒöœÔo`’ ¨´LÊâZˆ$¨ "!)_IRFˆ„B„PY®DÇcO°¿ó£”PÓMü±vÝ l 0.¸óìJ$ƒ  ¡‰¤ÆPAƒhhSX(0@Ø‘8Z(nK!6FDí¦"žÌªlìÌø†‚Ä Â•áä“Á`¤ °Ò)eDŽɡo h­È@šB ˆ 8Æ1˜ë© €lM¤0ÁŒ&¤*†„g™>ÒØµú`wØ¥¦%8ÒJLjØ€¾ ¡‰S²q€’Ä0*â@[LäôDˆõðQ?Q†U¡‰YØÁ¢+@h)^I¢½Å‘ËqïðNŒÝÌÞ ÕªALØÀ€ˆ± 4޹· µ³U¼++Ö“Ä>êlÐŽ`”ç^Ûèû”; &ŠÁ˜džt ` ËÀ (¼¸›E=·@y¿'ƒw}€æW4wØ'ì0ügÏîTÞ²[Œ©F©× S^òüù¡D?Kvä)¦š…»¼ŸÝ0V‡Öi,£G ] (0<ª2‹µÑªË2ŒÌ@2u=`îuÃy ­f2@.2ñ^@˜PoØGCm*É c˜nZ•ГÚëÍúƒë_9Pps“ÂΜ׫`¨³q×åƒ.ƒ¤),S})€Ì.B±²k-ta,>›¡*B2Š¡€"%¨ÂD^'8Û€ü²9íIš‘ÉêÔX´‡,'>DĘAdfÙi ®RXƒ1Õ2¤ÁP©Ù¢ôíÑv}[Ô!¢œÐ`*i}?z "¯XÑ…R2·q"µ .P¬‘E ¯ Ú!I¦EÐb\VµÑÂÐuœæiŠ‹ K|üé**ˆªM¥ €2Ž£àô‡Bå4+)Œ8kIR”yIÓº³‘kH|«Ç#?v•zNœz\¼×u’†Ôchéì«ô.Ò™lLú_8VzPastXeÂi7!¾{­þM£¹Í|]†ïعµXmˆ§ŒÈ>Ì]ãêIp;ïÑÜ(3Sa& M?èÔ)GT½ËtR‚ ys+C›×j9Ê…jΪ™Cdg?Oá>¨XåxMI)h®rE8PàªÖ·pairlist_untagged-xdr_xz.rds100644000765000024 13013140202262 22763 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataý7zXZi"Þ6!t/å£àA],|ùŸø”D’æÆ'êí ­ :vçni§(€ôw67B£5S(B™ YZEnvironment.pm100644000765000024 1213313140202262 22643 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::Environment; # ABSTRACT: an R environment $Statistics::R::REXP::Environment::VERSION = '1.0002'; use 5.010; use Scalar::Util qw(refaddr blessed); use Class::Tiny::Antlers qw(-default around); use namespace::clean; extends 'Statistics::R::REXP'; use constant sexptype => 'ENVSXP'; has frame => ( is => 'ro', default => sub { { } }, ); has enclosure => ( is => 'ro', ); use overload '""' => sub { 'environment '. shift->name }; sub BUILDARGS { my $class = shift; if ( scalar @_ == 1 ) { if ( ref $_[0] eq 'HASH' ) { return $_[0]; } elsif ( blessed $_[0] && $_[0]->isa('Statistics::R::REXP::Environment') ) { # copy constructor from another environment return { frame => $_[0]->frame, enclosure => $_[0]->enclosure }; } die "Single parameters to new() must be a HASH data" ." or a Statistics::R::REXP::Environment object => ". $_[0] ."\n"; } elsif ( @_ % 2 ) { die "The new() method for $class expects a hash reference or a key/value list." . " You passed an odd number of arguments\n"; } else { return {@_}; } } sub BUILD { my ($self, $args) = @_; # Required attribute type die "Attribute 'frame' must be a reference to a hash of REXPs" if ref($self->frame) ne 'HASH' || grep { ! (blessed($_) && $_->isa('Statistics::R::REXP')) } values(%{$self->frame}); die "Attribute 'enclosure' must be an instance of Environment" if defined $self->enclosure && !(blessed($self->enclosure) && $self->enclosure->isa('Statistics::R::REXP::Environment')); } around _eq => sub { my $orig = shift; return unless $orig->(@_); my ($self, $obj) = (shift, shift); Statistics::R::REXP::_compare_deeply($self->frame, $obj->frame) && Statistics::R::REXP::_compare_deeply($self->enclosure, $obj->enclosure) }; sub name { my $self = shift; ($self->attributes && exists $self->attributes->{name}) ? $self->attributes->{name} : '0x' . sprintf('%x', refaddr $self) } sub to_pl { die "Environments do not have a native Perl representation" } 1; # End of Statistics::R::REXP::Environment __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::Environment - an R environment =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::Environment my $env = Statistics::R::REXP::Environment->new({ x => Statistics::R::REXP::Character->new(['foo', 'bar']), b => Statistics::R::REXP::Double->new([1, 2, 3]), }); print $env->elements; =head1 DESCRIPTION An object of this class represents an R environment (C). Environments in R consist of a I, a set of symbol-value pairs, and an I, a pointer to an enclosing (also called "parent") environment. Environments form a tree structure, with a special I environment at the root, which has no parent. These objects represent calls (such as model formulae), with first element a reference to the function being called, and the remainder the actual arguments of the call. Names of arguments, if given, are recorded in the 'names' attribute (itself as L vector), with unnamed arguments having name C<''>. If no arguments were named, the environment objects will not have a defined 'names' attribute. You shouldn't create instances of this class, it exists mainly to handle deserialization of Cs by the C classes. =head1 METHODS C inherits from L, with the added restriction that its first element has to be a L or another C instance. Trying to create a Environment instance that doesn't follow this restriction will raise an exception. =head2 ACCESSORS =over =item frame Returns a reference to the hash of symbol-value pairs representing the environment's frame, i.e., the variable with bound values in the environment. =item enclosure Returns a reference to the parent Environment, if it is defined. =item name Environments can be named, although this is not normally settable from R code. Typically, only the system environments (such as namespaces), and environments created by C-ing an object, have a name. =item sexptype SEXPTYPE of environments is C. =item to_pl Environments do not have a native Perl representation and trying to call this access will raise an exception. =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILDARGS BUILD =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut df_auto_rownames-xdr_bzip.rds100644000765000024 20613140202262 23121 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SYöÌTXóÀþ2H@?œð@ r ‰¦šb0MÔd 4Ó"4f(„2DrÆüŒ.”ƒÕ솔àVºÁ›Þ³¥z†Ñ‹EÉh“»±Fu´­j”Þ?~X|õâ…gcìÉaw ~©~.äŠp¡!‡m˜¨df_expl_rownames-xdr_bzip.rds100644000765000024 20213140202262 23115 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY)U 2ZsÀþ2H@?œð@ r+@F#& #EL¦@hÙKÎk8EtÎq¡iD¹²]lÊúÈV†Þ´Úü‚¨è¡Q£$É1Y¶»1R/‹c6ü‘¶CïÜKr7¬šè)=‹¹"œ(Hª…pairlist_untagged-xdr_bzip.rds100644000765000024 7413140202262 23255 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/dataBZh91AY&SY_½.¼ Âø@ 1 i&†:b×›lÞI ¨ LN³ÏÅÜ‘N$ïK¯closure-serialization-notes.org100644000765000024 10131713140202262 23507 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/t/data* function() 1L ** Header *** Format XDR 58 0a *** Save file version 2 00 00 00 02 *** Saved by 3.1.0 00 03 01 00 *** Format 2.3.0 00 02 03 00 ** Closure with tags and attributes 00 00 06 03 *** attributes **** pairlist with tags 00 00 04 02 ***** tag ****** symbol 'srcref' 00 00 00 01 00 04 00 09 00 00 00 06 73 72 63 72 65 66 ***** value ****** integer vector with attributes 00 00 03 0d ******* values: 1, 1, 1, 13, 1, 13, 1, 1 00 00 00 08 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 0d 00 00 00 01 00 00 00 0d 00 00 00 01 00 00 00 01 ******* attributes ******** pairlist with tags 00 00 04 02 ********* tag ********** symbol 'srcfile' 00 00 00 01 00 04 00 09 00 00 00 07 73 72 63 66 69 6c 65 ********* value ********** environment 00 00 00 04 *********** not locked 00 00 00 00 *********** enclosure ************ EmptyEnv 00 00 00 f2 *********** frame ************ Nil 00 00 00 fe *********** hash ************ generic vector with 29 elememts (each element is a chain of objects) 00 00 00 13 00 00 00 1d ************* Chain 1 (empty) ************** Nil 00 00 00 fe ************* Chain 2 (empty) ************** Nil 00 00 00 fe ************* Chain 3 (empty) ************** Nil 00 00 00 fe ************* Chain 4 ('wd') ************** pairlist with tags 00 00 04 02 **************** tag ***************** symbol 'wd' 00 00 00 01 00 04 00 09 00 00 00 02 77 64 **************** value ***************** character vector 00 00 00 10 00 00 00 01 ***************** '/Users/davor/projects/Statistics-R-IO' 00 04 00 09 00 00 00 25 2f 55 73 65 72 73 2f 64 61 76 6f 72 2f 70 72 6f 6a 65 63 74 73 2f 53 74 61 74 69 73 74 69 63 73 2d 52 2d 49 4f *************** Nil 00 00 00 fe ************* Chain 5 (empty) ************** Nil 00 00 00 fe ************* Chain 6 ('lines') ************** pairlist with tags 00 00 04 02 *************** tag **************** symbol 'lines' 00 00 00 01 00 04 00 09 00 00 00 05 6c 69 6e 65 73 *************** value **************** character vector 00 00 00 10 00 00 00 01 ***************** 'function() 1L' 00 04 00 09 00 00 00 0d 66 75 6e 63 74 69 6f 6e 28 29 20 31 4c ************** Nil 00 00 00 fe ************* Chain 7 ('Enc') ************** pairlist with tags 00 00 04 02 **************** tag ***************** symbol 'Enc' 00 00 00 01 00 04 00 09 00 00 00 03 45 6e 63 **************** value ***************** character vector 00 00 00 10 00 00 00 01 ****************** 'unknown' 00 04 00 09 00 00 00 07 75 6e 6b 6e 6f 77 6e *************** Nil 00 00 00 fe ************* Chain 8 (empty) ************** Nil 00 00 00 fe ************* Chain 9 ('isFile') ************** pairlist with tags 00 00 04 02 **************** tag ***************** symbol 'isFile' 00 00 00 01 00 04 00 09 00 00 00 06 69 73 46 69 6c 65 **************** value ***************** logical 00 00 00 0a 00 00 00 01 ****************** FALSE 00 00 00 00 *************** Nil 00 00 00 fe ************* Chain 10 ('timestamp') ************** pairlist with tags 00 00 04 02 *************** tag **************** symbol 'timestamp' 00 00 00 01 00 04 00 09 00 00 00 09 74 69 6d 65 73 74 61 6d 70 *************** value ('2014-09-29 13:13:39 PDT') **************** double vector with attributes 00 00 03 0e 00 00 00 01 ***************** elements ****************** 1412021620 41 d5 0a 6f 5c ec dc 1e ***************** attributes ('class') ****************** pairlist with tags 00 00 04 02 ******************* tag ******************** symbol 'class' 00 00 00 01 00 04 00 09 00 00 00 05 63 6c 61 73 73 ******************* value ******************** character vector 00 00 00 10 00 00 00 02 ********************* 'POSIXct' 00 04 00 09 00 00 00 07 50 4f 53 49 58 63 74 ********************* 'POSIXt' 00 04 00 09 00 00 00 06 50 4f 53 49 58 74 ****************** Nil 00 00 00 fe ************** Nil 00 00 00 fe ************* Chain 11 (empty) ************** Nil 00 00 00 fe ************* Chain 12 (empty) ************** Nil 00 00 00 fe ************* Chain 13 (empty) ************** Nil 00 00 00 fe ************* Chain 14 ('filename') ************** Pairlist with tags 00 00 04 02 **************** tag ***************** symbol 'filename' 00 00 00 01 00 04 00 09 00 00 00 08 66 69 6c 65 6e 61 6d 65 **************** value ***************** character vector 00 00 00 10 00 00 00 01 ****************** '' 00 04 00 09 00 00 00 06 3c 74 65 78 74 3e *************** Nil 00 00 00 fe ************* Chain 15 (empty) ************** Nil 00 00 00 fe ************* Chain 16 (empty) ************** Nil 00 00 00 fe ************* Chain 17 (empty) ************** Nil 00 00 00 fe ************* Chain 18 (empty) ************** Nil 00 00 00 fe ************* Chain 19 (empty) ************** Nil 00 00 00 fe ************* Chain 20 (empty) ************** Nil 00 00 00 fe ************* Chain 21 (empty) ************** Nil 00 00 00 fe ************* Chain 22 (empty) ************** Nil 00 00 00 fe ************* Chain 23 (empty) ************** Nil 00 00 00 fe ************* Chain 24 (empty) ************** Nil 00 00 00 fe ************* Chain 25 (empty) ************** Nil 00 00 00 fe ************* Chain 26 (empty) ************** Nil 00 00 00 fe ************* Chain 27 (empty) ************** Nil 00 00 00 fe ************* Chain 28 ('fixedNewlines') ************** pairlist with tags 00 00 04 02 *************** tag **************** symbol 'fixedNewlines' 00 00 00 01 00 04 00 09 00 00 00 0d 66 69 78 65 64 4e 65 77 6c 69 6e 65 73 *************** value **************** logical 00 00 00 0a 00 00 00 01 ***************** FALSE 00 00 00 01 ************** Nil 00 00 00 fe ************* Chain 29 ('parseData') ************** pairlist with tags 00 00 04 02 **************** tag ***************** symbol 'parseData' 00 00 00 01 00 04 00 09 00 00 00 09 70 61 72 73 65 44 61 74 61 **************** value ***************** integer vector with attributes 00 00 03 0d 00 00 00 30 ****************** elements 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 08 00 00 00 01 00 00 01 08 00 00 00 01 00 00 00 08 00 00 00 01 00 00 00 09 00 00 00 01 00 00 00 09 00 00 00 01 00 00 00 28 00 00 00 02 00 00 00 08 00 00 00 01 00 00 00 0a 00 00 00 01 00 00 00 0a 00 00 00 01 00 00 00 29 00 00 00 03 00 00 00 08 00 00 00 01 00 00 00 0c 00 00 00 01 00 00 00 0d 00 00 00 01 00 00 01 05 00 00 00 04 00 00 00 05 00 00 00 01 00 00 00 0c 00 00 00 01 00 00 00 0d 00 00 00 00 00 00 00 4d 00 00 00 05 00 00 00 07 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 0d 00 00 00 00 00 00 00 4d 00 00 00 08 00 00 00 09 ****************** attributes ('dim', 'tokens', 'text', 'class') ******************* pairlist with tag 00 00 04 02 ******************** tag ********************* symbol 'dim' 00 00 00 01 00 04 00 09 00 00 00 03 64 69 6d ******************** value ********************* integer vector 8, 6 00 00 00 0d 00 00 00 02 ********************** 8 00 00 00 08 ********************** 6 00 00 00 06 ******************* pairlist with tag 00 00 04 02 ******************** tag ********************* symbol 'tokens' 00 00 00 01 00 04 00 09 00 00 00 06 74 6f 6b 65 6e 73 ******************** value ********************* character vector 00 00 00 10 00 00 00 06 ********************** 'FUNCTION' 00 04 00 09 00 00 00 08 46 55 4e 43 54 49 4f 4e ********************** "'('" 00 04 00 09 00 00 00 03 27 28 27 ********************** "')'" 00 04 00 09 00 00 00 03 27 29 27 ********************** 'NUM_CONST' 00 04 00 09 00 00 00 09 4e 55 4d 5f 43 4f 4e 53 54 ********************** 'expr' 00 04 00 09 00 00 00 04 65 78 70 72 ********************** 'expr' 00 04 00 09 00 00 00 04 65 78 70 72 ******************* pairlist with tag 00 00 04 02 ******************** tag ********************* symbol 'text' 00 00 00 01 00 04 00 09 00 00 00 04 74 65 78 74 ******************** value ********************* character vector 00 00 00 10 00 00 00 06 ********************** 'function' 00 04 00 09 00 00 00 08 66 75 6e 63 74 69 6f 6e ********************** '(' 00 04 00 09 00 00 00 01 28 ********************** ')' 00 04 00 09 00 00 00 01 29 ********************** '1L' 00 04 00 09 00 00 00 02 31 4c ********************** '' 00 04 00 09 00 00 00 00 ********************** '' 00 04 00 09 00 00 00 00 ******************* pairlist with tag 00 00 04 02 ******************** tag ********************* reference to expression 9 (symbol 'class') 00 00 09 ff ******************** value ********************* character vector 00 00 00 10 00 00 00 01 ********************** 'parseData' 00 04 00 09 00 00 00 09 70 61 72 73 65 44 61 74 61 ******************* Nil 00 00 00 fe *************** Nil 00 00 00 fe ************ attributes ('class') ************* pairlist with tag 00 00 04 02 ************** tag *************** reference to expression 9 (symbol 'class') 00 00 09 ff ************** value *************** character vector 00 00 00 10 00 00 00 02 **************** 'srcfilecopy' 00 04 00 09 00 00 00 0b 73 72 63 66 69 6c 65 63 6f 70 79 **************** 'srcfile' 00 04 00 09 00 00 00 07 73 72 63 66 69 6c 65 ************* Nil 00 00 00 fe ******** pairlist with tag 00 00 04 02 ********* tag ********** reference to expression 9 (symbol 'class') 00 00 09 ff ********* value ********** character vector 00 00 00 10 00 00 00 01 *********** 'srcref' 00 04 00 09 00 00 00 06 73 72 63 72 65 66 ******** Nil 00 00 00 fe **** Nil 00 00 00 fe *** enclosure **** GlobalEnv 00 00 00 fd *** arguments **** Nil 00 00 00 fe *** body **** integer vector 00 00 00 0d 00 00 00 01 *** 1L 00 00 00 01 * function(a, b=3, ...) {a+b} ** Header *** Format XDR 58 0a *** Save file version 2 00 00 00 02 *** Saved by 3.1.0 00 03 01 00 *** Format 2.3.0 00 02 03 00 ** Closure with tags and attributes 00 00 06 03 *** attributes **** pairlist with tag 00 00 04 02 ***** tag ****** symbol 'srcref' 00 00 00 01 00 04 00 09 00 00 00 06 73 72 63 72 65 66 ***** value ****** integer vector with attributes 00 00 03 0d ******* values: 1, 1, 1, 27, 1, 27, 1, 1 00 00 00 08 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 1b 00 00 00 01 00 00 00 1b 00 00 00 01 00 00 00 01 ******* attributes ******** pairlist with tag 00 00 04 02 ********* tag ********** symbol 'srcfile' 00 00 00 01 00 04 00 09 00 00 00 07 73 72 63 66 69 6c 65 ********* value ********** environment 00 00 00 04 *********** not locked 00 00 00 00 *********** enclosure ************ EmptyEnv 00 00 00 f2 *********** frame (empty) ************ Nil 00 00 00 fe *********** hash ************ generic vector with 29 elements (each element is a chain of objects) 00 00 00 13 00 00 00 1d ************* Chain 1 (empty) ************** Nil 00 00 00 fe ************* Chain 2 (empty) ************** Nil 00 00 00 fe ************* Chain 3 (empty) ************** Nil 00 00 00 fe ************* Chain 4 ('wd') ************** pairlist with tag 00 00 04 02 *************** tag **************** symbol 'wd' 00 00 00 01 00 04 00 09 00 00 00 02 77 64 *************** value **************** character vector 00 00 00 10 00 00 00 01 ***************** '/Users/davor/projects/Statistics-R-IO' 00 04 00 09 00 00 00 25 2f 55 73 65 72 73 2f 64 61 76 6f 72 2f 70 72 6f 6a 65 63 74 73 2f 53 74 61 74 69 73 74 69 63 73 2d 52 2d 49 4f ************** Nil 00 00 00 fe ************* Chain 5 (empty) ************** Nil 00 00 00 fe ************* Chain 6 ('lines') ************** pairlist with tag 00 00 04 02 *************** tag **************** symbol 'lines' 00 00 00 01 00 04 00 09 00 00 00 05 6c 69 6e 65 73 *************** value **************** character vector 00 00 00 10 00 00 00 01 ***************** 'function(a, b=3, ...) {a+b}' 00 04 00 09 00 00 00 1b 66 75 6e 63 74 69 6f 6e 28 61 2c 20 62 3d 33 2c 20 2e 2e 2e 29 20 7b 61 2b 62 7d ************** Nil 00 00 00 fe ************* Chain 7 ('Enc') ************** pairlist with tag *************** tag **************** symbol 'Enc' 00 00 00 01 00 04 00 09 00 00 00 03 45 6e 63 *************** value **************** character vector 00 00 00 10 00 00 00 01 ***************** 'unknown' 00 04 00 09 00 00 00 07 75 6e 6b 6e 6f 77 6e ************** Nil 00 00 00 fe ************* Chain 8 (empty) ************** Nil 00 00 00 fe ************* Chain 9 ('isFile') ************** pairlist with tag 00 00 04 02 *************** tag **************** symbol 'isFile' 00 00 00 01 00 04 00 09 00 00 00 06 69 73 46 69 6c 65 *************** value **************** logical 00 00 00 0a 00 00 00 01 ***************** FALSE 00 00 00 00 ************** Nil 00 00 00 fe ************* Chain 10 ('timestamp') ************** pairlist with tag 00 00 04 02 *************** tag **************** symbol 'timestamp' 00 00 00 01 00 04 00 09 00 00 00 09 74 69 6d 65 73 74 61 6d 70 *************** value ('2014-09-30 12:10:03 PDT') **************** double vector with attributes 00 00 03 0e 00 00 00 01 ***************** elements ****************** 1412104204 41 d5 0a c0 02 e3 02 15 ***************** attributes ('class') ****************** pairlist with tag 00 00 04 02 ******************* tag ******************** symbol 'class' 00 00 00 01 00 04 00 09 00 00 00 05 63 6c 61 73 73 ******************* value ******************** character vector 00 00 00 10 00 00 00 02 ********************* 'POSIXct' 00 04 00 09 00 00 00 07 50 4f 53 49 58 63 74 ********************* 'POSIXt' 00 04 00 09 00 00 00 06 50 4f 53 49 58 74 ****************** Nil 00 00 00 fe ************** Nil 00 00 00 fe ************* Chain 11 (empty) ************** Nil 00 00 00 fe ************* Chain 12 (empty) ************** Nil 00 00 00 fe ************* Chain 13 (empty) ************** Nil 00 00 00 fe ************* Chain 14 ('filename') ************** pairlist with tag 00 00 04 02 *************** tag **************** symbol 'filename' 00 00 00 01 00 04 00 09 00 00 00 08 66 69 6c 65 6e 61 6d 65 *************** value **************** character vector 00 00 00 10 00 00 00 01 ***************** '' 00 04 00 09 00 00 00 06 3c 74 65 78 74 3e ************** Nil 00 00 00 fe ************* Chain 15 (empty) ************** Nil 00 00 00 fe ************* Chain 16 (empty) ************** Nil 00 00 00 fe ************* Chain 17 (empty) 00 00 00 fe ************* Chain 18 (empty) 00 00 00 fe ************* Chain 19 (empty) 00 00 00 fe ************* Chain 20 (empty) 00 00 00 fe ************* Chain 21 (empty) 00 00 00 fe ************* Chain 22 (empty) 00 00 00 fe ************* Chain 23 (empty) 00 00 00 fe ************* Chain 24 (empty) 00 00 00 fe ************* Chain 25 (empty) 00 00 00 fe ************* Chain 26 (empty) 00 00 00 fe ************* Chain 27 (empty) 00 00 00 fe ************* Chain 28 'fixedNewlines' ************** pairlist with tag 00 00 04 02 *************** tag **************** symbol 'fixedNewlines' 00 00 00 01 00 04 00 09 00 00 00 0d 66 69 78 65 64 4e 65 77 6c 69 6e 65 73 *************** value **************** logical vector 00 00 00 0a 00 00 00 01 ***************** TRUE 00 00 00 01 ************** Nil 00 00 00 fe ************* Chain 29 ('parseData') ************** pairlist with tag 00 00 04 02 *************** tag **************** symbol 'parseData' 00 00 00 01 00 04 00 09 00 00 00 09 70 61 72 73 65 44 61 74 61 *************** value **************** integer vector with attributes 00 00 03 0d 00 00 00 a8 ***************** elements 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 08 00 00 00 01 00 00 01 08 00 00 00 01 00 00 00 1c 00 00 00 01 00 00 00 09 00 00 00 01 00 00 00 09 00 00 00 01 00 00 00 28 00 00 00 02 00 00 00 1c 00 00 00 01 00 00 00 0a 00 00 00 01 00 00 00 0a 00 00 00 01 00 00 01 24 00 00 00 03 00 00 00 05 00 00 00 01 00 00 00 0b 00 00 00 01 00 00 00 0b 00 00 00 01 00 00 00 2c 00 00 00 04 00 00 00 0b 00 00 00 01 00 00 00 0d 00 00 00 01 00 00 00 0d 00 00 00 01 00 00 01 24 00 00 00 06 00 00 00 0b 00 00 00 01 00 00 00 0e 00 00 00 01 00 00 00 0e 00 00 00 01 00 00 01 25 00 00 00 07 00 00 00 0b 00 00 00 01 00 00 00 0f 00 00 00 01 00 00 00 0f 00 00 00 01 00 00 01 05 00 00 00 08 00 00 00 09 00 00 00 01 00 00 00 0f 00 00 00 01 00 00 00 0f 00 00 00 00 00 00 00 4d 00 00 00 09 00 00 00 0b 00 00 00 01 00 00 00 10 00 00 00 01 00 00 00 10 00 00 00 01 00 00 00 2c 00 00 00 0a 00 00 00 0e 00 00 00 01 00 00 00 12 00 00 00 01 00 00 00 14 00 00 00 01 00 00 01 24 00 00 00 0c 00 00 00 0e 00 00 00 01 00 00 00 15 00 00 00 01 00 00 00 15 00 00 00 01 00 00 00 29 00 00 00 0d 00 00 00 1c 00 00 00 01 00 00 00 17 00 00 00 01 00 00 00 17 00 00 00 01 00 00 00 7b 00 00 00 0f 00 00 00 19 00 00 00 01 00 00 00 18 00 00 00 01 00 00 00 18 00 00 00 01 00 00 01 07 00 00 00 10 00 00 00 12 00 00 00 01 00 00 00 19 00 00 00 01 00 00 00 19 00 00 00 01 00 00 00 2b 00 00 00 11 00 00 00 16 00 00 00 01 00 00 00 18 00 00 00 01 00 00 00 18 00 00 00 00 00 00 00 4d 00 00 00 12 00 00 00 16 00 00 00 01 00 00 00 1a 00 00 00 01 00 00 00 1a 00 00 00 01 00 00 01 07 00 00 00 13 00 00 00 15 00 00 00 01 00 00 00 1b 00 00 00 01 00 00 00 1b 00 00 00 01 00 00 00 7d 00 00 00 14 00 00 00 19 00 00 00 01 00 00 00 1a 00 00 00 01 00 00 00 1a 00 00 00 00 00 00 00 4d 00 00 00 15 00 00 00 16 00 00 00 01 00 00 00 18 00 00 00 01 00 00 00 1a 00 00 00 00 00 00 00 4d 00 00 00 16 00 00 00 17 00 00 00 01 00 00 00 17 00 00 00 01 00 00 00 1b 00 00 00 00 00 00 00 4d 00 00 00 19 00 00 00 1b 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 1b 00 00 00 00 00 00 00 4d 00 00 00 1c 00 00 00 1d ***************** attributes ('dim', 'tokens', 'text', 'class') ****************** pairlist with tag 00 00 04 02 ******************* tag ******************** symbol 'dim' 00 00 00 01 00 04 00 09 00 00 00 03 64 69 6 ******************* value ******************** integer vector 8, 21 00 00 00 0d 00 00 00 02 ********************* 8 00 00 00 08 ********************* 21 00 00 00 15 ****************** pairlist with tag 00 00 04 02 ******************* tag ******************** symbol 'tokens' 00 00 00 01 00 04 00 09 00 00 00 06 74 6f 6b 65 6e 73 ******************* value ******************** character vector 00 00 00 10 00 00 00 15 ********************* 'FUNCTION' 00 04 00 09 00 00 00 08 46 55 4e 43 54 49 4f 4e ********************* "'('" 00 04 00 09 00 00 00 03 27 28 27 ********************* 'SYMBOL_FORMALS' 00 04 00 09 00 00 00 0e 53 59 4d 42 4f 4c 5f 46 4f 52 4d 41 4c 53 ********************* "','" 00 04 00 09 00 00 00 03 27 2c 27 ********************* 'SYMBOL_FORMALS' 00 04 00 09 00 00 00 0e 53 59 4d 42 4f 4c 5f 46 4f 52 4d 41 4c 53 ********************* 'EQ_FORMALS' 00 04 00 09 00 00 00 0a 45 51 5f 46 4f 52 4d 41 4c 53 ********************* 'NUM_CONST' 00 04 00 09 00 00 00 09 4e 55 4d 5f 43 4f 4e 53 54 ********************* 'expr' 00 04 00 09 00 00 00 04 65 78 70 72 ********************* '","' 00 04 00 09 00 00 00 03 27 2c 27 ********************* 'SYMBOL_FORMALS' 00 04 00 09 00 00 00 0e 53 59 4d 42 4f 4c 5f 46 4f 52 4d 41 4c 53 ********************* "')'" 00 04 00 09 00 00 00 03 27 29 27 ********************* "'{'" 00 04 00 09 00 00 00 03 27 7b 27 ********************* 'SYMBOL' 00 04 00 09 00 00 00 06 53 59 4d 42 4f 4c ********************* "'+'" 00 04 00 09 00 00 00 03 27 2b 27 ********************* 'expr' 00 04 00 09 00 00 00 04 65 78 70 72 ********************* 'SYMBOL' 00 04 00 09 00 00 00 06 53 59 4d 42 4f 4c ********************* "'}'" 00 04 00 09 00 00 00 03 27 7d 27 ********************* 'expr' 00 04 00 09 00 00 00 04 65 78 70 72 ********************* 'expr' 00 04 00 09 00 00 00 04 65 78 70 72 ********************* 'expr' 00 04 00 09 00 00 00 04 65 78 70 72 ********************* 'expr' 00 04 00 09 00 00 00 04 65 78 70 72 ****************** pairlist with tag 00 00 04 02 ******************* tag ******************** symbol 'text' 00 00 00 01 00 04 00 09 00 00 00 04 74 65 78 74 ******************* value ******************** character vector 00 00 00 10 00 00 00 15 ********************* 'function' 00 04 00 09 00 00 00 08 66 75 6e 63 74 69 6f 6e ********************* '(' 00 04 00 09 00 00 00 01 28 ********************* 'a' 00 04 00 09 00 00 00 01 61 ********************* ',' 00 04 00 09 00 00 00 01 2c ********************* 'b' 00 04 00 09 00 00 00 01 62 ********************* '=' 00 04 00 09 00 00 00 01 3d ********************* '3' 00 04 00 09 00 00 00 01 33 ********************* '' 00 04 00 09 00 00 00 00 00 ********************* ',' 04 00 09 00 00 00 01 2c ********************* '...' 00 04 00 09 00 00 00 03 2e 2e 2e ********************* ')' 00 04 00 09 00 00 00 01 29 ********************* '{' 00 04 00 09 00 00 00 01 7b ********************* 'a' 00 04 00 09 00 00 00 01 61 ********************* '+' 00 04 00 09 00 00 00 01 2b ********************* '' 00 04 00 09 00 00 00 00 00 ********************* 'b' 04 00 09 00 00 00 01 62 ********************* '}' 00 04 00 09 00 00 00 01 7d ********************* '' 00 04 00 09 00 00 00 00 ********************* '' 00 04 00 09 00 00 00 00 ********************* '' 00 04 00 09 00 00 00 00 ********************* '' 00 04 00 09 00 00 00 00 ****************** pairlist with tag 00 00 04 02 ******************* tag ******************** reference to expression 9 (symbol 'class') 00 00 09 ff ******************* value ******************** character vector 00 00 00 10 00 00 00 01 ********************* 'parseData' 00 04 00 09 00 00 00 09 70 61 72 73 65 44 61 74 61 ****************** Nil 00 00 00 fe ************** Nil 00 00 00 fe ******** pairlist with tag 00 00 04 02 ********* tag ********** reference to expression 9 (symbol 'class') 00 00 09 ff ********* value ********** character vector 00 00 00 10 00 00 00 02 *********** 'srcfilecopy' 00 04 00 09 00 00 00 0b 73 72 63 66 69 6c 65 63 6f 70 79 *********** 'srcfile' 00 04 00 09 00 00 00 07 73 72 63 66 69 6c 65 ******** Nil 00 00 00 fe **** pairlist with tag 00 00 04 02 ***** tag ****** reference to expression 9 (symbol 'class') 00 00 09 ff ***** value ****** character vector 00 00 00 10 00 00 00 01 ******* 'srcref' 00 04 00 09 00 00 00 06 73 72 63 72 65 66 **** Nil 00 00 00 fe **** Nil (??? out of place ???) 00 00 00 fe *** enclosure **** GlobalEnv 00 00 00 fd *** arguments **** pairlist with tag 00 00 04 02 ***** tag ****** symbol 'a' 00 00 00 01 00 04 00 09 00 00 00 01 61 ***** value ****** MISSINGARG_SEXP 00 00 00 fb **** pairlist with tag 00 00 04 02 ***** tag ****** symbol 'b' 00 00 00 01 00 04 00 09 00 00 00 01 62 ***** value ****** double vector 00 00 00 0e 00 00 00 01 ******* 1 40 08 00 00 00 00 00 00 **** pairlist with tag 00 00 04 02 ***** tag ****** symbol '...' 00 00 00 01 00 04 00 09 00 00 00 03 2e 2e 2e ***** value 00 00 00 fb **** Nil 00 00 00 fe *** body **** language with attributes 00 00 02 06 ***** attributes ('srcref', 'srcfile', 'wholeSrcref') ****** pairlist with tag 00 00 04 02 ******* tag ******** reference to expression 1 (symbol 'srcref') 00 00 01 ff ******* value ******** generic vector 00 00 00 13 00 00 00 02 ********* integer vector with attributes 00 00 03 0d 00 00 00 08 ********** elements *********** 1 00 00 00 01 *********** 23 00 00 00 17 *********** 1 00 00 00 01 *********** 23 00 00 00 17 *********** 23 00 00 00 17 *********** 23 00 00 00 17 *********** 1 00 00 00 01 *********** 1 00 00 00 01 ********** attributes ('srcfile', 'class') *********** pairlist with tags 00 00 04 02 ************ tag ************* reference to expression 2 (symbol 'srcfile') 00 00 02 ff ************ value ************* reference to expression 3 (the 'srcfile' environment) 00 00 03 ff *********** pairlist with tag 00 00 04 02 ************ tag ************* reference to expression 9 (symbol 'class') 00 00 09 ff ************ value ************* character vector 00 00 00 10 00 00 00 01 ************** 'srcref' 00 04 00 09 00 00 00 06 73 72 63 72 65 66 *********** Nil 00 00 00 fe ********* integer vector with attributes 00 00 03 0d 00 00 00 08 ********** elements *********** 1 00 00 00 01 *********** 24 00 00 00 18 *********** 1 00 00 00 01 *********** 26 00 00 00 1a *********** 24 00 00 00 18 *********** 26 00 00 00 1a *********** 1 00 00 00 01 *********** 1 00 00 00 01 ********** attributes ('srcfile', 'class') *********** pairlist with tag 00 00 04 02 ************ tag ************* reference to expression 2 (symbol 'srcfile') 00 00 02 ff ************ value ************* reference to expression 3 (the 'srcfile' environment) 00 00 03 ff *********** pairlist with tag 00 00 04 02 ************ tag ************* reference to expression 9 (symbol 'class') 00 00 09 ff ************ value ************* character vector 00 00 00 10 00 00 00 01 ************** elements *************** 'srcref' 00 04 00 09 00 00 00 06 73 72 63 72 65 66 *********** Nil 00 00 00 fe ****** pairlist with tag 00 00 04 02 ******* tag ******** reference to expression 2 (symbol 'srcfile') 00 00 02 ff ******* value ******** reference to expression 3 (the 'srcfile' environment) 00 00 03 ff ****** pairlist with tag 00 00 04 02 ******* tag ******** symbol 'wholeSrcref' 00 00 00 01 00 04 00 09 00 00 00 0b 77 68 6f 6c 65 53 72 63 72 65 66 ******* value ******** integer vector with attributes 00 00 03 0d 00 00 00 08 ********* elements ********** 1 00 00 00 01 ********** 0 00 00 00 00 ********** 1 00 00 00 01 ********** 27 00 00 00 1b ********** 0 00 00 00 00 ********** 27 00 00 00 1b ********** 1 00 00 00 01 ********** 1 00 00 00 01 ********* attributes ('srcfile', 'class') ********** pairlist with tag 00 00 04 02 *********** tag ************ reference to expression 2 (symbol 'srcfile') 00 00 02 ff *********** value ************ reference to expression 3 (the 'srcfile' environment) 00 00 03 ff ********** pairlist with tag 00 00 04 02 *********** tag ************ reference to expression 9 (symbol 'class') 00 00 09 ff *********** value ************ character vector 00 00 00 10 00 00 00 01 ************* 'srcref' 00 04 00 09 00 00 00 06 73 72 63 72 65 66 ********** Nil 00 00 00 fe ****** Nil 00 00 00 fe ***** symbol '{' 00 00 00 01 00 04 00 09 00 00 00 01 7b ***** pairlist 00 00 00 02 ****** value ******* language 00 00 00 06 ******** symbol '+' 00 00 00 01 00 04 00 09 00 00 00 01 2b ****** pairlist 00 00 00 02 ******* value ******** reference to expression 16 (symbol 'a') 00 00 10 ff ****** pairlist 00 00 00 02 ******* value ******** reference to expression 17 (symbol 'b') 00 00 11 ff ****** Nil 00 00 00 fe ***** Nil 00 00 00 fe BaseEnvironment.pm100644000765000024 431213140202262 23416 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::BaseEnvironment; # ABSTRACT: the base R environment (C) $Statistics::R::REXP::BaseEnvironment::VERSION = '1.0002'; use 5.010; use Class::Tiny::Antlers; use namespace::clean; extends 'Statistics::R::REXP::Environment'; sub BUILD { my ($self, $args) = @_; # Required attribute type die 'Base environment has implicit attributes' if defined $self->attributes; die 'Nothing can be assigned to the base environment' if exists $args->{frame}; die 'Base environment has an implicit enclosure' if defined $self->enclosure; } sub name { 'R_BaseEnv' } 1; # End of Statistics::R::REXP::BaseEnvironment __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::BaseEnvironment - the base R environment (C) =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::BaseEnvironment my $env = Statistics::R::REXP::BaseEnvironment->new; print $env->name; =head1 DESCRIPTION An object of this class represents a special R environment (C) that is the environment of the base package itself. You shouldn't create instances of this class, it exists mainly to handle deserialization of C by the C classes. =head1 METHODS C inherits from L, with the added restriction that it doesn't have attributes, enclosure, or any contents. Trying to create an BaseEnvironment instance that doesn't follow this restriction will raise an exception. =head2 ACCESSORS =over =item name Just as in R, the name of the BaseEnvironment is "R_BaseEnv". =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILD =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut EmptyEnvironment.pm100644000765000024 443213140202262 23645 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::EmptyEnvironment; # ABSTRACT: the empty R environment (C) $Statistics::R::REXP::EmptyEnvironment::VERSION = '1.0002'; use 5.010; use Class::Tiny::Antlers; use namespace::clean; extends 'Statistics::R::REXP::Environment'; sub BUILD { my ($self, $args) = @_; # Required attribute type die 'Empty environment has no attributes' if defined $self->attributes; die 'Nothing can be assigned to the empty environment' if exists $args->{frame}; die 'Empty environment has no enclosure' if defined $self->enclosure; } sub name { 'R_EmptyEnv' } 1; # End of Statistics::R::REXP::EmptyEnvironment __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::EmptyEnvironment - the empty R environment (C) =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::EmptyEnvironment my $env = Statistics::R::REXP::EmptyEnvironment->new; print $env->name; =head1 DESCRIPTION An object of this class represents a special R environment (C) that is at the base of the environment enclosure hierarchy, which has no C and into which nothing can be assigned. You shouldn't create instances of this class, it exists mainly to handle deserialization of C by the C classes. =head1 METHODS C inherits from L, with the added restriction that it doesn't have attributes, enclosure, or any contents. Trying to create an EmptyEnvironment instance that doesn't follow this restriction will raise an exception. =head2 ACCESSORS =over =item name Just as in R, the name of the EmptyEnvironment is "R_EmptyEnv". =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILD =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut GlobalEnvironment.pm100644000765000024 457613140202262 23760 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/lib/Statistics/R/REXPpackage Statistics::R::REXP::GlobalEnvironment; # ABSTRACT: the global R environment (C<.GlobalEnv>) $Statistics::R::REXP::GlobalEnvironment::VERSION = '1.0002'; use 5.010; use Class::Tiny::Antlers; use namespace::clean; extends 'Statistics::R::REXP::Environment'; sub BUILD { my ($self, $args) = @_; # Required attribute type die 'Global environment has implicit attributes' if defined $self->attributes; die 'Global environment has an implicit enclosure' if defined $self->enclosure; } sub name { 'R_GlobalEnvironment' } 1; # End of Statistics::R::REXP::GlobalEnvironment __END__ =pod =encoding UTF-8 =head1 NAME Statistics::R::REXP::GlobalEnvironment - the global R environment (C<.GlobalEnv>) =head1 VERSION version 1.0002 =head1 SYNOPSIS use Statistics::R::REXP::GlobalEnvironment my $env = Statistics::R::REXP::GlobalEnvironment->new([ x => Statistics::R::REXP::Character->new(['foo', 'bar']), b => Statistics::R::REXP::Double->new([1, 2, 3]), ]); print $env->elements; =head1 DESCRIPTION An object of this class represents an R environment (C), more often known as the user's workspace. An assignment operation from the command line will cause the relevant object to be placed in this environment. You shouldn't create instances of this class, it exists mainly to handle deserialization of C<.GlobalEnv> by the C classes. =head1 METHODS C inherits from L, with the added restriction that it doesn't have attributes or enclosure. Trying to create a GlobalEnvironment instance that doesn't follow this restriction will raise an exception. =head2 ACCESSORS =over =item name Just as in R, the name of the GlobalEnvironment is "R_GlobalEnvironment". =back =head1 BUGS AND LIMITATIONS Classes in the C hierarchy are intended to be immutable. Please do not try to change their value or attributes. There are no known bugs in this module. Please see L for bug reporting. =head1 SUPPORT See L for support and contact information. =for Pod::Coverage BUILD =head1 AUTHOR Davor Cubranic =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2017 by University of British Columbia. This is free software, licensed under: The GNU General Public License, Version 3, June 2007 =cut aRBHNb7Z9M000755000765000024 013140202262 21437 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 23666 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 21540 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 23767 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 21436 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 23665 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release KhmO0VLCkZ000755000765000024 013140202262 21544 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 23773 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 21757 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 24206 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 21666 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 24115 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release R7PT3Roy1M000755000765000024 013140202262 21463 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 23712 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 21543 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 23772 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 21441 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 23670 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 21542 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 23771 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 21547 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 23776 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 21650 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 24077 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 21546 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 23775 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 22067 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 24316 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 21776 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 24225 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release R7PT3Roy1M000755000765000024 013140202262 21573 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 24022 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 21762 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 24211 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 22063 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 24312 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 21761 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 24210 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 22211 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 24440 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 21671 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 24120 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 21772 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 24221 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 21670 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 24117 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 21466 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 23715 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 21567 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 24016 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 21465 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 23714 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 22006 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 24235 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 21715 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 24144 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release ADjDGkLB5Y000755000765000024 013140202262 22153 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 24402 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Ylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 22156 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 24405 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 22257 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 24506 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 22155 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 24404 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release KhmO0VLCkZ000755000765000024 013140202262 22263 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 24512 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 22476 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 24725 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 22405 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 24634 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release R7PT3Roy1M000755000765000024 013140202262 22202 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 24431 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Statistics-R-IO-1.0002000755000765000024 013140202262 22672 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002.travis.yml100644000765000024 14313140202262 25121 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002language: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24400 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 26627 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 24276 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 26525 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24377 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 26626 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 24404 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 26633 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24505 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 26734 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 24403 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 26632 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 24724 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 27153 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 24633 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 27062 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release R7PT3Roy1M000755000765000024 013140202262 24430 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 26657 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 24617 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 27046 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24720 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 27147 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 24616 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 27045 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 25046 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 27275 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 24526 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 26755 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24627 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 27056 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 24525 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 26754 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 24323 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 26552 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24424 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 26653 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 24322 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 26551 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 24643 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 27072 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 24552 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 27001 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24402 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 26631 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24510 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 26737 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 24406 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 26635 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24507 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 26736 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 24727 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 27156 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 25030 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 27257 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 24726 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 27155 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 25156 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 27405 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 24636 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 27065 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24737 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 27166 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 24635 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 27064 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 24433 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 26662 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24534 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 26763 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 24432 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 26661 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 24753 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 27202 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 24662 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 27111 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24723 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 27152 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 24621 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 27050 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24722 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 27151 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 25051 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 27300 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 25152 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 27401 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 25050 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 27277 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24632 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 27061 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 24530 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 26757 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24631 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 27060 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24427 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 26656 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 24325 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 26554 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24426 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 26655 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 24646 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 27075 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24747 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 27176 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 24645 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 27074 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 25075 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 27324 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 24555 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 27004 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 24656 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 27105 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 24554 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 27003 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 25013 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 27242 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 25114 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 27343 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 25012 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 27241 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release KhmO0VLCkZ000755000765000024 013140202262 25120 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 27347 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 25333 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 27562 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 25242 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 27471 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release R7PT3Roy1M000755000765000024 013140202262 25037 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 27266 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 25117 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 27346 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 25015 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 27244 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 25116 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 27345 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 25123 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 27352 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 25224 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 27453 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 25122 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 27351 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 25443 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 27672 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 25352 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 27601 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release R7PT3Roy1M000755000765000024 013140202262 25147 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 27376 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 25336 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 27565 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 25437 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 27666 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 25335 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 27564 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 25565 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 30014 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 25245 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 27474 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 25346 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 27575 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 25244 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 27473 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 25042 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 27271 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 25143 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 27372 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 25041 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 27270 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 25362 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 27611 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 25271 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 27520 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release ADjDGkLB5Y000755000765000024 013140202262 25527 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 27756 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Ylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 25532 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 27761 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 25633 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 30062 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 25531 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 27760 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release KhmO0VLCkZ000755000765000024 013140202262 25637 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 30066 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 26052 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 30301 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 25761 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 30210 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release R7PT3Roy1M000755000765000024 013140202262 25556 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build.travis.yml100644000765000024 14313140202262 30005 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27237 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 31466 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27345 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 31574 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27243 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 31472 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27344 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 31573 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 27564 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32013 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27665 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32114 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27563 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32012 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 30013 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32242 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 27473 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 31722 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27574 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32023 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27472 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 31721 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 27270 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 31517 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27371 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 31620 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27267 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 31516 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 27610 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 32037 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 27517 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 31746 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27560 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32007 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27456 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 31705 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27557 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 32006 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 27706 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32135 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30007 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32236 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27705 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32134 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27467 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 31716 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27365 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 31614 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27466 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 31715 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27264 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 31513 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27162 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 31411 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27263 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 31512 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 27503 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 31732 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27604 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32033 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27502 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 31731 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 27732 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32161 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 27412 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 31641 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27513 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 31742 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27411 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 31640 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27347 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 31576 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27670 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32117 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27566 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32015 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27667 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 32116 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 30016 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32245 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30117 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32346 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 30015 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32244 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27577 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32026 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27475 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 31724 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27576 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 32025 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27374 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 31623 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27272 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 31521 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27373 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 31622 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 27613 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32042 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27714 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32143 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27612 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32041 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 30042 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32271 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 27522 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 31751 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27623 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32052 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27521 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 31750 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27562 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 32011 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30012 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32241 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27710 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32137 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30011 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 32240 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27471 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 31720 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27266 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 31515 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27607 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32036 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27505 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 31734 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27606 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 32035 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 27735 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32164 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30036 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32265 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27734 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32163 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27516 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 31745 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27414 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 31643 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27515 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 31744 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27754 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32203 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27652 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32101 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27753 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 32202 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 27760 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 32207 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30061 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 32310 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27757 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 32206 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 30300 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 32527 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 30207 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 32436 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release R7PT3Roy1M000755000765000024 013140202262 30004 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 32233 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 30173 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32422 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30274 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32523 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 30172 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32421 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 30422 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32651 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 30102 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32331 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30203 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32432 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 30101 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32330 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 27677 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 32126 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30000 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 32227 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27676 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 32125 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 30217 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 32446 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 30126 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 32355 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 27756 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 32205 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30064 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32313 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27762 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32211 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30063 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 32312 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 30303 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32532 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30404 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32633 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 30302 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32531 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 30532 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32761 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 30212 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32441 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30313 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32542 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 30211 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32440 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 30007 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 32236 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30110 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 32337 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 30006 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 32235 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 30327 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 32556 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 30236 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 32465 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30277 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32526 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 30175 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32424 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30276 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 32525 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 30425 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32654 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30526 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32755 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 30424 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32653 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30206 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32435 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 30104 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32333 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30205 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 32434 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30003 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32232 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 27701 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32130 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30002 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 32231 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 30222 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32451 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30323 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32552 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 30221 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32450 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 30451 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 32700 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 30131 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32360 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30232 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32461 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 30130 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 32357 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 30367 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 32616 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30470 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 32717 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 30366 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 32615 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release KhmO0VLCkZ000755000765000024 013140202262 30474 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 32723 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 30707 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 33136 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 30616 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 33045 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release R7PT3Roy1M000755000765000024 013140202262 30413 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build.travis.yml100644000765000024 14313140202262 32642 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30473 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32722 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 30371 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 32620 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30472 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 32721 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 30477 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 32726 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30600 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 33027 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 30476 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 32725 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 31017 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 33246 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 30726 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 33155 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release R7PT3Roy1M000755000765000024 013140202262 30523 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 32752 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 30712 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 33141 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 31013 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 33242 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 30711 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 33140 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 31141 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 33370 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 30621 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 33050 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30722 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 33151 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 30620 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 33047 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 30416 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 32645 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 30517 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 32746 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 30415 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 32644 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 30736 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 33165 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 30645 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 33074 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32204 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 34433 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32525 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 34754 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32423 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 34652 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32524 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 34753 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 32653 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35102 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32754 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35203 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32652 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35101 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32434 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 34663 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32332 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 34561 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32433 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 34662 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32231 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 34460 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32127 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 34356 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32230 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 34457 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 32450 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 34677 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32551 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 35000 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32447 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 34676 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 32677 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 35126 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 32357 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 34606 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32460 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 34707 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32356 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 34605 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32417 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 34646 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32647 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35076 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32545 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 34774 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32646 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35075 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32326 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 34555 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32123 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 34352 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32444 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 34673 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32342 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 34571 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32443 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 34672 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 32572 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35021 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32673 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35122 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32571 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35020 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32353 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 34602 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32251 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 34500 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32352 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 34601 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32527 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 34756 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32757 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35206 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32655 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35104 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32756 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35205 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32436 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 34665 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32233 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 34462 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32554 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35003 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32452 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 34701 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32553 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35002 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 32702 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35131 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33003 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35232 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32701 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35130 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32463 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 34712 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32361 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 34610 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32462 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 34711 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32651 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35100 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32446 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 34675 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32676 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35125 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32574 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35023 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32675 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35124 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32355 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 34604 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32613 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35042 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32721 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35150 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32617 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35046 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32720 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35147 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 33140 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 35367 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33241 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 35470 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33137 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 35366 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 33367 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 35616 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 33047 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35276 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33150 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35377 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33046 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35275 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 32644 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 35073 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32745 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 35174 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32643 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 35072 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 33164 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 35413 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 33073 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 35322 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33134 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35363 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33032 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35261 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33133 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35362 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 33262 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35511 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33363 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35612 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33261 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35510 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33043 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35272 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32741 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35170 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33042 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35271 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32640 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35067 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32536 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 34765 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32637 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35066 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 33057 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 35306 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33160 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 35407 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33056 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 35305 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 33306 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 35535 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 32766 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35215 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33067 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35316 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32765 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35214 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32723 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35152 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33244 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35473 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33142 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35371 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33243 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35472 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 33372 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35621 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33473 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35722 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33371 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35620 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33153 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35402 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33051 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35300 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33152 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35401 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32750 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35177 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32646 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35075 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32747 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35176 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 33167 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 35416 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33270 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 35517 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33166 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 35415 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 33416 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 35645 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 33076 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35325 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33177 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35426 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33075 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35324 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33136 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35365 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33366 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35615 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33264 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35513 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33365 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35614 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33045 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35274 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 32642 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35071 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33163 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35412 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33061 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35310 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33162 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35411 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 33311 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35540 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33412 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35641 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33310 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35537 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33072 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35321 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 32770 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35217 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33071 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35320 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33330 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35557 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33226 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35455 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33327 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35556 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 33334 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 35563 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33435 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 35664 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33333 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 35562 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 33654 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 36103 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 33563 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 36012 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release R7PT3Roy1M000755000765000024 013140202262 33360 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build.travis.yml100644000765000024 14313140202262 35607 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 33547 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 35776 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33650 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 36077 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33546 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 35775 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 33776 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 36225 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 33456 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35705 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33557 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 36006 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33455 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35704 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 33253 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 35502 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33354 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 35603 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33252 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 35501 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 33573 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 36022 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 33502 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 35731 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33332 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35561 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33440 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35667 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33336 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35565 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33437 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35666 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 33657 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 36106 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33760 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 36207 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33656 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 36105 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 34106 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 36335 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 33566 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 36015 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33667 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 36116 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33565 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 36014 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 33363 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 35612 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33464 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 35713 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33362 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 35611 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 33703 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 36132 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 33612 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 36041 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33653 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 36102 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33551 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 36000 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33652 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 36101 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 34001 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 36230 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 34102 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 36331 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 34000 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 36227 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33562 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 36011 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33460 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35707 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33561 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 36010 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33357 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35606 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33255 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 35504 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33356 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 35605 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 33576 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 36025 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33677 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 36126 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33575 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 36024 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 34025 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 36254 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 33505 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35734 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 33606 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 36035 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 33504 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 35733 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35364 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 37613 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35614 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40043 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 35512 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 37741 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35613 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40042 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35273 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 37522 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35070 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 37317 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35411 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 37640 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 35307 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 37536 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35410 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 37637 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 35537 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 37766 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35640 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40067 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 35536 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 37765 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35320 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 37547 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 35216 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 37445 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35317 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 37546 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35506 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 37735 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35303 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 37532 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35533 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 37762 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 35431 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 37660 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35532 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 37761 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35212 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 37441 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35616 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40045 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35413 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 37642 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35643 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40072 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 35541 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 37770 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35642 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40071 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35322 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 37551 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35535 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 37764 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35560 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40007 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36101 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40330 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 35777 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40226 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36100 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40327 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 36227 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40456 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36330 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40557 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36226 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40455 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36010 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40237 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 35706 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40135 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36007 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40236 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35605 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40034 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 35503 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 37732 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35604 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40033 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 36024 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 40253 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36125 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 40354 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36023 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 40252 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 36253 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 40502 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 35733 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40162 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36034 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40263 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 35732 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40161 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35773 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40222 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36223 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40452 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36121 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40350 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36222 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40451 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35702 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40131 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35477 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 37726 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36020 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40247 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 35716 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40145 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36017 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40246 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 36146 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40375 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36247 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40476 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36145 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40374 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35727 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40156 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 35625 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40054 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35726 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40155 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36103 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40332 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36333 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40562 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36231 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40460 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36332 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40561 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36012 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40241 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35607 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40036 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36130 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40357 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36026 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40255 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36127 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40356 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 36256 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40505 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36357 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40606 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36255 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40504 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36037 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40266 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 35735 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40164 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36036 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40265 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36225 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40454 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36022 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40251 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36252 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40501 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36150 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40377 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36251 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40500 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 35731 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40160 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36167 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40416 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36275 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40524 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36173 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40422 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36274 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40523 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 36514 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 40743 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36615 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 41044 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36513 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 40742 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 36743 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 41172 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 36423 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40652 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36524 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40753 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36422 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40651 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 36220 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 40447 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36321 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 40550 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36217 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 40446 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release oDhfvXFexb000755000765000024 013140202262 36540 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 40767 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexblanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 36447 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build.travis.yml100644000765000024 14313140202262 40676 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36510 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40737 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36406 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40635 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36507 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40736 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 36636 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 41065 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36737 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 41166 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36635 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 41064 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36417 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40646 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36315 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40544 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36416 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40645 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36214 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40443 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36112 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40341 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36213 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40442 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 36433 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 40662 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36534 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 40763 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36432 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 40661 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 36662 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 41111 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 36342 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40571 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36443 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40672 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36341 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40570 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36277 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40526 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36620 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 41047 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36516 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40745 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36617 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 41046 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 36746 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 41175 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 37047 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 41276 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36745 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 41174 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36527 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40756 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36425 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40654 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36526 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40755 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36324 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40553 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36222 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40451 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36323 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40552 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 36543 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 40772 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36644 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 41073 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36542 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 40771 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 36772 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build.travis.yml100644000765000024 14313140202262 41221 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 36452 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40701 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36553 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 41002 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36451 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 40700 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36512 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40741 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36742 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 41171 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36640 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 41067 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36741 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 41170 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36421 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40650 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36216 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40445 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36537 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40766 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36435 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40664 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36536 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40765 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 36665 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 41114 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36766 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 41215 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36664 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 41113 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36446 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40675 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 36344 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 40573 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 36445 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 40674 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40453 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 42702 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40250 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 42477 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40500 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 42727 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 40376 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 42625 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40477 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 42726 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40157 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 42406 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40372 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 42621 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40502 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 42731 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40740 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 43167 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41170 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 43417 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41066 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 43315 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41167 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 43416 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40647 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 43076 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40444 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 42673 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40765 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 43214 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 40663 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 43112 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40764 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 43213 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 41113 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 43342 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41214 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 43443 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41112 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build.travis.yml100644000765000024 14313140202262 43341 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40674 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 43123 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 40572 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 43021 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40673 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 43122 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41062 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 43311 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40657 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 43106 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41107 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 43336 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41005 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 43234 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41106 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 43335 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40566 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 43015 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41172 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 43421 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40767 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 43216 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41217 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 43446 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41115 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build.travis.yml100644000765000024 14313140202262 43344 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41216 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 43445 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 40676 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 43125 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41111 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build.travis.yml100644000765000024 14313140202262 43340 0ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41134 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 42713 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41455 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43234 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41353 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43132 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41454 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43233 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 41603 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml.travis.yml100644000765000024 14313140202262 43362 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41704 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43463 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41602 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43361 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41364 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43143 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41262 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43041 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41363 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43142 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41161 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 42740 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41057 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 42636 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41160 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 42737 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 41400 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.travis.yml.travis.yml100644000765000024 14313140202262 43157 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41501 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43260 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41377 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43156 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release Qg1xEAouWy000755000765000024 013140202262 41627 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.travis.yml.travis.yml100644000765000024 14313140202262 43406 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWylanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 41307 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml.travis.yml100644000765000024 14313140202262 43066 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41410 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43167 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41306 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43065 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41347 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43126 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41577 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43356 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41475 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43254 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41576 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43355 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41256 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43035 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41053 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 42632 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41374 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43153 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41272 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43051 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41373 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43152 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 41522 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml.travis.yml100644000765000024 14313140202262 43301 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41623 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43402 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41521 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43300 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41303 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43062 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41201 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 42760 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41302 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43061 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41457 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43236 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41707 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43466 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41605 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43364 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41706 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43465 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41366 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43145 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41163 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 42742 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41504 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43263 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41402 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43161 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41503 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43262 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release aRBHNb7Z9M000755000765000024 013140202262 41632 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml.travis.yml100644000765000024 14313140202262 43411 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41733 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43512 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41631 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43410 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41413 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43172 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41311 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43070 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41412 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43171 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41601 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43360 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41376 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43155 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41626 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43405 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release g8N2M3ATbm000755000765000024 013140202262 41524 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43303 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41625 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43404 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 41305 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 25213140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43064 0ustar00davorstaff000000000000tistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release F0JgSFwCwT000755000765000024 013140202262 43337 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 26213140202263 12437 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43436 0ustar00davorstaff000000000000R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 25313140202263 12437 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 43022 5ustar00davorstaff000000000000stics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 26713140202263 12444 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43422 0ustar00davorstaff0000000000001.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 25313140202263 12437 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42617 5ustar00davorstaff000000000000stics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 26713140202263 12444 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43217 0ustar00davorstaff0000000000001.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 25313140202263 12437 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 43047 5ustar00davorstaff000000000000stics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 26713140202263 12444 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43447 0ustar00davorstaff0000000000001.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 25313140202263 12437 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmg8N2M3ATbm000755000765000024 013140202262 42745 5ustar00davorstaff000000000000stics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 26713140202263 12444 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43345 0ustar00davorstaff0000000000001.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 25313140202263 12437 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 43046 5ustar00davorstaff000000000000stics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build@LongLink000644000765000024 26713140202263 12444 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43446 0ustar00davorstaff0000000000001.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 25313140202263 12437 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42526 5ustar00davorstaff000000000000stics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 26713140202263 12444 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43126 0ustar00davorstaff0000000000001.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 25313140202263 12437 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42741 5ustar00davorstaff000000000000stics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 26713140202263 12444 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43341 0ustar00davorstaff0000000000001.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 25313140202263 12437 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 43051 5ustar00davorstaff000000000000stics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 26713140202263 12444 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43451 0ustar00davorstaff0000000000001.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42241 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43330 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42471 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43560 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmg8N2M3ATbm000755000765000024 013140202262 42367 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43456 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42470 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43557 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42150 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43237 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 41745 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43034 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42266 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43355 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmg8N2M3ATbm000755000765000024 013140202262 42164 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43253 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42265 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43354 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9MaRBHNb7Z9M000755000765000024 013140202262 42414 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.travis.yml.travis.yml100644000765000024 14313140202262 43503 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9Mlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42515 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43604 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmg8N2M3ATbm000755000765000024 013140202262 42413 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43502 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42175 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43264 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmg8N2M3ATbm000755000765000024 013140202262 42073 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43162 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42174 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43263 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42363 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43452 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42160 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43247 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42410 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43477 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmg8N2M3ATbm000755000765000024 013140202262 42306 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43375 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42407 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43476 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42067 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43156 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42473 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43562 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42270 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43357 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42520 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43607 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmg8N2M3ATbm000755000765000024 013140202262 42416 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43505 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42517 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43606 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42177 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43266 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 26013140202263 12435 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42412 5ustar00davorstaff000000000000-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 27413140202263 12442 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43501 0ustar00davorstaff0000000000002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 27513140202263 12443 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 43337 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 31113140202263 12432 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43436 0ustar00davorstaff000000000000R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 30213140202263 12432 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 43022 5ustar00davorstaff000000000000stics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 31613140202263 12437 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43422 0ustar00davorstaff0000000000001.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 30213140202263 12432 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42617 5ustar00davorstaff000000000000stics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 31613140202263 12437 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43217 0ustar00davorstaff0000000000001.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 30213140202263 12432 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 43047 5ustar00davorstaff000000000000stics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 31613140202263 12437 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43447 0ustar00davorstaff0000000000001.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 30213140202263 12432 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmg8N2M3ATbm000755000765000024 013140202262 42745 5ustar00davorstaff000000000000stics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build@LongLink000644000765000024 31613140202263 12437 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.travis.yml.travis.yml100644000765000024 14313140202262 43345 0ustar00davorstaff0000000000001.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbmlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 30213140202263 12432 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 43046 5ustar00davorstaff000000000000stics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build@LongLink000644000765000024 31613140202263 12437 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43446 0ustar00davorstaff0000000000001.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 30213140202263 12432 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42526 5ustar00davorstaff000000000000stics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 31613140202263 12437 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43126 0ustar00davorstaff0000000000001.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 30213140202263 12432 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 42741 5ustar00davorstaff000000000000stics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 31613140202263 12437 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43341 0ustar00davorstaff0000000000001.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 30213140202263 12432 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 43051 5ustar00davorstaff000000000000stics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 31613140202263 12437 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43451 0ustar00davorstaff0000000000001.0002/Statistics-R-IO-1.0002/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release @LongLink000644000765000024 32413140202263 12436 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTF0JgSFwCwT000755000765000024 013140202262 43337 5ustar00davorstaff000000000000Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build@LongLink000644000765000024 34013140202263 12434 Lustar00davorstaff000000000000.Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/Statistics-R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwT/.travis.yml.travis.yml100644000765000024 14313140202262 43436 0ustar00davorstaff000000000000R-IO-1.0002/.build/ADjDGkLB5Y/.build/KhmO0VLCkZ/.build/R7PT3Roy1M/.build/oDhfvXFexb/.build/Qg1xEAouWy/.build/aRBHNb7Z9M/.build/g8N2M3ATbm/.build/F0JgSFwCwTlanguage: perl perl: - "5.18" - "5.16" - "5.14" - "5.12" branches: only: - release